- Jul 12, 2010
-
-
Chris Lattner authored
remove it, fixing PR6909. llvm-svn: 108125
-
Rafael Espindola authored
AggressiveAntiDepBreaker should not be using getPhysicalRegisterRegClass. An instruction might be using a register that can only be replaced with one from a subclass of getPhysicalRegisterRegClass. With this patch we use getMinimalPhysRegClass. This is correct, but conservative. We should check the uses of the register and select the largest register class that can be used in all of them. llvm-svn: 108122
-
Chris Lattner authored
by Hans Vandierendonck from PR7605 llvm-svn: 108116
-
Chris Lattner authored
llvm-svn: 108103
-
Chris Lattner authored
llvm-svn: 108102
-
- Jul 11, 2010
-
-
Jakob Stoklund Olesen authored
Targets must now implement TargetInstrInfo::copyPhysReg instead. There is no longer a default implementation forwarding to copyRegToReg. llvm-svn: 108095
-
Rafael Espindola authored
llvm-svn: 108094
-
Jakob Stoklund Olesen authored
Use a COPY instruction instead for register copies, or TII::copyPhysReg() after COPY instructions are lowered. Targets should implement copyPhysReg instead of copyRegToReg. llvm-svn: 108075
-
Rafael Espindola authored
correct alignment information, which simplifies ExpandRes_VAARG a bit. The patch introduces a new alignment information to TargetLoweringInfo. This is needed since the two natural candidates cannot be used: * The 's' in target data: If this is set to the minimal alignment of any argument, getCallFrameTypeAlignment would return 4 for doubles on ARM for example. * The getTransientStackAlignment method. It is possible for an architecture to have argument less aligned than what we maintain the stack pointer. llvm-svn: 108072
-
- Jul 10, 2010
-
-
Dan Gohman authored
- Check getBytesToPopOnReturn(). - Eschew ST0 and ST1 for return values. - Fix the PIC base register initialization so that it doesn't ever fail to end up the top of the entry block. llvm-svn: 108039
-
- Jul 09, 2010
-
-
Jakob Stoklund Olesen authored
llvm-svn: 108012
-
Jakob Stoklund Olesen authored
inserted in a MBB, and return an already inserted MI. This target API change is necessary to allow foldMemoryOperand to call storeToStackSlot and loadFromStackSlot when folding a COPY to a stack slot reference in a target independent way. The foldMemoryOperandImpl hook is going to change in the same way, but I'll wait until COPY folding is actually implemented. Most targets only fold copies and won't need to specialize this hook at all. llvm-svn: 107991
-
Bob Wilson authored
U utils/TableGen/FastISelEmitter.cpp --- Reverse-merging r107943 into '.': U test/CodeGen/X86/fast-isel.ll U test/CodeGen/X86/fast-isel-loads.ll U include/llvm/Target/TargetLowering.h U include/llvm/Support/PassNameParser.h U include/llvm/CodeGen/FunctionLoweringInfo.h U include/llvm/CodeGen/CallingConvLower.h U include/llvm/CodeGen/FastISel.h U include/llvm/CodeGen/SelectionDAGISel.h U lib/CodeGen/LLVMTargetMachine.cpp U lib/CodeGen/CallingConvLower.cpp U lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp U lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp U lib/CodeGen/SelectionDAG/FastISel.cpp U lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp U lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp U lib/CodeGen/SelectionDAG/InstrEmitter.cpp U lib/CodeGen/SelectionDAG/TargetLowering.cpp U lib/Target/XCore/XCoreISelLowering.cpp U lib/Target/XCore/XCoreISelLowering.h U lib/Target/X86/X86ISelLowering.cpp U lib/Target/X86/X86FastISel.cpp U lib/Target/X86/X86ISelLowering.h llvm-svn: 107987
-
Gabor Greif authored
llvm-svn: 107970
-
Gabor Greif authored
llvm-svn: 107964
-
Gabor Greif authored
llvm-svn: 107961
-
Gabor Greif authored
llvm-svn: 107960
-
Gabor Greif authored
llvm-svn: 107959
-
Lang Hames authored
Unlike insertMachineInstrInMaps this does not guarantee live intervals will remain correct. The caller will need to manually update intervals to account for the changes made to the CFG. llvm-svn: 107958
-
Dan Gohman authored
a DBG_VALUE after a terminator, or emitting any instructions before an EH_LABEL. llvm-svn: 107943
-
Stuart Hastings authored
llvm-svn: 107930
-
Stuart Hastings authored
llvm-svn: 107919
-
- Jul 08, 2010
-
-
Kevin Enderby authored
.weak_def_can_be_hidden directive. Chris pointed out that the MCAsmInfo.h/.cpp chunks aren't needed for this until the compiler starts generating these. And when that happens it will be more convenient for it to be a bool than a const char*. llvm-svn: 107906
-
Jakob Stoklund Olesen authored
llvm-svn: 107898
-
Jim Grosbach authored
llvm-svn: 107887
-
Kevin Enderby authored
llvm-svn: 107886
-
Gabor Greif authored
(by caching the result we save a potentially expensive dereference) also use typedefs to shorten type declarations llvm-svn: 107883
-
Gabor Greif authored
llvm-svn: 107881
-
Jakob Stoklund Olesen authored
EXTRACT_SUBREG no longer appears as a machine instruction. Use COPY instead. Add isCopy() checks in many places using isMoveInstr() and isExtractSubreg(). The isMoveInstr hook will be removed later. llvm-svn: 107879
-
Duncan Sands authored
causes some versions of gcc to crash when building LLVM. llvm-svn: 107869
-
Duncan Sands authored
compiled with MSVC 2010 (PR7367). Instead use a SmallVector. llvm-svn: 107867
-
Jakob Stoklund Olesen authored
This target hook is intended to replace copyRegToReg entirely, but for now it calls copyRegToReg. Any remaining calls to copyRegToReg wil be replaced by COPY instructions. llvm-svn: 107854
-
Dan Gohman authored
Debug info intrinsics win for now. llvm-svn: 107850
-
Jim Grosbach authored
(if there are any) and use the one which remains available for the longest rather than just using the first one. This should help enable better re-use of the loaded frame index values. rdar://7318760 llvm-svn: 107847
-
Evan Cheng authored
llvm-svn: 107820
-
- Jul 07, 2010
-
-
Dan Gohman authored
a separate DCE pass over MachineInstrs. llvm-svn: 107804
-
Dan Gohman authored
a bunch of stuff, to allow the target-independent calling convention logic to be employed. llvm-svn: 107800
-
Dan Gohman authored
around everywhere, and also give it an InsertPt member, to enable isel to operate at an arbitrary position within a block, rather than just appending to a block. llvm-svn: 107791
-
Dan Gohman authored
instance, rather than pointers to all of FunctionLoweringInfo's members. This eliminates an NDEBUG ABI sensitivity. llvm-svn: 107789
-
Dan Gohman authored
allow target-specific fast-isel code to make use of it directly. llvm-svn: 107787
-