[LLVMdev] Linux/ppc backend

Nicolas Geoffray nicolas.geoffray at lip6.fr
Sat Feb 17 08:18:04 PST 2007


Evan Cheng wrote:
> I think the easiest thing for you to do is to define a separate CALL  
> instruction with a different set of Defs. This instruction should  
> only be selected when the predicate isMacho is true. Also update  
> PPCRegisterInfo.cpp getCalleeSavedRegs() to return a different list  
> when subtarget->isMachoABI() is true.
>   
Alright, thx Evan, that's what I did.

Here are the final patches I think can be committed. I tried to separate 
them into independent chunks, but I'm not
sure how to do this in a good way because of CVS and since everything is 
kind of related.

CallABIELF.patch file changes PPCISelLowering.cpp file for ELF ABI call 
support
CalleeSavedLinuxPPC.patch changes the callee saved registers for 
function calls
Creqv.patch adds some XLForm_1 classes to PPCInstrFormats.td for the 
CREQV instruction support
Frame.patch modifies PPCFrameInfo.h to take into account the ELF ABI for 
frame manipulation
JITLinuxPPC.patch adds support to detect a Linux/PPC JIT and separate 
the ELF ABI with the MachO ABI


I didn't sign any licence paper for LLVM. Let me know if I have to do 
something to commit to CVS. I can also give my code without any
restriction if someone wants to commit.


Cheers,
Nicolas
-------------- next part --------------
A non-text attachment was scrubbed...
Name: CallABIELF.patch
Type: text/x-patch
Size: 13361 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20070217/299a214d/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: CalleeSavedLinuxPPC.patch
Type: text/x-patch
Size: 9325 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20070217/299a214d/attachment-0001.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Creqv.patch
Type: text/x-patch
Size: 1388 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20070217/299a214d/attachment-0002.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Frame.patch
Type: text/x-patch
Size: 10953 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20070217/299a214d/attachment-0003.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: JITLinuxPPC.patch
Type: text/x-patch
Size: 4390 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20070217/299a214d/attachment-0004.bin>


More information about the llvm-dev mailing list