Hi,

Please review this patch which fixes the CoerceIntOrPtrToIntOrPtr() function on 
big-endian targets.

If I understand coercion correctly, it is supposed to be equivalent to storing 
one type and loading a different type from the same address. The 
CoerceIntOrPtrToIntOrPtr() performs type coercion of integers and pointers 
without the loads and stores. On big-endian targets, it needs to insert shifts 
when coercing types of different sizes.

This also gets us the correct argument passing behavior on SPARC v9 which 
passes small structs in the high bits of registers.

Thanks,
/jakob

Attachment: 0003-Fix-CoerceIntOrPtrToIntOrPtr-on-big-endian-targets.patch
Description: Binary data

_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to