================

----------------
uweigand wrote:

So the ABI (de-facto, if the spec is not explicit on this point) is that 32-bit 
values are passed in the lower half of the register, and the upper half is 
unspecified.  Old xlc behaves that way both as caller and caller.  OK.

Now you say clang as callee should behave the same way (i.e. treat the upper 
half as unspecified).  OK as well.  But you also say clang as *caller* should 
explicitly zero (always, no matter the type) the upper half.   Why?  This is 
different from old xlc, *and* unneeded if the all callees treat the upper half 
as unspecified.  This is the part I still do not get.

https://github.com/llvm/llvm-project/pull/206833
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to