- Jun 09, 2010
-
-
Evan Cheng authored
llvm-svn: 105740
-
Kenneth Uildriks authored
Pulled CodeMetrics out of InlineCost.h and made it a bit more general, so it can be reused from PartialSpecializationCost llvm-svn: 105725
-
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
-
Jakob Stoklund Olesen authored
llvm-svn: 105665
-
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
-
Eric Christopher authored
the register. While we're at it, make sure it's in the right one. llvm-svn: 105645
-
- Jun 08, 2010
-
-
Jim Grosbach authored
llvm-svn: 105634
-
Daniel Dunbar authored
llvm-svn: 105620
-
Daniel Dunbar authored
DeltaAlgorithm: Tweak split to split by first/second half instead of even/odd, since adjacent changes are more likely to be related. llvm-svn: 105613
-
Daniel Dunbar authored
ADT: Add DAGDeltaAlgorithm, which is a DAG minimization algorithm built on top of the standard 'delta debugging' algorithm. - This can give substantial speedups in the delta process for inputs we can construct dependency information for. llvm-svn: 105612
-
Benjamin Kramer authored
realloc implementation can try to expand the allocated memory block in-place, avoiding the copy. llvm-svn: 105605
-
Kalle Raiskila authored
Discussed here: http://lists.cs.uiuc.edu/pipermail/llvmdev/2010-June/032107.html llvm-svn: 105601
-
Bob Wilson authored
llvm-svn: 105591
-
Bob Wilson authored
- change isShuffleMaskLegal to show that all shuffles with 32-bit and 64-bit elements are legal - the Neon shuffle instructions do not support 64-bit elements, but we were not checking for that before lowering shuffles to use them - remove some 64-bit element vduplane patterns that are no longer needed llvm-svn: 105586
-
Bob Wilson authored
that it is an immediate before checking that the instruction is an EXTRACT_SUBREG. llvm-svn: 105585
-
Dan Gohman authored
llvm-svn: 105561
-
- Jun 07, 2010
-
-
Jim Grosbach authored
rdar://7797940 llvm-svn: 105557
-
Jim Grosbach authored
llvm-svn: 105554
-
Dan Gohman authored
llvm-svn: 105551
-
Dan Gohman authored
determinstic. Instead, give SCEV objects an arbitrary sequence number. llvm-svn: 105548
-
Dan Gohman authored
that the operands are sorted. llvm-svn: 105546
-
Bill Wendling authored
the operands. llvm-svn: 105545
-
Dan Gohman authored
llvm-svn: 105544
-
Dan Gohman authored
llvm-svn: 105542
-
Jim Grosbach authored
llvm-svn: 105541
-
Dan Gohman authored
scrounging through SCEVUnknown contents and SCEVNAryExpr operands; instead just do a simple deterministic comparison of the precomputed hash data. Also, since this is more precise, it eliminates the need for the slow N^2 duplicate detection code. llvm-svn: 105540
-
Bill Wendling authored
encapsulation to force the users of these classes to know about the internal data structure of the Operands structure. It also can lead to errors, like in the MSIL writer. llvm-svn: 105539
-
- Jun 05, 2010
-
-
Kenneth Uildriks authored
Partial specialization was not checking the callsite to make sure it was using the same constants as the specialization, leading to calls to the wrong specialization. Patch by Takumi Nakamura\! llvm-svn: 105528
-
Duncan Sands authored
llvm-svn: 105527
-
Chris Lattner authored
In file included from X86InstrInfo.cpp:16: X86GenInstrInfo.inc:2789: error: integer constant is too large for 'long' type X86GenInstrInfo.inc:2790: error: integer constant is too large for 'long' type X86GenInstrInfo.inc:2792: error: integer constant is too large for 'long' type X86GenInstrInfo.inc:2793: error: integer constant is too large for 'long' type X86GenInstrInfo.inc:2808: error: integer constant is too large for 'long' type X86GenInstrInfo.inc:2809: error: integer constant is too large for 'long' type X86GenInstrInfo.inc:2816: error: integer constant is too large for 'long' type X86GenInstrInfo.inc:2817: error: integer constant is too large for 'long' type llvm-svn: 105524
-
Bruno Cardoso Lopes authored
yet, only assembly encoding support. llvm-svn: 105521
-
Dale Johannesen authored
unless using -arm-tail-calls. llvm-svn: 105515
-
Dan Gohman authored
llvm-svn: 105514
-