- Dec 20, 2011
-
-
-
Bob Wilson authored
We used to rely on the *eh_sjlj_setjmp instructions to mark that a function with setjmp/longjmp exception handling clobbers all the registers. But with the recent reorganization of ARM EH, those eh_sjlj_setjmp instructions are expanded away earlier, before PEI can see them to determine what registers to save and restore. Mark the dispatchsetup instruction in the same way, since that instruction cannot be expanded early. This also more accurately reflects when the registers are clobbered. llvm-svn: 146949
-
Jim Grosbach authored
"mov r1, r2, lsl #0" should assemble as "mov r1, r2" even though it's not strictly legal UAL syntax. It's a common extension and the friendly thing to do. rdar://10604663 llvm-svn: 146937
-
Dan Gohman authored
llvm-svn: 146927
-
Jim Grosbach authored
e.g., "vmov.i32 d4, #-118" can be assembled as "vmvn.i32 d4, #117" rdar://10603913 llvm-svn: 146925
-
Jim Grosbach authored
rdar://9932658 llvm-svn: 146921
-
- Dec 19, 2011
-
-
Akira Hatanaka authored
patterns emit a single LUi instruction instead of a pair of LUi and ORi. llvm-svn: 146900
-
Akira Hatanaka authored
llvm-svn: 146896
-
Jim Grosbach authored
rdar://10602276 llvm-svn: 146895
-
Akira Hatanaka authored
direct-object emitter should emit the appropriate shift instruction depending on the shift amount. llvm-svn: 146893
-
Jim Grosbach authored
llvm-svn: 146892
-
Akira Hatanaka authored
llvm-svn: 146889
-
Akira Hatanaka authored
This change reduces the number of instructions generated. For example, (load (add (sub $n0, $n1), (MipsLo got(s)))) results in the following sequence of instructions: 1. sub $n2, $n0, $n1 2. lw got(s)($n2) Previously, three instructions were needed. 1. sub $n2, $n0, $n1 2. addiu $n3, $n2, got(s) 3. lw 0($n3) llvm-svn: 146888
-
Jim Grosbach authored
llvm-svn: 146887
-
Jim Grosbach authored
llvm-svn: 146885
-
Jim Grosbach authored
There's more variation that we need to handle. Error checking will need to be on operand predicates. llvm-svn: 146884
-
Jim Grosbach authored
llvm-svn: 146882
-
Jakob Stoklund Olesen authored
Add the new TableGen register class synthesizer feature to the release notes. llvm-svn: 146875
-
Jakob Stoklund Olesen authored
Use information computed while inferring new register classes to emit accurate, table-driven implementations of getMatchingSuperRegClass(). Delete the old manual, error-prone implementations in the targets. llvm-svn: 146873
-
- Dec 18, 2011
-
-
Benjamin Kramer authored
llvm-svn: 146852
-
Benjamin Kramer authored
Some compilers were complaining about passing StringRef to it. llvm-svn: 146850
-
Benjamin Kramer authored
llvm-svn: 146846
-
- Dec 17, 2011
-
-
Craig Topper authored
llvm-svn: 146833
-
Benjamin Kramer authored
llvm-svn: 146831
-
Evan Cheng authored
llvm-svn: 146805
-
Rafael Espindola authored
asm parsing and testcase. llvm-svn: 146801
-
Lang Hames authored
llvm-svn: 146800
-
Jakob Stoklund Olesen authored
I don't think this affects anything but verbose assembly. llvm-svn: 146787
-
Jakob Stoklund Olesen authored
The bad sorting caused a misaligned basic block when building 176.vpr in ARM mode. <rdar://problem/10594653> llvm-svn: 146767
-
- Dec 16, 2011
-
-
Jakob Stoklund Olesen authored
This adjustment is already included in the block offsets computed by BasicBlockInfo, and adjusting again here can cause the pass to loop. When CreateNewWater splits a basic block, OffsetIsInRange would reject the new CPE on the next pass because of the too conservative alignment adjustment. This caused the block to be split again, and so on. llvm-svn: 146751
-
Benjamin Kramer authored
Reenable the tests. llvm-svn: 146750
-
Jakob Stoklund Olesen authored
The command line option should be removed, but not until the feature has gotten a lot of testing. The ARMConstantIslandPass tends to have subtle bugs that only show up after a while. llvm-svn: 146739
-
Craig Topper authored
Don't try to match 'unpackl/h v, v' for 32xi8 and 16xi16 when only AVX1 is supported. Fix 'unpackh v, v' for 256-bit types to understand 128-bit lanes. llvm-svn: 146726
-
NAKAMURA Takumi authored
llvm-svn: 146724
-
Jim Grosbach authored
llvm-svn: 146714
-
Jim Grosbach authored
llvm-svn: 146710
-
Eli Friedman authored
Make sure we correctly note the existence of an i8 immediate for vblendvps and friends, so we compute fixups correctly. PR11586. llvm-svn: 146709
-
- Dec 15, 2011
-
-
Nick Lewycky authored
llvm-svn: 146702
-
Eli Friedman authored
Make check a bit more strict so we don't call ARM_AM::getFP32Imm with a value that isn't a 32-bit value. (This is just to be safe; I don't think this actually causes any issues in practice.) llvm-svn: 146700
-
Jim Grosbach authored
llvm-svn: 146699
-