| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
| |
llvm-svn: 74289
|
| |
|
|
|
|
|
|
| |
instruction. That instruction cannot write the flags so it should use T2I instead of T2sI.
Also, added a pattern for the thumb-2 MOV of shifted immediate since that can encode immediates not encodable by the 16-bit immediate.
llvm-svn: 74288
|
| |
|
|
| |
llvm-svn: 74282
|
| |
|
|
|
|
| |
looking for duplicates.
llvm-svn: 74276
|
| |
|
|
|
|
|
|
|
| |
test suite. Remove documentation for --with-f2c, which
is no longer supported. Remove information about obtaining
tcl/expect, which ship with Mac OS X by default since
10.4.
llvm-svn: 74271
|
| |
|
|
| |
llvm-svn: 74255
|
| |
|
|
| |
llvm-svn: 74249
|
| |
|
|
|
|
|
| |
an invoke instruction, since the value isn't really live across that
edge.
llvm-svn: 74242
|
| |
|
|
|
|
| |
bit def is not used.
llvm-svn: 74228
|
| |
|
|
| |
llvm-svn: 74223
|
| |
|
|
| |
llvm-svn: 74218
|
| |
|
|
| |
llvm-svn: 74211
|
| |
|
|
| |
llvm-svn: 74208
|
| |
|
|
| |
llvm-svn: 74206
|
| |
|
|
|
|
| |
SBCS / RSCS.
llvm-svn: 74200
|
| |
|
|
| |
llvm-svn: 74150
|
| |
|
|
| |
llvm-svn: 74141
|
| |
|
|
|
|
|
| |
- Includes some DG tests in test/MC/AsmParser, which are rather primitive since
we don't have a -verify mode yet.
llvm-svn: 74139
|
| |
|
|
| |
llvm-svn: 74121
|
| |
|
|
| |
llvm-svn: 74112
|
| |
|
|
|
|
|
|
|
| |
computations in loops with multiple exits.
Adjust the testcase for PR4436 so that the relevant portion isn't
optimized away.
llvm-svn: 74073
|
| |
|
|
|
|
|
|
| |
terminator, instead of after the last phi. This fixes a bug
exposed by ScalarEvolution analyzing more kinds of loops.
This fixes PR4436.
llvm-svn: 74072
|
| |
|
|
| |
llvm-svn: 74068
|
| |
|
|
|
|
| |
across multiple registers (e.g. two i64 operands in 32-bit mode).
llvm-svn: 74053
|
| |
|
|
| |
llvm-svn: 74049
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
trip counts in more cases.
Generalize ScalarEvolution's isLoopGuardedByCond code to recognize
And and Or conditions, splitting the code out into an
isNecessaryCond helper function so that it can evaluate Ands and Ors
recursively, and make SCEVExpander be much more aggressive about
hoisting instructions out of loops.
test/CodeGen/X86/pr3495.ll has an additional instruction now, but
it appears to be due to an arbitrary register allocation difference.
llvm-svn: 74048
|
| |
|
|
| |
llvm-svn: 74016
|
| |
|
|
| |
llvm-svn: 73987
|
| |
|
|
|
|
| |
different for ppc; add another version of the test.
llvm-svn: 73983
|
| |
|
|
|
|
|
|
|
|
| |
generating LLVM IR; it is correct in the code as written
to use 8-byte-aligned operations to copy Key in bar. Formerly
the gcc inliner was run, now it isn't. I don't think it's
possible to preserve this as a pure FE test. Adding -O2 lets
the llvm optimizers get rid of the 8-byte-aligned stores, at least.
llvm-svn: 73981
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
generated code was apparently doing stores directly into the return value
aggregate; now, it's doing a copy from a compiler-generated static object.
That object is initialized using [4 x i8] which breaks the test. I believe
this change preserves the original point of the test.
Of course it would be better for the code to do stores directly into the
return aggregate, but that is not what happens at -O0; the llvm optimizers
seem to do that on x86 but not on ppc32, possibly because of the explicit
padding (which is unavoidable). I think it must have been being done by
a gcc optimizer pass before.
llvm-svn: 73972
|
| |
|
|
|
|
| |
sides is CouldNotCompute, the resulting exact count must be CouldNotCompute.
llvm-svn: 73920
|
| |
|
|
|
|
|
| |
This is still a work in progress but most of the NEON instruction set
is supported.
llvm-svn: 73919
|
| |
|
|
|
|
| |
conservatively correctly, instead of aborting.
llvm-svn: 73908
|
| |
|
|
| |
llvm-svn: 73902
|
| |
|
|
|
|
| |
caller-saved register.
llvm-svn: 73901
|
| |
|
|
|
|
| |
being updated has already been coalesced.
llvm-svn: 73898
|
| |
|
|
| |
llvm-svn: 73893
|
| |
|
|
|
|
|
|
| |
std::pair<double, float*>
is 16 bytes on darwin-powerpc, but not always.
See testcase for full weirdness.
llvm-svn: 73874
|
| |
|
|
|
|
|
|
|
| |
blocks, and also exit blocks with multiple conditions (combined
with (bitwise) ands and ors). It's often infeasible to compute an
exact trip count in such cases, but a useful upper bound can often
be found.
llvm-svn: 73866
|
| |
|
|
|
|
|
|
| |
overflow when computing a integer division to round up.
Thanks to Nick Lewycky for noticing this!
llvm-svn: 73862
|
| |
|
|
|
|
| |
Handle FpSET_ST0_80 being used when ST0 is still alive.
llvm-svn: 73850
|
| |
|
|
| |
llvm-svn: 73839
|
| |
|
|
| |
llvm-svn: 73835
|
| |
|
|
|
|
|
|
|
|
|
|
| |
a global with that gets printed with the :mem modifier. All operands to lea's
should be handled with the lea32mem operand kind, and this allows the TLS stuff
to do this. There are several better ways to do this, but I went for the minimal
change since I can't really test this (beyond make check).
This also makes the use of EBX explicit in the operand list in the 32-bit,
instead of implicit in the instruction.
llvm-svn: 73834
|
| |
|
|
| |
llvm-svn: 73832
|
| |
|
|
| |
llvm-svn: 73831
|
| |
|
|
| |
llvm-svn: 73816
|
| |
|
|
| |
llvm-svn: 73808
|
| |
|
|
|
|
|
|
|
|
| |
SCEVUnknowns with identical Instructions to be equal. This allows
it to analze cases such as the attached testcase, where the front-end
has cloned the loop controlling expression. Along with r73805, this
lets IndVarSimplify eliminate all the sign-extend casts in the
loop in the attached testcase.
llvm-svn: 73807
|