- Jun 16, 2010
-
-
Benjamin Kramer authored
llvm-svn: 106102
-
Evan Cheng authored
Make post-ra scheduling, anti-dep breaking, and register scavenger (conservatively) aware of predicated instructions. This enables ARM to move if-conversion before post-ra scheduler. llvm-svn: 106091
-
Bill Wendling authored
will conflict with another live range. The place which creates this scenerio is the code in X86 that lowers a select instruction by splitting the MBBs. This eliminates the need to check from the bottom up in an MBB for live pregs. llvm-svn: 106066
-
Eric Christopher authored
a relative address. llvm-svn: 106064
-
Dale Johannesen authored
llvm-svn: 106058
-
Dale Johannesen authored
call must not be callee-saved; following x86, add a new regclass to represent this. Also fixes a couple of bugs. Still disabled by default; Thumb doesn't work yet. llvm-svn: 106053
-
- Jun 15, 2010
-
-
Dale Johannesen authored
flag argument to addReg is not the same format as flags attached to MachineOperand, although both have the same info. I don't think this actually mattered; the bootstrap failure did not reproduce on the next run anyway. llvm-svn: 106049
-
Chris Lattner authored
Nelson Elhage! llvm-svn: 106031
-
Bob Wilson authored
llvm-svn: 106030
-
Daniel Dunbar authored
llvm-svn: 105994
-
Bob Wilson authored
llvm-svn: 105990
-
Dale Johannesen authored
llvm-svn: 105988
-
Dale Johannesen authored
containing the target address, an input, into an output. I don't think this actually broke anything on x86 (it does on ARM), but it's wrong. llvm-svn: 105986
-
Jim Grosbach authored
the combined load/store instruction. rdar://7797940 llvm-svn: 105982
-
Bob Wilson authored
immediate" operands. These functions have so far only been used for VMOV but they also apply to other NEON instructions with modified immediate operands. No functional changes. llvm-svn: 105969
-
- Jun 14, 2010
-
-
Chris Lattner authored
symbols as declarations in the X86 backend. This would manifest on darwin x86-32 as errors like this with -fvisibility=hidden: symbol '__ZNSbIcED1Ev' can not be undefined in a subtraction expression This fixes PR7353. llvm-svn: 105954
-
Chris Lattner authored
llvm-svn: 105943
-
Eli Friedman authored
more clear what exactly is missing. llvm-svn: 105934
-
- Jun 12, 2010
-
-
Rafael Espindola authored
llvm-svn: 105900
-
Eli Friedman authored
llvm-svn: 105878
-
Bruno Cardoso Lopes authored
llvm-svn: 105876
-
Bruno Cardoso Lopes authored
llvm-svn: 105873
-
Bruno Cardoso Lopes authored
llvm-svn: 105870
-
Bruno Cardoso Lopes authored
Handle OpSize TSFlag for AVX llvm-svn: 105869
-
Bruno Cardoso Lopes authored
llvm-svn: 105860
-
Bruno Cardoso Lopes authored
Introduce the VEX_X field llvm-svn: 105859
-
Bob Wilson authored
i64 and f64 types, but now it also handle Neon vector types, so the f64 result of VMOVDRR may need to be converted to a Neon type. Radar 8084742. llvm-svn: 105845
-
- Jun 11, 2010
-
-
Bob Wilson authored
the machine instruction representation of the immediate value to be encoded into an integer with similar fields as the actual VMOV instruction. This makes things easier for the disassembler, since it can just stuff the bits into the immediate operand, but harder for the asm printer since it has to decode the value to be printed. Testcase for the encoding will follow later when MC has more support for ARM. llvm-svn: 105836
-
- Jun 10, 2010
-
-
Evan Cheng authored
llvm-svn: 105774
-
Jim Grosbach authored
dbg_value immediately follows a sequence of ldr/str instructions that should be combined into an ldm/stm and is the last instruction in the block, then combine may end up being skipped. llvm-svn: 105758
-
- Jun 09, 2010
-
-
Evan Cheng authored
Allow target to place 2-address pass inserted copies in better spots. Thumb2 will use this to try to avoid breaking up IT blocks. llvm-svn: 105745
-
Kalle Raiskila authored
We default to inserting to lane 0. llvm-svn: 105722
-
Kalle Raiskila authored
random load/store, rather than crashing llc. llvm-svn: 105710
-
Evan Cheng authored
llvm-svn: 105677
-
Eli Friedman authored
llvm-svn: 105674
-
Evan Cheng authored
the same condition, it's important to make sure they are scheduled together to avoid forming multiple IT blocks. I'm adding a pre-regalloc pass that forms IT blocks early (by re-scheduling instructions and split basic blocks) to attempt to fix this. This is not turned on by default since I am not sure this is the right fix. Another issue is llvm selects are modeled as two-address conditional moves. This can be very bad when the copies before the conditional moves are not coalesced away. Teach IT formation pass to move the copies above the IT block (when legal) to avoid breaking the IT block. llvm-svn: 105669
-
Kevin Enderby authored
instruction. Added the 64-bit version "jrcxz" so it is recognized and also added the checks for incorrect uses of "jcxz" in 64-bit mode and "jrcxz" in 32-bit mode. Still to do is to correctly handle the encoding of the instruction adding the Address-size override prefix byte, 0x67, when the width of the count register is not the same as the mode the machine is running in. Which for example means the encoding of "jecxz" depends if you are assembling as a 32-bit target or a 64-bit target. llvm-svn: 105661
-
Eric Christopher authored
that rip-relative address when executing in 32-bit mode. llvm-svn: 105656
-
Jim Grosbach authored
llvm-svn: 105653
-
Bruno Cardoso Lopes authored
immediates to avoid breaking the build. llvm-svn: 105652
-