qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] QEMU on Alpha
  2003-06-03 13:18         ` Falk Hueffner
@ 2003-06-05  1:12           ` Fabrice Bellard
  0 siblings, 0 replies; 8+ messages in thread
From: Fabrice Bellard @ 2003-06-05  1:12 UTC (permalink / raw)
  To: qemu-devel

Hi,

The CVS version of QEMU should now launch test-i386 successfully on 
Alpha. If you want to try it, read the README file to know what are the 
tested tools (gcc 3.3 is _required_). I tested it only with a 2.2 Linux 
kernel, so I was not able to test the precise exception support which 
requires a 2.4.20 kernel.

The remaining issues (in particular with ls) should only be related to 
bad syscall emulation, which is easier to fix.

Fabrice.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Qemu-devel] QEMU on Alpha
@ 2004-07-20  7:39 Alex Melnikov
  2004-07-20 22:19 ` Falk Hueffner
  0 siblings, 1 reply; 8+ messages in thread
From: Alex Melnikov @ 2004-07-20  7:39 UTC (permalink / raw)
  To: qemu-devel

Hello!

What are the status of the Alpha host port?

I tryed 0.6.0 (i386-user and i386-softmmu targets), here is results:

i386-user:

Will not compile at default, because of redefinition problem in dyngen-exec.h (as 
mentioned by Falk Hueffner in http://lists.gnu.org/archive/html/qemu-devel/2004-
02/msg00080.html).

After commenting it (define uint64) - the i386-user target compiled ok (but with tons 
of warnings), but not works ok. I got gnemul libs and wine from main qemu site, but 
somehow wine can't run wineserver itself (all path, LD_LIBRARY_PATH, wine-setup.sh and 
so on - OK), need to run "wineserver -p" separately, but even after that, wine not run 
ok (it gives Unaligned access into /var/log/messages), and dont get any result when 
runned with "wine <any win32 binary>" (no error, just nothnig, and process qemu-i386 
wine just utilises about 0% of cpu), moreover "wine --help" gives error, 
but "wineserver --help" works normal (shows it help into stdout).

I tryed to run rar_static (x86 linux binary) - with this compiled qemu-i386, it only 
shows rar_help in stdout, but when i tryed to unpack rar archive with it - it gives 
error something like "can't seek in file test.rar".

i386-softmmu:

Seems broken? (no cpu_get_ticks form alpha, "unsupported cpu error" in vl.c)

Does anybody tryed current QEMU on Alpha Linux? Is the support of Alpha host is broken?


PS I use RedHat 7.2 with updated binutils-2.15.90 and gcc-3.3.4.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [Qemu-devel] QEMU on Alpha
  2004-07-20  7:39 [Qemu-devel] QEMU on Alpha Alex Melnikov
@ 2004-07-20 22:19 ` Falk Hueffner
  0 siblings, 0 replies; 8+ messages in thread
From: Falk Hueffner @ 2004-07-20 22:19 UTC (permalink / raw)
  To: qemu-devel

Alex Melnikov <shurikkk@mail15.com> writes:

> What are the status of the Alpha host port?

It has never worked 100% and is currently pretty much broken.

> I tryed to run rar_static (x86 linux binary) - with this compiled
> qemu-i386, it only shows rar_help in stdout, but when i tryed to
> unpack rar archive with it - it gives error something like "can't
> seek in file test.rar".

First you should make sure you use gcc 3.3. Newer versions seem to do
something funny. Next it would be great if you could try to find some
very simple failing program (maybe write one?), to make debugging
easier. Last time I looked, it seemed to be something with signal
handling.

> i386-softmmu:
>
> Seems broken? (no cpu_get_ticks form alpha, "unsupported cpu error"
> in vl.c)

Alpha has a 32-bit cycle counter which could be used here, one just
would have to compensate for the frequent overflows. But it's probably
not worth bothering as long as the CPU emulation doesn't work...

-- 
	Falk

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Qemu-devel] qemu on alpha
@ 2007-12-21  8:14 Gabriele Gorla
  2007-12-25  0:29 ` Thiemo Seufer
  0 siblings, 1 reply; 8+ messages in thread
From: Gabriele Gorla @ 2007-12-21  8:14 UTC (permalink / raw)
  To: qemu-devel

Hello,
I recently downloaded qemu-0.9.0 and tried to compile
it on alpha.
I was not able to get any target to compile.

I searched the mailing list but I was not able to find
any recent information on the alpha host status.

I am using gcc-3.3.6 on debian stable with upgraded
kernel
2.6.22
I have tried with gcc-3.4 and 4.1 with similar
results.

I patched the line:
#if defined (__x86_64__) || defined(__ia64) ||
defined(__alpha__)
of file dyngen-exec.h to add the alpha to the 64-bit
architectures to prevent redefinition of int64_t and
uint64_t 

beside tons of warning about casting pointers to int
of different sizes I get the following two fatal
errors:

qemu-0.9.0/target-i386/ops_template.h:278: warning:
implicit declaration of function `GOTO_LABEL_PARAM'

qemu-0.9.0/target-i386/translate.c:1898: error: too
many arguments to function `gen_op_jnz_T0_label'
qemu-0.9.0/target-i386/translate.c:1900: error: too
many arguments to function `gen_op_jmp_label'

in the translate.c file the function is called with:
        gen_op_jmp_label(l2);

but in gen-op.h it is defined as:
static inline void gen_op_jmp_label(void)
{
    *gen_opc_ptr++ = INDEX_op_jmp_label;
}

same for gen_op_jnz_T0_label


for GOTO_LABEL_PARAM the definition is completely
missing from dyngen-exec.h (it is there for all other
host CPUs except m68k)

Unfortunately my understanding of the code is not
sufficient to do anything useful at this point.
I would really appreciate if someone could give me a
hint.

thanks,
GG






      ____________________________________________________________________________________
Never miss a thing.  Make Yahoo your home page. 
http://www.yahoo.com/r/hs

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [Qemu-devel] qemu on alpha
  2007-12-21  8:14 [Qemu-devel] qemu on alpha Gabriele Gorla
@ 2007-12-25  0:29 ` Thiemo Seufer
  0 siblings, 0 replies; 8+ messages in thread
From: Thiemo Seufer @ 2007-12-25  0:29 UTC (permalink / raw)
  To: Gabriele Gorla; +Cc: qemu-devel

Gabriele Gorla wrote:
> Hello,
> I recently downloaded qemu-0.9.0 and tried to compile
> it on alpha.
> I was not able to get any target to compile.
> 
> I searched the mailing list but I was not able to find
> any recent information on the alpha host status.
> 
> I am using gcc-3.3.6 on debian stable with upgraded
> kernel
> 2.6.22
> I have tried with gcc-3.4 and 4.1 with similar
> results.
> 
> I patched the line:
> #if defined (__x86_64__) || defined(__ia64) ||
> defined(__alpha__)
> of file dyngen-exec.h to add the alpha to the 64-bit
> architectures to prevent redefinition of int64_t and
> uint64_t 
> 
> beside tons of warning about casting pointers to int
> of different sizes I get the following two fatal
> errors:
> 
> qemu-0.9.0/target-i386/ops_template.h:278: warning:
> implicit declaration of function `GOTO_LABEL_PARAM'
> 
> qemu-0.9.0/target-i386/translate.c:1898: error: too
> many arguments to function `gen_op_jnz_T0_label'
> qemu-0.9.0/target-i386/translate.c:1900: error: too
> many arguments to function `gen_op_jmp_label'
> 
> in the translate.c file the function is called with:
>         gen_op_jmp_label(l2);
> 
> but in gen-op.h it is defined as:
> static inline void gen_op_jmp_label(void)
> {
>     *gen_opc_ptr++ = INDEX_op_jmp_label;
> }
> 
> same for gen_op_jnz_T0_label
> 
> 
> for GOTO_LABEL_PARAM the definition is completely
> missing from dyngen-exec.h (it is there for all other
> host CPUs except m68k)
> 
> Unfortunately my understanding of the code is not
> sufficient to do anything useful at this point.
> I would really appreciate if someone could give me a
> hint.

Current CVS has probably less broken alpha host support. Still, it is
unlikely to work out of the box, fixing this requires some knowledge
of alpha assembler. (E.g. for implementing a GOTO_LABEL_PARAM for alpha.)


Thiemo

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [Qemu-devel] qemu on alpha
@ 2008-01-12  2:48 Gabriele Gorla
  0 siblings, 0 replies; 8+ messages in thread
From: Gabriele Gorla @ 2008-01-12  2:48 UTC (permalink / raw)
  To: qemu-devel

Thiemo wrote:
> Gabriele Gorla wrote:
> > Hello,
> > I recently downloaded qemu-0.9.0 and tried to
compile
> > it on alpha.
> > I was not able to get any target to compile.
> > 
> > beside tons of warning about casting pointers to
int
> > of different sizes I get the following two fatal
> > errors:
> > 
> > qemu-0.9.0/target-i386/ops_template.h:278:
warning:
> > implicit declaration of function
`GOTO_LABEL_PARAM'
> > 
> > qemu-0.9.0/target-i386/translate.c:1898: error:
too
> > many arguments to function `gen_op_jnz_T0_label'
> > qemu-0.9.0/target-i386/translate.c:1900: error:
too
> > many arguments to function `gen_op_jmp_label'
> > 
> > in the translate.c file the function is called
with:
> >         gen_op_jmp_label(l2);
> > 
> > but in gen-op.h it is defined as:
> > static inline void gen_op_jmp_label(void)
> > {
> >     *gen_opc_ptr++ = INDEX_op_jmp_label;
> > }
> > 
> > same for gen_op_jnz_T0_label
> > 
> > 
> > for GOTO_LABEL_PARAM the definition is completely
> > missing from dyngen-exec.h (it is there for all
other
> > host CPUs except m68k)
> > 
> > Unfortunately my understanding of the code is not
> > sufficient to do anything useful at this point.
> > I would really appreciate if someone could give me
a
> > hint.
>
> Current CVS has probably less broken alpha host 
> support. Still, it is
> unlikely to work out of the box, fixing this
requires 
> some knowledge
> of alpha assembler. (E.g. for implementing a 
> GOTO_LABEL_PARAM for alpha.)

Thiemo,
thanks for your reply.

I downloaded the latest CVS snapshot. It seems to be
slightly better as I do not have to patch for 64-bit
datatypes any longer.
However it still complains about gen_op_jnz_T0_label
and gen_op_jmp_label.

I am willing to spend time trying to figure out what
is wrong but I really need a little help to understand
where to look.

thanks,
GG 


      ____________________________________________________________________________________
Be a better friend, newshound, and 
know-it-all with Yahoo! Mobile.  Try it now.  http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ 

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [Qemu-devel] qemu on alpha
@ 2008-02-26  9:36 Gabriele Gorla
  2008-02-26 11:56 ` Thiemo Seufer
  0 siblings, 1 reply; 8+ messages in thread
From: Gabriele Gorla @ 2008-02-26  9:36 UTC (permalink / raw)
  To: qemu-devel

It seems I cannot send email to the mailing list from
my personal email account. Anyway... 
Here is what I discovered debugging the failure.
Is there anyone who can direct me to the next step?

thanks,
GG

> -------- Forwarded Message --------
> From: Gabriele Gorla <gorlik@penguintown.net>
> To: qemu-devel@nongnu.org
> Subject: Re: [Qemu-devel] qemu on alpha
> Date: Sat, 16 Feb 2008 22:11:21 -0800
> 
> Thiemo,
> thanks for your previous reply.
> I finally managed to compile qemu 0.9.1 on my
> machine (alpha ev68).
> 
> I had to add (as you suggested) the definition for
> GOTO_LABEL_PARAM:
> #define GOTO_LABEL_PARAM(n) asm volatile ("jmp
> "ASM_NAME(__op_gen_label)
> #n)
> 
> and I had to remove the -msmall-data option from the
> Makefile.target to
> make qemu link proprely.
> 
> Unfortunately I still can't run anything as qemu
> crashes very quickly
> when trying to execute the generated code.
> 
> Using gdb combined with qemu debug features I was
> able to narrow down
> the crash to the following instruction sequence:
> 
> ----------------
> IN:
> 0x400839f9:  pop    %ebx
> 0x400839fa:  add    $0x1104f,%ebx
> 0x40083a00:  xor    %eax,%eax
> 0x40083a02:  lea    0xfffffdec(%ebp),%edi
> 0x40083a08:  lea    0xfffeefa0(%ebx),%esi
> 0x40083a0e:  sub    0x84(%ebx),%esi
> 0x40083a14:  lea    0xfffffdbc(%ebp),%edx
> 0x40083a1a:  mov    %edx,0xfffffd90(%ebp)
> 0x40083a20:  lea    0xfffffdc0(%ebp),%ecx
> 0x40083a26:  mov    %ecx,0xfffffda0(%ebp)
> 0x40083a2c:  lea    0xfffffdc4(%ebp),%edx
> 0x40083a32:  mov    %edx,0xfffffd9c(%ebp)
> 0x40083a38:  lea    0xfffffdd4(%ebp),%ecx
> 0x40083a3e:  mov    %ecx,0xfffffd94(%ebp)
> 0x40083a44:  mov    %edi,%edx
> 0x40083a46:  movl   $0x0,(%edx,%eax,4)
> 0x40083a4d:  inc    %eax
> 0x40083a4e:  cmp    $0x61,%eax
> 0x40083a51:  jbe    0x40083a46
> 
> OUT: [size=936]
> 0x60589bb0: mov	s4,s2
> 0x60589bb4: zapnot s2,0xf,t0
> 0x60589bb8: ldl	s0,0(t0)
> 0x60589bbc: lda	s4,4(s4)
> 0x60589bc0: stl	s0,12(fp)
> 0x60589bc4: ldah gp,24606
> ...
> ...
> 0x60589e7c: ldah t0,0
> 0x60589e80: lda	t0,16(t0)
> 0x60589e84: mov	t0,t1
> 0x60589e88: stl	t1,48(fp)
> 0x60589e8c: ldl	t1,40(fp)
> 0x60589e90: ldl	t0,44(fp)
> 0x60589e94: addl t0,t1,t0
> 0x60589e98: cmpule t0,t1,t0
> 0x60589e9c: beq	t0,0x60589ea8
> 0x60589ea0: lda	t12,-22256(gp)
> 0x60589ea4: br	0x6071d244     <---- branch to
> uninitialized memory
> 0x60589ea8: ldah gp,24606
> 0x60589eac: lda	gp,-12160(gp)
> 0x60589eb0: ldah t0,24613
> 0x60589eb4: lda	t0,-25936(t0)
> ...
> ...
> 
> given the original instruction sequence I am a bit
> puzzled about the
> source of the offending branch instruction in the
> generated code.
> 
> do you have any suggestion on how to proceed?
> 
> thank,
> GG
> 


      ____________________________________________________________________________________
Be a better friend, newshound, and 
know-it-all with Yahoo! Mobile.  Try it now.  http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ 

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [Qemu-devel] qemu on alpha
  2008-02-26  9:36 Gabriele Gorla
@ 2008-02-26 11:56 ` Thiemo Seufer
  0 siblings, 0 replies; 8+ messages in thread
From: Thiemo Seufer @ 2008-02-26 11:56 UTC (permalink / raw)
  To: Gabriele Gorla; +Cc: qemu-devel

Gabriele Gorla wrote:
> It seems I cannot send email to the mailing list from
> my personal email account. Anyway... 
> Here is what I discovered debugging the failure.
> Is there anyone who can direct me to the next step?

Things have changed considerably in the last few weeks. The code
generator is now TCG, which works currently only on x86 and x86_64
hosts. So you would need to create a TCG version for Alpha. Have a
look at the tcg subdirectory in the CVS version.


Thiemo

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2008-02-26 11:56 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-12-21  8:14 [Qemu-devel] qemu on alpha Gabriele Gorla
2007-12-25  0:29 ` Thiemo Seufer
  -- strict thread matches above, loose matches on Subject: below --
2008-02-26  9:36 Gabriele Gorla
2008-02-26 11:56 ` Thiemo Seufer
2008-01-12  2:48 Gabriele Gorla
2004-07-20  7:39 [Qemu-devel] QEMU on Alpha Alex Melnikov
2004-07-20 22:19 ` Falk Hueffner
2003-05-28  0:58 [Qemu-devel] QEMU 0.2 is out Fabrice Bellard
2003-06-01 18:19 ` Falk Hueffner
2003-06-02 22:52   ` Fabrice Bellard
2003-06-02 23:20     ` Falk Hueffner
2003-06-03  0:49       ` Fabrice Bellard
2003-06-03 13:18         ` Falk Hueffner
2003-06-05  1:12           ` [Qemu-devel] QEMU on Alpha Fabrice Bellard

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).