- Nov 07, 2009
-
-
Chris Lattner authored
llvm-svn: 86366
-
Chris Lattner authored
llvm-svn: 86365
-
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
-
Nick Lewycky authored
a store. llvm-svn: 86359
-
Chris Lattner authored
(making pred factoring only happen if threading is guaranteed to be successful). This now survives an X86-64 bootstrap of llvm-gcc. llvm-svn: 86355
-
Chris Lattner authored
llvm-svn: 86354
-
Nick Lewycky authored
things. Back out part of r86349 for a moment. llvm-svn: 86353
-
Nick Lewycky authored
and add a .ll to demo the new capability. llvm-svn: 86349
-
Mikhail Glushenkov authored
llvm-svn: 86348
-
Mikhail Glushenkov authored
llvm-svn: 86347
-
Lang Hames authored
llvm-svn: 86342
-
Mon P Wang authored
llvm-svn: 86340
-
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
-
Jakob Stoklund Olesen authored
A non-identity copy cannot be coalesced when the phi join destination register is live at the copy site. Also verify the condition that the PHI join source register is only used in the PHI join. Otherwise the coalescing is invalid. llvm-svn: 86322
-
Devang Patel authored
86289, 86278, 86270, 86267, 86266 & 86264 Chris, please take a look. llvm-svn: 86321
-
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
-
Victor Hernandez authored
- fix ProcessInternalGlobal() debug output llvm-svn: 86317
-
Victor Hernandez authored
llvm-svn: 86316
-
Jeffrey Yasskin authored
llvm-svn: 86314
-
Victor Hernandez authored
Here is the original commit message: This commit updates malloc optimizations to operate on malloc calls that have constant int size arguments. Update CreateMalloc so that its callers specify the size to allocate: MallocInst-autoupgrade users use non-TargetData-computed allocation sizes. Optimization uses use TargetData to compute the allocation size. Now that malloc calls can have constant sizes, update isArrayMallocHelper() to use TargetData to determine the size of the malloced type and the size of malloced arrays. Extend getMallocType() to support malloc calls that have non-bitcast uses. Update OptimizeGlobalAddressOfMalloc() to optimize malloc calls that have non-bitcast uses. The bitcast use of a malloc call has to be treated specially here because the uses of the bitcast need to be replaced and the bitcast needs to be erased (just like the malloc call) for OptimizeGlobalAddressOfMalloc() to work correctly. Update PerformHeapAllocSRoA() to optimize malloc calls that have non-bitcast uses. The bitcast use of the malloc is not handled specially here because ReplaceUsesOfMallocWithGlobal replaces through the bitcast use. Update OptimizeOnceStoredGlobal() to not care about the malloc calls' bitcast use. Update all globalopt malloc tests to not rely on autoupgraded-MallocInsts, but instead use explicit malloc calls with correct allocation sizes. llvm-svn: 86311
-
Jim Grosbach authored
llvm-svn: 86310
-
Jeffrey Yasskin authored
of going through the global TheJIT variable. This makes it easier to use features of JITEmitter that aren't in JITCodeEmitter for fixing PR5201. llvm-svn: 86305
-
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
-
Chris Lattner authored
set only once even if it has multiple edges to BB. llvm-svn: 86299
-
- Nov 06, 2009
-
-
Bob Wilson authored
llvm-svn: 86295
-
Evan Cheng authored
Remove ARMPCLabelIndex from ARMISelLowering. Use ARMFunctionInfo::createConstPoolEntryUId() instead. llvm-svn: 86294
-
Victor Hernandez authored
CallInst::CreateMalloc() and CallInst::CreateFree() need to create calls with correct calling convention llvm-svn: 86290
-
Eli Friedman authored
llvm-svn: 86289
-
Chris Lattner authored
llvm-svn: 86278
-
Chris Lattner authored
llvm-svn: 86270
-
Devang Patel authored
llvm-svn: 86269
-
Chris Lattner authored
llvm-svn: 86267
-
Chris Lattner authored
llvm-svn: 86266
-