- Jun 15, 2010
-
-
Bob Wilson authored
llvm-svn: 106015
-
Bob Wilson authored
combined to an insert_subreg, i.e., where the destination register is larger than the source. We need to check that the subregs can be composed for that case in a symmetrical way to the case when the destination is smaller. llvm-svn: 106004
-
Jakob Stoklund Olesen authored
Early clobbers defining a virtual register were first alocated to a physreg and then processed as a physreg EC, spilling the virtreg. This fixes PR7382. llvm-svn: 105998
-
Jakob Stoklund Olesen authored
Given a copy instruction, CoalescerPair can determine which registers to coalesce in order to eliminate the copy. It deals with all the subreg fun to determine a tuple (DstReg, SrcReg, SubIdx) such that: - SrcReg is a virtual register that will disappear after coalescing. - DstReg is a virtual or physical register whose live range will be extended. - SubIdx is 0 when DstReg is a physical register. - SrcReg can be joined with DstReg:SubIdx. CoalescerPair::isCoalescable() determines if another copy instruction is compatible with the same tuple. This fixes some NEON miscompilations where shuffles are getting coalesced as if they were copies. The CoalescerPair class will replace a lot of the spaghetti logic in JoinCopy later. llvm-svn: 105997
-
Daniel Dunbar authored
llvm-svn: 105994
-
Bob Wilson authored
replacing the overly conservative checks that I had introduced recently to deal with correctness issues. This makes a pretty noticable difference in our testcases where reg_sequences are used. I've updated one test to check that we no longer emit the unnecessary subreg moves. llvm-svn: 105991
-
Bob Wilson authored
llvm-svn: 105990
-
Dale Johannesen authored
llvm-svn: 105988
-
Ted Kremenek authored
llvm-svn: 105987
-
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
-
-
Jim Grosbach authored
Make sure to skip the dbg_value instructions when moving dups out of the diamond. rdar://7797940 llvm-svn: 105965
-
Evan Cheng authored
- Rename ExactHazardRecognizer to PostRAHazardRecognizer and move its header to include to allow targets to extend it. llvm-svn: 105959
-
Evan Cheng authored
llvm-svn: 105955
-
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
fixes PR7356. llvm-svn: 105950
-
Chris Lattner authored
llvm-svn: 105943
-
Chris Lattner authored
llvm-svn: 105942
-
Eli Friedman authored
more clear what exactly is missing. llvm-svn: 105934
-
- Jun 13, 2010
-
-
Benjamin Kramer authored
llvm-svn: 105914
-
- Jun 12, 2010
-
-
Rafael Espindola authored
llvm-svn: 105900
-
Chris Lattner authored
function name, patch by Yuri llvm-svn: 105887
-
Eli Friedman authored
llvm-svn: 105878
-
Bruno Cardoso Lopes authored
llvm-svn: 105876
-
Bruno Cardoso Lopes authored
llvm-svn: 105873
-
Bill Wendling authored
clean-up to a catch-all after inlining, take into account that there could be filter IDs as well. The presence of filters don't mean that the selector catches anything. It's just metadata information. llvm-svn: 105872
-
Bruno Cardoso Lopes authored
llvm-svn: 105870
-
Bruno Cardoso Lopes authored
Handle OpSize TSFlag for AVX llvm-svn: 105869
-
Evan Cheng authored
llvm-svn: 105862
-
Evan Cheng authored
llvm-svn: 105861
-
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
-
Stuart Hastings authored
llvm-svn: 105828
-
Stuart Hastings authored
llvm-svn: 105827
-
- Jun 10, 2010
-
-
Duncan Sands authored
warnings with gcc-4.6, by not setting bits when the result is not used. llvm-svn: 105790
-
Evan Cheng authored
llvm-svn: 105775
-
Evan Cheng authored
llvm-svn: 105774
-