mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-21 00:32:23 +00:00
30e62c098b
Move platform independent code (lowering of possibly overwritten arguments, check for tail call optimization eligibility) from target X86ISelectionLowering.cpp to TargetLowering.h and SelectionDAGISel.cpp. Initial PowerPC tail call implementation: Support ppc32 implemented and tested (passes my tests and test-suite llvm-test). Support ppc64 implemented and half tested (passes my tests). On ppc tail call optimization is performed if caller and callee are fastcc call is a tail call (in tail call position, call followed by ret) no variable argument lists or byval arguments option -tailcallopt is enabled Supported: * non pic tail calls on linux/darwin * module-local tail calls on linux(PIC/GOT)/darwin(PIC) * inter-module tail calls on darwin(PIC) If constraints are not met a normal call will be emitted. A test checking the argument lowering behaviour on x86-64 was added. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50477 91177308-0d34-0410-b5e6-96231b3b80d8 |
||
---|---|---|
.. | ||
SubtargetFeature.h | ||
TargetAsmInfo.h | ||
TargetData.h | ||
TargetELFWriterInfo.h | ||
TargetFrameInfo.h | ||
TargetInstrDesc.h | ||
TargetInstrInfo.h | ||
TargetInstrItineraries.h | ||
TargetJITInfo.h | ||
TargetLowering.h | ||
TargetMachine.h | ||
TargetMachineRegistry.h | ||
TargetMachOWriterInfo.h | ||
TargetOptions.h | ||
TargetRegisterInfo.h | ||
TargetSubtarget.h |