| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
GR32_ABCD, and GR64_ABCD, respectively, to help describe them.
llvm-svn: 70210
|
| |
|
|
| |
llvm-svn: 70209
|
| |
|
|
| |
llvm-svn: 70197
|
| |
|
|
|
|
|
|
|
|
|
|
| |
another stub, but then never calling the jitted function) can cause the JIT to
leave a stub in place. Judging by the comments this is a known deficiency, so
we're just not going to use AssertingVH for the StubToFunctionTy map.
Also shorten some lines longer than 80 columns.
This fixes the "make check" failure with ocaml on x86-64 linux.
llvm-svn: 70185
|
| |
|
|
|
|
|
| |
the trunc is directly replaced with the smaller load, so don't
try to create a new sext node. This fixes PR4050.
llvm-svn: 70179
|
| |
|
|
| |
llvm-svn: 70176
|
| |
|
|
|
|
|
|
|
| |
state out of the BitstreamReader class into a BitstreamCursor class.
Doing this allows the client to have multiple cursors into the same
file, each with potentially different live block stacks and
abbreviation records.
llvm-svn: 70157
|
| |
|
|
|
|
| |
types. Also adding a test case to check the indices type allowed into struct.
llvm-svn: 70134
|
| |
|
|
| |
llvm-svn: 70080
|
| |
|
|
|
|
|
|
|
|
|
| |
The real fix for this whole mess is to require the operand of the
alias to be a *GlobalValue* (not a general constant, including
constant exprs) but allow the operand and the alias type to be
unrelated.
This fixes PR4066
llvm-svn: 70079
|
| |
|
|
| |
llvm-svn: 70069
|
| |
|
|
|
|
| |
patch by Jeff Yasskin!
llvm-svn: 70058
|
| |
|
|
|
|
| |
Nicolas Capens!
llvm-svn: 70057
|
| |
|
|
|
|
| |
using EXTRACT_ELEMENT into a utility function.
llvm-svn: 70056
|
| |
|
|
| |
llvm-svn: 70054
|
| |
|
|
|
|
|
| |
into unsigned ones when the operands are known to have the same
sign bit value.
llvm-svn: 70053
|
| |
|
|
| |
llvm-svn: 70052
|
| |
|
|
|
|
| |
common, but indvars shouldn't crash on them. This fixes PR4054.
llvm-svn: 70051
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Path.cpp:59: warning: case label value exceeds maximum value for type
magic[0] is a (signed) char, but some case values are unsigned (e.g. 0xde).
When magic[0] was 0xde, the switch has taken the default branch instead of case
0xde branch.
Apparently this was the behaviour with older versions of gcc too, but not with g++.
Now g++-4.4 behaves as gcc, and ignores unsigned case values out of range signed
range.
llvm-svn: 70038
|
| |
|
|
|
|
| |
physical sub-register live interval. When coalescer is merging in clobbered virtaul register live interval into a physical register live interval, give each virtual register val# a separate val# in the physical register live interval. Otherwise, the coalescer would have lost track of the definitions information it needs to make correct coalescing decisions.
llvm-svn: 70026
|
| |
|
|
|
|
| |
f64 types. This is not used for anything yet.
llvm-svn: 70006
|
| |
|
|
|
|
|
|
| |
This particular one is undefined behavior (although this
isn't related to the crash), so it will no longer do it
at compile time, which seems better.
llvm-svn: 69990
|
| |
|
|
|
|
|
| |
between registers and the stack may be required with the APCS ABI, but it
isn't tied to using a particular version of the ARM architecture.
llvm-svn: 69978
|
| |
|
|
|
|
|
|
|
| |
chained and "flagged" together. I also made a few changes to handle the
chain and flag values more consistently. I found these problems by
inspection so I'm not aware of anything that breaks because of them
(thus no testcase).
llvm-svn: 69977
|
| |
|
|
|
|
|
| |
should be bit-converted to i32, it is sufficient to list only i32 in
subsequent definitions.
llvm-svn: 69973
|
| |
|
|
|
|
| |
very elegant, but neither is the tls specification :-(
llvm-svn: 69968
|
| |
|
|
| |
llvm-svn: 69967
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
ISD::VECTOR_SHUFFLE now stores an array of integers representing the shuffle
mask internal to the node, rather than taking a BUILD_VECTOR of ConstantSDNodes
as the shuffle mask. A value of -1 represents UNDEF.
In addition to eliminating the creation of illegal BUILD_VECTORS just to
represent shuffle masks, we are better about canonicalizing the shuffle mask,
resulting in substantially better code for some classes of shuffles.
A clean up of x86 shuffle code, and some canonicalizing in DAGCombiner is next.
llvm-svn: 69952
|
| |
|
|
|
|
|
|
| |
use ISD::EXTRACT_ELEMENT. SelectionDAG has a special fast-path for
the cast of an EXTRACT_ELEMENT with a BUILD_PAIR operand, for the
common case.
llvm-svn: 69948
|
| |
|
|
| |
llvm-svn: 69946
|
| |
|
|
|
|
| |
utility function.
llvm-svn: 69937
|
| |
|
|
|
|
|
| |
but this change makes the code more general and easier to adapt for
new purposes.
llvm-svn: 69935
|
| |
|
|
| |
llvm-svn: 69934
|
| |
|
|
| |
llvm-svn: 69919
|
| |
|
|
| |
llvm-svn: 69918
|
| |
|
|
|
|
|
|
|
|
|
| |
with the persistent insertion point, and change IndVars to make
use of it. This fixes a bug where IndVars was holding on to a
stale insertion point and forcing the SCEVExpander to continue to
use it.
This fixes PR4038.
llvm-svn: 69892
|
| |
|
|
|
|
| |
an insn from beginnin to find out the banksel operand.
llvm-svn: 69883
|
| |
|
|
|
|
| |
whitespace in the same file.
llvm-svn: 69870
|
| |
|
|
|
|
|
| |
memory operand tuples. This doesn't ever come up in normal
code however.
llvm-svn: 69848
|
| |
|
|
| |
llvm-svn: 69844
|
| |
|
|
| |
llvm-svn: 69842
|
| |
|
|
| |
llvm-svn: 69836
|
| |
|
|
| |
llvm-svn: 69816
|
| |
|
|
| |
llvm-svn: 69809
|
| |
|
|
|
|
|
|
|
|
|
| |
instructions in order to avoid inserting new ones. However, if
the cast instruction is the SCEVExpander's InsertPt, this
causes subsequently emitted instructions to be inserted near
the cast, and not at the location of the original insert point.
Fix this by adjusting the insert point in such cases.
This fixes PR4009.
llvm-svn: 69808
|
| |
|
|
|
|
| |
to better handle inserting instructions at the end of a block.
llvm-svn: 69807
|
| |
|
|
|
|
| |
The address of data frame for function can be obtained by subtracting 2 from the function begin label.
llvm-svn: 69801
|
| |
|
|
|
|
|
|
| |
the predecessors themselves. This halves the time
to optimize the testcase, beyond what my previous patch did.
llvm-svn: 69792
|
| |
|
|
|
|
| |
testcase from PR3549. More improvements to come.
llvm-svn: 69788
|
| |
|
|
| |
llvm-svn: 69752
|