qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 1/5] target-tile: Firstly add to qemu with minim


From: Chen Gang S
Subject: Re: [Qemu-devel] [PATCH 1/5] target-tile: Firstly add to qemu with minimized features
Date: Sat, 14 Feb 2015 11:08:46 +0800
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:31.0) Gecko/20100101 Thunderbird/31.4.0

On 2/14/15 08:26, Peter Maydell wrote:
> On 13 February 2015 at 23:50, Chen Gang S <address@hidden> wrote:
>>
>> On 2/13/15 05:15, Chen Gang S wrote:
>>> It almost likes a template for adding an architecture target.
>>>
>>> Signed-off-by: Chen Gang <address@hidden>
>>> ---
>>>  configure                             |   7 ++
>>>  default-configs/tilegx-linux-user.mak |   1 +
>>>  target-tile/Makefile.objs             |   1 +
>>>  target-tile/cpu-qom.h                 |  72 +++++++++++++++
>>>  target-tile/cpu.c                     | 159 
>>> ++++++++++++++++++++++++++++++++++
>>>  target-tile/cpu.h                     |  84 ++++++++++++++++++
>>>  target-tile/helper.h                  |   0
>>>  target-tile/translate.c               |  54 ++++++++++++
>>>  8 files changed, 378 insertions(+)
>>>  create mode 100644 default-configs/tilegx-linux-user.mak
>>>  create mode 100644 target-tile/Makefile.objs
>>>  create mode 100644 target-tile/cpu-qom.h
>>>  create mode 100644 target-tile/cpu.c
>>>  create mode 100644 target-tile/cpu.h
>>>  create mode 100644 target-tile/helper.h
>>>  create mode 100644 target-tile/translate.c
>>>
>>> diff --git a/configure b/configure
>>> index 7ba4bcb..ffb4d56 100755
>>> --- a/configure
>>> +++ b/configure
>>> @@ -5191,6 +5191,9 @@ case "$target_name" in
>>>    s390x)
>>>      gdb_xml_files="s390x-core64.xml s390-acr.xml s390-fpr.xml"
>>>    ;;
>>> +  tilegx)
>>> +    TARGET_ARCH=tile
>>> +  ;;
>>
>> Oh, it needs to use "TARGET_ARCH=tilegx" instead of "TARGET_ARCH=tile",
>> or can not put "CONFIG_TILE_DIS=y" to config-all-disas.mak, below (when
>> I am adding "disas/tilegx.c", I meet it).
> 
> You need to make up your mind about what your architecture
> is called: is it "tile" or "tilegx"? Be consistent...
> 

Oh, after think of, for me, I shall follow the other architectures has
done (e.g. i386).

 - Still use target-tile directory, since 'tile' is the architecture
   name.

 - 'tilegx' is one kind of cpu of tile, so I need consider about it just
   like another architectures have done (e.g. i386).



>>
>>>    unicore32)
>>>    ;;
>>>    xtensa|xtensaeb)
>>> @@ -5363,6 +5366,10 @@ for i in $ARCH $TARGET_BASE_ARCH ; do
>>>      echo "CONFIG_SPARC_DIS=y"  >> $config_target_mak
>>>      echo "CONFIG_SPARC_DIS=y"  >> config-all-disas.mak
>>>    ;;
>>> +  tilegx*)
>>> +    echo "CONFIG_TILE_DIS=y"  >> $config_target_mak
>>> +    echo "CONFIG_TILE_DIS=y"  >> config-all-disas.mak
>>> +  ;;
> 
> You should only add this bit to configure in the patchset
> where you add a Tile disassembler.
> 

Yeah, I shall add disassembler firstly, before generate tcg code:

 - binutils tilegx disassembler is easy to be integrated into qemu.

 - I shall reuse part of the tilegx disassembler code for generating tcg
   code.

 - For me, dumping disassemble code in qemu is much helpful for testing.

At present, I have integrated binutils tilegx disassembler into qemu, it
is passed building, and I shall give a test for it tonight. If no any
issues, I plan to send related patch too.

Welcome any ideas, suggestions, and completions.

Thanks.
-- 
Chen Gang

Open, share, and attitude like air, water, and life which God blessed



reply via email to

[Prev in Thread] Current Thread [Next in Thread]