- Dec 14, 2011
-
-
Jim Grosbach authored
llvm-svn: 146571
-
Jim Grosbach authored
llvm-svn: 146570
-
Chad Rosier authored
llvm-svn: 146569
-
Chad Rosier authored
llvm-svn: 146568
-
Jim Grosbach authored
When 'cmp rn #imm' doesn't match due to the immediate not being representable, but 'cmn rn, #-imm' does match, use the latter in place of the former, as it's equivalent. rdar://10552389 llvm-svn: 146567
-
Chad Rosier authored
llvm-svn: 146566
-
Jim Grosbach authored
rdar://10549683 llvm-svn: 146543
-
Evan Cheng authored
to finalize MI bundles (i.e. add BUNDLE instruction and computing register def and use lists of the BUNDLE instruction) and a pass to unpack bundles. - Teach more of MachineBasic and MachineInstr methods to be bundle aware. - Switch Thumb2 IT block to MI bundles and delete the hazard recognizer hack to prevent IT blocks from being broken apart. llvm-svn: 146542
-
- Dec 13, 2011
-
-
Jim Grosbach authored
rdar://10549767 llvm-svn: 146520
-
Jim Grosbach authored
rdar://10550269 llvm-svn: 146519
-
Jim Grosbach authored
rdar://10549786 llvm-svn: 146518
-
Jim Grosbach authored
llvm-svn: 146516
-
Jim Grosbach authored
rdar://10549741 llvm-svn: 146515
-
Jim Grosbach authored
llvm-svn: 146514
-
Jim Grosbach authored
llvm-svn: 146511
-
Jim Grosbach authored
llvm-svn: 146508
-
Jim Grosbach authored
llvm-svn: 146507
-
Chad Rosier authored
load and then move the result from a GPR to a FPR. llvm-svn: 146502
-
Akira Hatanaka authored
in a 16-bit field. llvm-svn: 146469
-
Chandler Carruth authored
undefined result. This adds new ISD nodes for the new semantics, selecting them when the LLVM intrinsic indicates that the undef behavior is desired. The new nodes expand trivially to the old nodes, so targets don't actually need to do anything to support these new nodes besides indicating that they should be expanded. I've done this for all the operand types that I could figure out for all the targets. Owners of various targets, please review and let me know if any of these are incorrect. Note that the expand behavior is *conservatively correct*, and exactly matches LLVM's current behavior with these operations. Ideally this patch will not change behavior in any way. For example the regtest suite finds the exact same instruction sequences coming out of the code generator. That's why there are no new tests here -- all of this is being exercised by the existing test suite. Thanks to Duncan Sands for reviewing the various bits of this patch and helping me get the wrinkles ironed out with expanding for each target. Also thanks to Chris for clarifying through all the discussions that this is indeed the approach he was looking for. That said, there are likely still rough spots. Further review much appreciated. llvm-svn: 146466
-
Jakob Stoklund Olesen authored
Constant pool entries with different alignment may cause more alignment padding to be inserted. Compute the amount of padding needed, and try to pick the location that requires the least amount of padding. Also take the extra padding into account when the water is above the use. llvm-svn: 146458
-
NAKAMURA Takumi authored
llvm-svn: 146457
-
- Dec 12, 2011
-
-
Daniel Dunbar authored
subdirectories to traverse into. - Originally I wanted to avoid this and just autoscan, but this has one key flaw in that new subdirectories can not automatically trigger a rerun of the llvm-build tool. This is particularly a pain when switching back and forth between trees where one has added a subdirectory, as the dependencies will tend to be wrong. This will also eliminates FIXME implicitly. llvm-svn: 146436
-
Akira Hatanaka authored
-relocation-model=static. llvm-svn: 146432
-
Akira Hatanaka authored
llvm-svn: 146431
-
Tony Linthicum authored
llvm-svn: 146420
-
rdar://problem/10551006Bob Wilson authored
These modifiers simply select either the low or high D subregister of a Neon Q register. I've also removed the unimplemented 'p' modifier, which turns out to be a bit different than the comment here suggests and as far as I can tell was only intended for internal use in Apple's version of gcc. llvm-svn: 146417
-
Tony Linthicum authored
llvm-svn: 146412
-
Daniel Dunbar authored
llvm-svn: 146409
-
Jan Sjödin authored
llvm-svn: 146407
-
Jakob Stoklund Olesen authored
This computes the offset of the layout sucessor block, considering its alignment as well. llvm-svn: 146401
-
Jakob Stoklund Olesen authored
llvm-svn: 146400
-
Jan Sjödin authored
llvm-svn: 146397
-
Jakob Stoklund Olesen authored
Downgrade the alignment of the initial constant island when constant pool entries are moved elsewhere. This is all gated by -arm-align-constant-islands. llvm-svn: 146391
-
Jakob Stoklund Olesen authored
Also add an MCP member pointing to the machine constant pool. No functional change intended. llvm-svn: 146382
-
Jakob Stoklund Olesen authored
Order constant pool entries by descending alignment in the initial island to ensure packing and correct alignment. When the command line flag is set, also align the basic block containing the constant pool entries. This is only a partial implementation of constant island alignment. More to come. llvm-svn: 146375
-
- Dec 11, 2011
-
-
Craig Topper authored
Remove some remants of the old palign pattern fragment that were still hanging around. Also remove a cast from inside getShuffleVPERM2X128Immediate and getShuffleVPERMILPImmediate since the only caller already had done the cast. llvm-svn: 146344
-
Stepan Dyatkovskiy authored
Fixed bug 9905: Failure in code selection for llvm intrinsics sqrt/exp (fix for FSQRT, FSIN, FCOS, FPOWI, FPOW, FLOG, FLOG2, FLOG10, FEXP, FEXP2). Third attempt: simplified checks in test for armv7-apple-darwin11. llvm-svn: 146341
-
Benjamin Kramer authored
llvm-svn: 146340
-
Nick Lewycky authored
of r146334! llvm-svn: 146338
-