mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-17 03:30:28 +00:00
b2f2aa9329
Summary: The N32/N64 ABI's return f128 values in $f0 and $f2 for hard-float and $v0 and $a0 for soft-float. The registers used in the soft-float case differ from the usual $v0, and $v1 specified for return values. Both cases were previously handled by duplicating the CCState::AnalyzeReturn() and CCState::AnalyzeCallReturn() functions and modifying them to delegate to a different assignment function for f128 and further replace the register type for the hard-float case. There is a simpler way to do both of these. We now use the common functions and select an initial assignment function based on whether the original type is f128 or not. We then handle the hard-float case using CCBitConvertToType<>. No functional change. Reviewers: vmedic Reviewed By: vmedic Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D5269 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@218036 91177308-0d34-0410-b5e6-96231b3b80d8 |
||
---|---|---|
.. | ||
AsmParser | ||
Disassembler | ||
InstPrinter | ||
MCTargetDesc | ||
TargetInfo | ||
CMakeLists.txt | ||
LLVMBuild.txt | ||
Makefile | ||
MicroMipsInstrFormats.td | ||
MicroMipsInstrFPU.td | ||
MicroMipsInstrInfo.td | ||
Mips16FrameLowering.cpp | ||
Mips16FrameLowering.h | ||
Mips16HardFloat.cpp | ||
Mips16HardFloat.h | ||
Mips16HardFloatInfo.cpp | ||
Mips16HardFloatInfo.h | ||
Mips16InstrFormats.td | ||
Mips16InstrInfo.cpp | ||
Mips16InstrInfo.h | ||
Mips16InstrInfo.td | ||
Mips16ISelDAGToDAG.cpp | ||
Mips16ISelDAGToDAG.h | ||
Mips16ISelLowering.cpp | ||
Mips16ISelLowering.h | ||
Mips16RegisterInfo.cpp | ||
Mips16RegisterInfo.h | ||
Mips32r6InstrFormats.td | ||
Mips32r6InstrInfo.td | ||
Mips64InstrInfo.td | ||
Mips64r6InstrInfo.td | ||
Mips.h | ||
Mips.td | ||
MipsAnalyzeImmediate.cpp | ||
MipsAnalyzeImmediate.h | ||
MipsAsmPrinter.cpp | ||
MipsAsmPrinter.h | ||
MipsCallingConv.td | ||
MipsCondMov.td | ||
MipsConstantIslandPass.cpp | ||
MipsDelaySlotFiller.cpp | ||
MipsDSPInstrFormats.td | ||
MipsDSPInstrInfo.td | ||
MipsFastISel.cpp | ||
MipsFrameLowering.cpp | ||
MipsFrameLowering.h | ||
MipsInstrFormats.td | ||
MipsInstrFPU.td | ||
MipsInstrInfo.cpp | ||
MipsInstrInfo.h | ||
MipsInstrInfo.td | ||
MipsISelDAGToDAG.cpp | ||
MipsISelDAGToDAG.h | ||
MipsISelLowering.cpp | ||
MipsISelLowering.h | ||
MipsLongBranch.cpp | ||
MipsMachineFunction.cpp | ||
MipsMachineFunction.h | ||
MipsMCInstLower.cpp | ||
MipsMCInstLower.h | ||
MipsModuleISelDAGToDAG.cpp | ||
MipsModuleISelDAGToDAG.h | ||
MipsMSAInstrFormats.td | ||
MipsMSAInstrInfo.td | ||
MipsOptimizePICCall.cpp | ||
MipsOptionRecord.h | ||
MipsOs16.cpp | ||
MipsOs16.h | ||
MipsRegisterInfo.cpp | ||
MipsRegisterInfo.h | ||
MipsRegisterInfo.td | ||
MipsRelocations.h | ||
MipsSchedule.td | ||
MipsSEFrameLowering.cpp | ||
MipsSEFrameLowering.h | ||
MipsSEInstrInfo.cpp | ||
MipsSEInstrInfo.h | ||
MipsSEISelDAGToDAG.cpp | ||
MipsSEISelDAGToDAG.h | ||
MipsSEISelLowering.cpp | ||
MipsSEISelLowering.h | ||
MipsSelectionDAGInfo.cpp | ||
MipsSelectionDAGInfo.h | ||
MipsSERegisterInfo.cpp | ||
MipsSERegisterInfo.h | ||
MipsSubtarget.cpp | ||
MipsSubtarget.h | ||
MipsTargetMachine.cpp | ||
MipsTargetMachine.h | ||
MipsTargetObjectFile.cpp | ||
MipsTargetObjectFile.h | ||
MipsTargetStreamer.h | ||
MSA.txt |