| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
llvm-svn: 114750
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit r113632
Conflicts:
cmake/modules/AddLLVM.cmake
llvm-svn: 113819
|
|
|
|
| |
llvm-svn: 113766
|
|
|
|
| |
llvm-svn: 113647
|
|
|
|
| |
llvm-svn: 113632
|
|
|
|
|
|
|
| |
into an inner loop, as the new loop iteration may differ substantially.
This fixes PR8078.
llvm-svn: 113057
|
|
|
|
|
|
|
|
|
| |
I'm sure it is harmless. Original commit message:
If PrototypeValue is erased in the middle of using the SSAUpdator
then the SSAUpdator may access freed memory. Instead, simply pass
in the type and name explicitly, which is all that was used anyway.
llvm-svn: 112810
|
|
|
|
|
|
| |
self host errors on clang-x86-64.
llvm-svn: 112719
|
|
|
|
|
|
|
| |
then the SSAUpdator may access freed memory. Instead, simply pass
in the type and name explicitly, which is all that was used anyway.
llvm-svn: 112699
|
|
|
|
| |
llvm-svn: 112409
|
|
|
|
|
|
|
| |
I'm aware of, aren't maintained, and LVI will be replacing their value.
nlewycky approved this on irc.
llvm-svn: 112355
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
fix: add a flag to MapValue and friends which indicates whether
any module-level mappings are being made. In the common case of
inlining, no module-level mappings are needed, so MapValue doesn't
need to examine non-function-local metadata, which can be very
expensive in the case of a large module with really deep metadata
(e.g. a large C++ program compiled with -g).
This flag is a little awkward; perhaps eventually it can be moved
into the ClonedCodeInfo class.
llvm-svn: 112190
|
|
|
|
|
|
|
| |
except ...", it is causing *massive* performance regressions when building Clang
with itself (-O3 -g).
llvm-svn: 112158
|
|
|
|
|
|
| |
individual ...", which depends on r111922, which I am reverting.
llvm-svn: 112157
|
|
|
|
|
|
| |
instructions, not when remapping modules.
llvm-svn: 112091
|
|
|
|
|
|
|
|
| |
which does the same thing. This eliminates redundant code and
handles MDNodes better. MDNode linking still doesn't fully
work yet though.
llvm-svn: 111941
|
|
|
|
|
|
|
|
| |
that it avoids a lot of unnecessary cloning by avoiding remapping
MDNode cycles when none of the nodes in the cycle actually need to
be remapped. Also it uses the new temporary MDNode mechanism.
llvm-svn: 111922
|
|
|
|
|
|
| |
passes over to the new registration API.
llvm-svn: 111815
|
|
|
|
| |
llvm-svn: 111348
|
|
|
|
| |
llvm-svn: 111344
|
|
|
|
|
|
| |
what it does manually.
llvm-svn: 111248
|
|
|
|
|
|
| |
actually use ScalarEvolution.
llvm-svn: 111124
|
|
|
|
|
|
| |
indirectbr destination lists.
llvm-svn: 111122
|
|
|
|
| |
llvm-svn: 111061
|
|
|
|
|
|
|
|
|
|
|
| |
- Eliminate redundant successors.
- Convert an indirectbr with one successor into a direct branch.
Also, generalize SimplifyCFG to be able to be run on a function entry block.
It knows quite a few simplifications which are applicable to the entry
block, and it only needs a few checks to avoid trouble with the entry block.
llvm-svn: 111060
|
|
|
|
|
|
| |
instead, as an example of what this looks like.
llvm-svn: 110478
|
|
|
|
| |
llvm-svn: 110460
|
|
|
|
| |
llvm-svn: 110410
|
|
|
|
|
|
|
|
| |
address of the static
ID member as the sole unique type identifier. Clean up APIs related to this change.
llvm-svn: 110396
|
|
|
|
| |
llvm-svn: 109589
|
|
|
|
| |
llvm-svn: 109506
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
dependence on DominanceFrontier. Instead, add an explicit DominanceFrontier
pass in StandardPasses.h to ensure that it gets scheduled at the right
time.
Declare that loop unrolling preserves ScalarEvolution, and shuffle some
getAnalysisUsages.
This eliminates one LoopSimplify and one LCCSA run in the standard
compile opts sequence.
llvm-svn: 109413
|
|
|
|
| |
llvm-svn: 109412
|
|
|
|
|
|
| |
build of llvm-gcc.
llvm-svn: 109355
|
|
|
|
|
|
|
| |
it needs to be mapped to refer to the function in the new module, not the old
one. Fixes PR7700.
llvm-svn: 109353
|
|
|
|
| |
llvm-svn: 109132
|
|
|
|
| |
llvm-svn: 109122
|
|
|
|
|
|
| |
A non function local MDNode can have an operand which is cloned by MapValue().
llvm-svn: 109117
|
|
|
|
| |
llvm-svn: 109103
|
|
|
|
| |
llvm-svn: 109098
|
|
|
|
| |
llvm-svn: 109092
|
|
|
|
|
|
| |
for creating and populating NamedMDNodes.
llvm-svn: 109061
|
|
|
|
| |
llvm-svn: 109045
|
|
|
|
| |
llvm-svn: 108967
|
|
|
|
| |
llvm-svn: 108961
|
|
|
|
|
|
| |
a redundant loopsimplify run from the default -O2 sequence.
llvm-svn: 108539
|
|
|
|
| |
llvm-svn: 108522
|
|
|
|
| |
llvm-svn: 108427
|
|
|
|
|
|
|
|
| |
it *changing* the things it replaces, not just causing them
to drop to null. There is no functionality change yet, but
this is required for a subsequent patch.
llvm-svn: 108414
|
|
|
|
|
|
|
|
|
|
| |
"bonus" instruction to be speculatively executed. Add a heuristic to
ensure we're not tripping up out-of-order execution by checking that this bonus
instruction only uses values that were already guaranteed to be available.
This allows us to eliminate the short circuit in (x&1)&&(x&2).
llvm-svn: 108351
|