[llvm-commits] [PATCH] SVR4 ABI support for the PowerPC backend

Dale Johannesen dalej at apple.com
Wed Jul 1 14:26:30 PDT 2009


On Jun 27, 2009, at 8:15 AMPDT, Tilmann Scheller wrote:

> Hello,
>
> attached is a series of patches which implement the SVR4 ABI for
> PowerPC. Patches were made against revision 74382 and need to be
> applied in order. A patch which adds SVR4 support to llvm-gcc will
> follow soon.

OK, I've looked these over.  They do not break any of the  
compatibility tests on Darwin, and I'm pretty sure none of the code  
changes will break Darwin.  I haven't looked over the SVR4-specific  
bits too carefully, but didn't see anything obviously wrong.   
PPCCallingConv.td and PPCRegisterInfo.td say they have no newline at  
EOF, please fix those.

One thing I'm concerned about is that you're replacing the existing  
"ELF" ABI with the "SVR4" ABI.  They seem to be different in a few  
areas, like callee-saved register usage.  Are you sure it is OK to  
destroy the older one?  It looks to me like somebody familiar with a  
spec had set up the register usage to be correct for their "ELF"  
target.  Nicolas Geoffray seems to have done most of what I'm talking  
about, so I think he should comment.  I think these might need to  
coexist as subdivisions of "elf", as on x86-32.

> The current state of LLVM on 32-bit PowerPC Linux:
> compat.exp passes all tests (those are the ABI tests from the GCC  
> test suite)
> C-only nightly tester results: 1638 TEST-PASS / 96 TEST-FAIL
> llvm-gcc bootstraps at -O0 with a stage 2/3 comparison failure of  
> varasm.o
>
> These patches were not tested on Darwin PPC, so it would be really
> great if someone with a Darwin PPC nightly tester (Evan? :) ) could
> make a run with the patches applied. Just to make sure that I did not
> introduce any major regressions :)
>
> Feedback welcome!
>
> Greetings,
>
> Tilmann
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Small-cleanups-in-the-PowerPC-backend.patch
Type: text/x-patch
Size: 12107 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20090701/a000b04e/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0002-Add-NumFixedArgs-attribute-to-CallSDNode-which-indic.patch
Type: text/x-patch
Size: 19567 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20090701/a000b04e/attachment-0001.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0003-Implement-the-SVR4-ABI-for-PowerPC.patch
Type: text/x-patch
Size: 66356 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20090701/a000b04e/attachment-0002.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0004-Refactor-ABI-code-in-the-PowerPC-backend.patch
Type: text/x-patch
Size: 81794 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20090701/a000b04e/attachment-0003.bin>
-------------- next part --------------
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits



More information about the llvm-commits mailing list