Eli Friedman <[email protected]> wrote on 01.11.2012 01:22:06: > On Wed, Oct 31, 2012 at 7:44 AM, Ulrich Weigand > <[email protected]> wrote: > > I'm wondering how to proceed on this issue for now. Current status is > > that I've checked in the testsuite patch, since there was agreement > > that fixing the tests by adding target triples was the way to go. > > However, the actual fix to enable the sign-extensions required by > > the PowerPC64 ABI is not in, so we still generate code that violates > > the ABI. > > > > I understand that there is a long-term goal of having those extensions > > done in the front end instead of in LLVM. However, as far as I can > > see the necessary infrastructure is not yet fully present (or in any > > event, I don't see how to do it in the front end right now) ... > > > > Therefore, since my patch doesn't make moving to the new scheme > > any more difficult (it just does the same thing for "int" that is > > already being done for "short" and "char"), and it does fix the > > ABI bug we have right now, I'd propose to check it in now (and > > then move to new scheme with everyone else once it is ready). > > > > Would this be OK? Any other suggestions? > > > > For reference, the patch in question is appended again. > > Please factor out the check for whether an integer type needs to be > extended into a separate method.
I've attached an updated patch. Is this what you intended? > Please make sure there's a testcase on the LLVM side to make sure we > actually handle the attributes correctly. Good point. In fact, as it happens, attributes on i32 *return values* were not handled correctly, but ignored completely. (The attributes are handled for arguments, which is why the clang patch actually fixed the failure I was seeing ...) I've just posted a patch to llvm-commmits to provide a testcase, and a fix for the attributes on return values: http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20121105/155181.html Thanks for the review! Bye, Ulrich (See attached file: diff-clang-ppc64-extend)
diff-clang-ppc64-extend
Description: Binary data
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
