================ ---------------- 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
