[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] Porting TCG to alpha platform
From: |
Stefan Weil |
Subject: |
Re: [Qemu-devel] [PATCH] Porting TCG to alpha platform |
Date: |
Sat, 30 Jan 2010 00:04:29 +0100 |
User-agent: |
Mozilla-Thunderbird 2.0.0.22 (X11/20090707) |
Edgar E. Iglesias schrieb:
> On Fri, Jan 29, 2010 at 09:04:58AM -0800, Richard Henderson wrote:
>> On 01/28/2010 05:55 PM, identifier scorpio wrote:
>>> Your code is more skilled and I learn a lot from it, but I haven't yet
>>> recognized the key difference between your version and mine. In last
>>> mail, you've said that "Mainly, tcg_target_long was used places that
>>> could be holding HOST values, which means that the host values would
>>> have been truncated to 32 bits.", and I can't fully understand it, may
>>> you put it more clearly.
>> It was a mis-statement made while tired. Of course tcg_target_long is
>> defined to int64_t when TCG_TARGET_REG_BITS == 64, so there was no
>> truncation to 32 bits.
>>
>> Have you tested of any of the other embedded targets? You may be able
>> to find the error with one of those easier than finding it emulating
>> full-scale Windows. See the images at the bottom of the QEMU download
>> page.
>
> Hi,
>
> Although I've never hacked on a TCG backend I'd still like to give some
> advice.
>
> >From experience when developing both the CRIS and the MicroBlaze ISA
> translators I very much suggest getting something very stable to work
> in linux-user before going further.
>
> I used GCC's C torture tests and OpenSSL's bignum tests to verify the
> ports. In particular, OpenSSL's bignum tests seem to excersice lot's of
> cornercases.
>
> If you pass those, you've come a long way. In general it's much easier
> to debug a guest testcase (bntest, etc) that fails compared to huge
> propretiary blob that fails (windows).
>
> Just a suggestion, hope it helps.
>
> Cheers,
> Edgar
Hi Edgar,
that was a good suggestion. bntest raises a segmentation fault
(NULL pointer, p == 0, see below) with qemu-x86_64 on a x86_64 host.
Regards,
Stefan
obase=16
ibase=16
test BN_add
print "test BN_add\n"
Program received signal SIGSEGV, Segmentation fault.
tb_alloc_page (tb=0x7ffff3423290, phys_pc=<value optimized out>,
phys_page2=18446744073709551615) at
/home/stefan/src/qemu/repo.or.cz/qemu/ar7/exec.c:1124
1124 tb->page_next[n] = p->first_tb;
(gdb) i s
#0 tb_alloc_page (tb=0x7ffff3423290, phys_pc=<value optimized out>,
phys_page2=18446744073709551615) at
/home/stefan/src/qemu/repo.or.cz/qemu/ar7/exec.c:1124
#1 tb_link_phys (tb=0x7ffff3423290, phys_pc=<value optimized out>,
phys_page2=18446744073709551615) at
/home/stefan/src/qemu/repo.or.cz/qemu/ar7/exec.c:1214
#2 0x000000006001fd5c in tb_gen_code (env=0x7ffff7f97010,
pc=18446744073699066880, cs_base=<value optimized out>, flags=<value
optimized out>, cflags=<value optimized out>) at
/home/stefan/src/qemu/repo.or.cz/qemu/ar7/exec.c:912
#3 0x000000006002241b in tb_find_slow (env1=<value optimized out>) at
/home/stefan/src/qemu/repo.or.cz/qemu/ar7/cpu-exec.c:161
#4 tb_find_fast (env1=<value optimized out>) at
/home/stefan/src/qemu/repo.or.cz/qemu/ar7/cpu-exec.c:182
#5 cpu_x86_exec (env1=<value optimized out>) at
/home/stefan/src/qemu/repo.or.cz/qemu/ar7/cpu-exec.c:574
#6 0x00000000600064c0 in cpu_loop (env=0x7ffff7f97010) at
/home/stefan/src/qemu/repo.or.cz/qemu/ar7/linux-user/main.c:309
#7 0x00000000600076d2 in main (argc=<value optimized out>, argv=<value
optimized out>, envp=<value optimized out>) at
/home/stefan/src/qemu/repo.or.cz/qemu/ar7/linux-user/main.c:3101
- Re: [Qemu-devel] [PATCH] Porting TCG to alpha platform, (continued)
- Re: [Qemu-devel] [PATCH] Porting TCG to alpha platform, identifier scorpio, 2010/01/20
- Re: [Qemu-devel] [PATCH] Porting TCG to alpha platform, identifier scorpio, 2010/01/20
- Re: [Qemu-devel] [PATCH] Porting TCG to alpha platform, identifier scorpio, 2010/01/22
- Re: [Qemu-devel] [PATCH] Porting TCG to alpha platform, Richard Henderson, 2010/01/22
- Re: [Qemu-devel] [PATCH] Porting TCG to alpha platform, Richard Henderson, 2010/01/25
- Re: [Qemu-devel] [PATCH] Porting TCG to alpha platform, identifier scorpio, 2010/01/28
- Re: [Qemu-devel] [PATCH] Porting TCG to alpha platform, Richard Henderson, 2010/01/29
- Re: [Qemu-devel] [PATCH] Porting TCG to alpha platform, Edgar E. Iglesias, 2010/01/29
- Re: [Qemu-devel] [PATCH] Porting TCG to alpha platform,
Stefan Weil <=
- Re: [Qemu-devel] [PATCH] Porting TCG to alpha platform, Edgar E. Iglesias, 2010/01/29
- Re: [Qemu-devel] [PATCH] Porting TCG to alpha platform, Laurent Desnogues, 2010/01/29
- [Qemu-devel] [BUG] qemu-x86_64 crash when running bntest (was: [PATCH] Porting TCG to alpha platform), Stefan Weil, 2010/01/30
- Re: [Qemu-devel] [BUG] qemu-x86_64 crash when running bntest (was: [PATCH] Porting TCG to alpha platform), Laurent Desnogues, 2010/01/30
- Re: [Qemu-devel] [BUG] qemu-x86_64 crash when running bntest (was: [PATCH] Porting TCG to alpha platform), Laurent Desnogues, 2010/01/30
- Re: [Qemu-devel] [PATCH] Porting TCG to alpha platform, Richard Henderson, 2010/01/29
- Re: [Qemu-devel] [PATCH] Porting TCG to alpha platform, Richard Henderson, 2010/01/29
- Re: [Qemu-devel] [PATCH] Porting TCG to alpha platform, identifier scorpio, 2010/01/29
- Re: [Qemu-devel] [PATCH] Porting TCG to alpha platform, Richard Henderson, 2010/01/31