qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH] tcg, tci: Add TCG and interpreter for bytecode


From: malc
Subject: Re: [Qemu-devel] [PATCH] tcg, tci: Add TCG and interpreter for bytecode (virtual machine)
Date: Mon, 12 Oct 2009 16:33:10 +0400 (MSD)

On Mon, 12 Oct 2009, Stuart Brady wrote:

> On Mon, Oct 12, 2009 at 03:50:31AM +0400, malc wrote:
> > yOn Mon, 12 Oct 2009, Stuart Brady wrote:
> > 
> > No it's not, given that there are ABIs with argument alignment and
> > the fact that information about the types doesn't exist at the point
> > of op_call things just aren't that simple.
> 
> Huh?  If you're using a function pointer with the *correct* type,
> I hardly see how that's not sufficient.

Let me give you an example:

tcg$ cat << eof | gcc-4.4.1 -O -o - -S -x c -
> unsigned long long moo1 (int dummy, unsigned long long a)
> {
>     return ((unsigned long) (a >> 32)) | (a << 32);
> }
> 
> unsigned long long moo2 (int dummy1, int dummy2, unsigned long long a)
> {
>     return ((unsigned long) (a >> 32)) | (a << 32);
> }
> eof
        .file   ""
        .gnu_attribute 4, 1
        .gnu_attribute 8, 1
        .gnu_attribute 12, 2
        .section        ".text"
        .align 2
        .globl moo1
        .type   moo1, @function
moo1:
        mr 3,6
        mr 4,5
        blr
        .size   moo1, .-moo1
        .align 2
        .globl moo2
        .type   moo2, @function
moo2:
        mr 3,6
        mr 4,5
        blr
        .size   moo2, .-moo2
        .ident  "GCC: (GNU) 4.4.1"
        .section        .note.GNU-stack,"",@progbits

tcg$ uname -mo
ppc GNU/Linux

I hope it's self explanatory.

> 
> Yes, I did notice that the information doesn't exist at that point,
> (in fact I did so before the previous time that you pointed this out).
> 
> Cheers,
> 

-- 
mailto:address@hidden




reply via email to

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