| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 179866
|
| |
|
|
| |
llvm-svn: 179865
|
| |
|
|
|
|
| |
Fixes PR15791.
llvm-svn: 179859
|
| |
|
|
| |
llvm-svn: 179856
|
| |
|
|
|
|
| |
Patch from Mihail Popa
llvm-svn: 179854
|
| |
|
|
| |
llvm-svn: 179851
|
| |
|
|
| |
llvm-svn: 179850
|
| |
|
|
| |
llvm-svn: 179849
|
| |
|
|
|
|
|
|
|
| |
Thanks to Evgeniy Stepanov for reporting this.
It might be a good idea to add a command iterator abstraction to MachO.h, but
this fixes the bug for now.
llvm-svn: 179848
|
| |
|
|
| |
llvm-svn: 179847
|
| |
|
|
| |
llvm-svn: 179845
|
| |
|
|
|
|
| |
This reverts commit r179836 as it seems to have caused test failures.
llvm-svn: 179840
|
| |
|
|
|
|
|
|
|
|
| |
Adding another CU-wide list, in this case of imported_modules (since they
should be relatively rare, it seemed better to add a list where each element
had a "context" value, rather than add a (usually empty) list to every scope).
This takes care of DW_TAG_imported_module, but to fully address PR14606 we'll
need to expand this to cover DW_TAG_imported_declaration too.
llvm-svn: 179836
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When the SlotIndexes pass was introduced it was intended to support insertion
of code during register allocation. Removal of code was a minor consideration
(and raised the question of what to do about dangling SlotIndex objects pointing
to the erased index), so I opted to keep all indexes around indefinitely and
simply null out those that weren't being used.
Nowadays people are moving more code around (e.g. via HandleMove), which means
more zombie indexes. I want to start killing off indexes when we're done with
them to reclaim the resources they use up.
llvm-svn: 179834
|
| |
|
|
| |
llvm-svn: 179833
|
| |
|
|
| |
llvm-svn: 179830
|
| |
|
|
|
|
|
| |
InstFlag has a default value of 0 and will simplify the VOP3 patterns.
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
llvm-svn: 179829
|
| |
|
|
| |
llvm-svn: 179828
|
| |
|
|
| |
llvm-svn: 179826
|
| |
|
|
| |
llvm-svn: 179825
|
| |
|
|
|
|
| |
arguments in entry BBs.
llvm-svn: 179824
|
| |
|
|
| |
llvm-svn: 179820
|
| |
|
|
|
|
|
| |
If the return type is a pointer and the call returns an integer, then do the
inttoptr convertions. And vice versa.
llvm-svn: 179817
|
| |
|
|
| |
llvm-svn: 179814
|
| |
|
|
|
|
|
| |
AT&T dialect. Test case for r179804 as well.
rdar://13674398 and PR13340.
llvm-svn: 179813
|
| |
|
|
| |
llvm-svn: 179809
|
| |
|
|
|
|
| |
a CU encoding.
llvm-svn: 179808
|
| |
|
|
|
|
|
| |
This seems to cause a stage-2 LLVM compile failure (by crashing TableGen); do
I'm disabling this for now.
llvm-svn: 179807
|
| |
|
|
|
|
|
|
| |
variant/dialect. Addresses a FIXME in the emitMnemonicAliases function.
Use and test case to come shortly.
rdar://13688439 and part of PR13340.
llvm-svn: 179804
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Many PPC instructions have a so-called 'record form' which stores to a specific
condition register the result of comparing the result of the instruction with
zero (always as a signed comparison). For integer operations on PPC64, this is
always a 64-bit comparison.
This implementation is derived from the implementation in the ARM backend;
there are some differences because PPC condition registers are allocatable
virtual registers (although the record forms always use a specific one), and we
look for a matching subtraction instruction after the compare (but before the
first use) in addition to before it.
llvm-svn: 179802
|
| |
|
|
| |
llvm-svn: 179798
|
| |
|
|
|
|
|
|
| |
available.
This pattern started popping up in vectorized min/max reductions.
llvm-svn: 179797
|
| |
|
|
| |
llvm-svn: 179793
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Semantics of parameters named Index and Idx were inconsistent between
"include/llvm/IR/Attributes.h", "lib/IR/AttributeImpl.h" and
"lib/IR/Attributes.cpp": sometimes these were fixed 1-based indexes of IR
parameters (or AttributeSet::ReturnIndex for IR return values or
AttributeSet::FunctionIndex for IR functions), other times they were the
internal slot for storage in the underlying AttributeSetImpl. I renamed usage of
the former to "Index" and usage of the latter to "Slot" ("Slot" was already
being used consistently for the latter in a subset of cases)
Patch by Stephen Lin!
llvm-svn: 179791
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1. Verify::VerifyParameterAttrs in "lib/IR/Verifier.cpp" and
AttrBuilder::removeFunctionOnlyAttrs in "lib/IR/Attributes.cpp" (only called
by Verify::VerifyFunctionAttrs) separately maintained a list of function-only
attribute types. I've consolidated the logic into a new function used for
both cases in "lib/IR/Verifier.cpp", so this logic is in one place (other
than the AsmParser front-end)
2. Various functions in "lib/IR/Verifier.cpp" passed AttributeSet around by
reference needlessly, as it's just a handle to an immutable pimpl body.
Patch by Stephen Lin!
llvm-svn: 179790
|
| |
|
|
| |
llvm-svn: 179789
|
| |
|
|
|
|
| |
limitation that extract is promoted over a cast only if the cast has only one use.
llvm-svn: 179786
|
| |
|
|
| |
llvm-svn: 179785
|
| |
|
|
|
|
| |
it has only 2 uses: one to promote the vector phi in a loop and the other use is an extract operation of one element at a constant location.
llvm-svn: 179783
|
| |
|
|
| |
llvm-svn: 179780
|
| |
|
|
|
|
|
| |
We are still able to handle mixed endian objects by swapping one struct at a
time.
llvm-svn: 179778
|
| |
|
|
| |
llvm-svn: 179775
|
| |
|
|
|
|
|
|
|
|
|
|
| |
In X86FastISel::X86SelectStore(), improperly aligned stores are rejected and
handled by the DAG-based ISel. However, X86FastISel::X86SelectLoad() makes
no such requirement. There doesn't appear to be an x86 architectural
correctness issue with allowing potentially unaligned store instructions.
This patch removes this restriction.
Patch by Jim Stichnot.
llvm-svn: 179774
|
| |
|
|
|
|
|
|
|
|
|
|
| |
A min/max operation is represented by a select(cmp(lt/le/gt/ge, X, Y), X, Y)
sequence in LLVM. If we see such a sequence we can treat it just as any other
commutative binary instruction and reduce it.
This appears to help bzip2 by about 1.5% on an imac12,2.
radar://12960601
llvm-svn: 179773
|
| |
|
|
| |
llvm-svn: 179768
|
| |
|
|
| |
llvm-svn: 179765
|
| |
|
|
| |
llvm-svn: 179764
|
| |
|
|
|
|
| |
Patch by Stephen Lin
llvm-svn: 179763
|
| |
|
|
| |
llvm-svn: 179761
|
| |
|
|
|
|
| |
Fixes PR15748.
llvm-svn: 179757
|