- Mar 30, 2011
-
-
Jay Foad authored
llvm-svn: 128535
-
Jakob Stoklund Olesen authored
When DCE clones a live range because it separates into connected components, make sure that the clones enter the same register allocator stage as the register they were cloned from. For instance, clones may be split even when they where created during spilling. Other registers created during spilling are not candidates for splitting or even (re-)spilling. llvm-svn: 128524
-
Bill Wendling authored
llvm-svn: 128519
-
Bill Wendling authored
llvm-svn: 128507
-
Bill Wendling authored
llvm-svn: 128506
-
Jim Grosbach authored
llvm-svn: 128504
-
Evan Cheng authored
was lowering them to sext / uxt + mul instructions. Unfortunately the optimization passes may hoist the extensions out of the loop and separate them. When that happens, the long multiplication instructions can be broken into several scalar instructions, causing significant performance issue. Note the vmla and vmls intrinsics are not added back. Frontend will codegen them as intrinsics vmull* + add / sub. Also note the isel optimizations for catching mul + sext / zext are not changed either. First part of rdar://8832507, rdar://9203134 llvm-svn: 128502
-
Bill Wendling authored
llvm-svn: 128501
-
Benjamin Kramer authored
On x86 we now compile "if (a < 0 && b < 0)" into testl %edi, %esi js IF.THEN llvm-svn: 128496
-
- Mar 29, 2011
-
-
Cameron Zwarich authored
<rdar://problem/8875309> and <rdar://problem/9057191>. llvm-svn: 128492
-
Jakob Stoklund Olesen authored
The spill weight is not recomputed for an unspillable register - it stays infinite. llvm-svn: 128490
-
Kevin Enderby authored
and Nans with the same strings as GAS supports. rdar://8673024 llvm-svn: 128488
-
Jim Grosbach authored
llvm-svn: 128485
-
Benjamin Kramer authored
Fixes PR9569 and will hopefully make selfhost on ASLR-enabled systems more deterministic. llvm-svn: 128482
-
Owen Anderson authored
Check early if this is an unsupported opcode, so that we can avoid needlessly instantiating the base register in some cases. llvm-svn: 128481
-
Johnny Chen authored
The STC_OPTION and STC2_OPTION instructions should have their coprocessor option enclosed in {}. rdar://problem/9200661 llvm-svn: 128478
-
Jakob Stoklund Olesen authored
llvm-svn: 128469
-
Jakob Stoklund Olesen authored
This may eliminate some uses of the spilled registers, and we don't want to insert reloads for that. llvm-svn: 128468
-
Owen Anderson authored
llvm-svn: 128467
-
Bill Wendling authored
llvm-svn: 128465
-
Owen Anderson authored
llvm-svn: 128461
-
Bill Wendling authored
the FailBB dominator is correctly calculated. Believe it or not, there isn't a functionality change here. llvm-svn: 128455
-
Cameron Zwarich authored
vector types. This helps a lot with inlined functions when using the ARM soft float ABI. Fixes <rdar://problem/9184212>. llvm-svn: 128453
-
Bill Wendling authored
dominator information. llvm-svn: 128452
-
Bill Wendling authored
llvm-svn: 128451
-
Jakob Stoklund Olesen authored
llvm-svn: 128450
-
Jakob Stoklund Olesen authored
The instruction to be rematerialized may not be the one defining the register that is being spilled. The traceSiblingValue() function sees through sibling copies to find the remat candidate. llvm-svn: 128449
-
Evan Cheng authored
Optimizing (zext A + zext B) * C, to (VMULL A, C) + (VMULL B, C) during isel lowering to fold the zero-extend's and take advantage of no-stall back to back vmul + vmla: vmull q0, d4, d6 vmlal q0, d5, d6 is faster than vaddl q0, d4, d5 vmovl q1, d6 vmul q0, q0, q1 This allows us to vmull + vmlal for: f = vmull_u8( vget_high_u8(s), c); f = vmlal_u8(f, vget_low_u8(s), c); rdar://9197392 llvm-svn: 128444
-
Francois Pichet authored
llvm-svn: 128441
-
Bill Wendling authored
becomes reachable when before it wasn't). Check to make sure that it's not null before trying to use it. llvm-svn: 128434
-
Daniel Dunbar authored
integrated-as. llvm-svn: 128431
-
Daniel Dunbar authored
on Darwin. llvm-svn: 128430
-
- Mar 28, 2011
-
-
Ted Kremenek authored
llvm-svn: 128426
-
Johnny Chen authored
Add comments to ThumbDisassemblerCore.h for recent change made for t2PLD disassembly. llvm-svn: 128417
-
Kevin Enderby authored
otool(1), this time with the needed fix for case sensitive file systems :) . This is a work in progress as the interface for producing symbolic operands is not done. But a hacked prototype using information from the object file's relocation entiries and replacing immediate operands with MCExpr's has been shown to work with no changes to the instrucion printer. These APIs will be moved into a dynamic library at some point. llvm-svn: 128415
-
Nick Lewycky authored
llvm-svn: 128413
-
Jay Foad authored
llvm-svn: 128406
-
Che-Liang Chiou authored
llvm-svn: 128405
-
Frits van Bommel authored
Add some debug output when -instcombine uses RAUW. This can make debug output for those cases much clearer since without this it only showed that the original instruction was removed, not what it was replaced with. llvm-svn: 128399
-
Jakob Stoklund Olesen authored
llvm-svn: 128398
-