- Nov 07, 2009
-
-
Chris Lattner authored
llvm-svn: 86366
-
Jeffrey Yasskin authored
MachineRelocations, "stub" always refers to a far-call stub or a load-a-faraway-global stub, so this patch adds "Far" to the term. (Other stubs are used for lazy compilation and dlsym address replacement.) The variable was also inconsistent between the positive and negative sense, and the positive sense ("NeedStub") was more demanding than is accurate (since a nearby-enough function can be called directly even if the platform often requires a stub). Since the negative sense causes double-negatives, I switched to "MayNeedFarStub" globally. llvm-svn: 86363
-
Eric Christopher authored
of movhps as the constraint. Changes optimizations so update testcases as appropriate as well. llvm-svn: 86360
-
Mon P Wang authored
llvm-svn: 86332
-
Evan Cheng authored
llvm-svn: 86330
-
Evan Cheng authored
except it doesn't care if the definitions' virtual registers differ. This is used by machine LICM and other MI passes to perform CSE. - Teach Thumb2InstrInfo::isIdentical() to check two t2LDRpci_pic are identical. Since pc relative constantpool entries are always different, this requires it it check if the values can actually the same. llvm-svn: 86328
-
Ted Kremenek authored
llvm-svn: 86325
-
Kenneth Uildriks authored
Add code to check at SelectionDAGISel::LowerArguments time to see if return values can be lowered to registers. Coming soon, code to perform sret-demotion if return values cannot be lowered to registers llvm-svn: 86324
-
Johnny Chen authored
was wrong and too aggressive in the sense that DPSoRegFrm includes both constant shifts (with Inst{4} = 0) and register controlled shifts (with Inst{4} = 1 and Inst{7} = 0). The 'rr' fragment of the multiclass definitions actually means register/register with no shift, see A8-11. llvm-svn: 86319
-
Jim Grosbach authored
llvm-svn: 86310
-
Evan Cheng authored
load of a GV from constantpool and then add pc. It allows the code sequence to be rematerializable so it would be hoisted by machine licm. - Add a late pass to break these pseudo instructions into a number of real instructions. Also move the code in Thumb2 IT pass that breaks up t2MOVi32imm to this pass. This is done before post regalloc scheduling to allow the scheduler to proper schedule these instructions. It also allow them to be if-converted and shrunk by later passes. llvm-svn: 86304
-
Anton Korobeynikov authored
llvm-svn: 86303
-
Bob Wilson authored
will not accept negative values for these. LLVM's default operand printing sign extends values, so that valid unsigned values appear as negative immediates. Print all VMOV immediate operands as hex values to resolve this. Radar 7372576. llvm-svn: 86301
-
- Nov 06, 2009
-
-
Evan Cheng authored
Remove ARMPCLabelIndex from ARMISelLowering. Use ARMFunctionInfo::createConstPoolEntryUId() instead. llvm-svn: 86294
-
Daniel Dunbar authored
llvm-svn: 86251
-
Dan Gohman authored
llvm-svn: 86199
-
Dan Gohman authored
implicit zero-extend. llvm-svn: 86196
-
- Nov 05, 2009
-
-
Dan Gohman authored
llvm-svn: 86149
-
Chris Lattner authored
llvm-svn: 86146
-
Mon P Wang authored
llvm-svn: 86114
-
Jim Grosbach authored
llvm-svn: 86068
-
Jim Grosbach authored
aggressive testing of dynamic stack alignment. Note that this is off by default, and enabled for LLCBETA nightly results. llvm-svn: 86064
-
- Nov 04, 2009
-
-
Jim Grosbach authored
llvm-svn: 86057
-
Jim Grosbach authored
saved instructions even if no stack adjustment for those saves is needed. llvm-svn: 86056
-
Bob Wilson authored
llvm-svn: 86050
-
Jakob Stoklund Olesen authored
The KILL pseudo-instruction may survive to the asm printer pass, just like the IMPLICIT_DEF. Print the KILL as a comment instead of just leaving a blank line in the output. With -asm-verbose=0, a blank line is printed, like IMPLICIT?DEF. llvm-svn: 86041
-
Evan Cheng authored
llvm-svn: 86019
-
Evan Cheng authored
llvm-svn: 85980
-
Evan Cheng authored
Fix t2Int_eh_sjlj_setjmp. Immediate form of orr is a 32-bit instruction. So it should be 22 bytes instead of 20 bytes long. llvm-svn: 85965
-
- Nov 03, 2009
-
-
Evan Cheng authored
llvm-svn: 85952
-
Anton Korobeynikov authored
llvm-svn: 85914
-
Evan Cheng authored
llvm-svn: 85878
-
Bob Wilson authored
between ARM/Thumb modes and does not require the low bit of the target address to be set for Thumb. llvm-svn: 85874
-
Evan Cheng authored
llvm-svn: 85871
-
Evan Cheng authored
llvm-svn: 85870
-
Evan Cheng authored
llvm-svn: 85869
-
Ted Kremenek authored
llvm-svn: 85861
-
Anton Korobeynikov authored
llvm-svn: 85850
-
Anton Korobeynikov authored
llvm-svn: 85847
-
Bob Wilson authored
constant pool so they don't get wrapped separately. llvm-svn: 85844
-