On 12/07/2009 10:33 AM, H.J. Lu wrote:
> Hi,
> 
> 
> x86-64 psABI says _Bool has 1 byte and aligned at 1 byte. It also says:
> 
> ---
> When a value of type _Bool is passed in a register or on the stack,
> the upper 63 bits of the eightbyte shall be zero.
> ---
> 
> However, gcc treats _Bool as char:
> 
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42324
> 
> Given that gcc never zeros the upper 63 bits in register nor
> on stack, should we update x86-64 psABI to reflect what gcc
> really does?
> 

Another thing to check is to see if there are failure scenarios where
gcc 3.4.6 expects a fully zeroed register (it produces them, I don't
know if it expects to consume them that way, too.)

        -hpa

-- 
H. Peter Anvin, Intel Open Source Technology Center
I work for Intel.  I don't speak on their behalf.

Reply via email to