| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
into their new header subdirectory: include/llvm/IR. This matches the
directory structure of lib, and begins to correct a long standing point
of file layout clutter in LLVM.
There are still more header files to move here, but I wanted to handle
them in separate commits to make tracking what files make sense at each
layer easier.
The only really questionable files here are the target intrinsic
tablegen files. But that's a battle I'd rather not fight today.
I've updated both CMake and Makefile build systems (I think, and my
tests think, but I may have missed something).
I've also re-sorted the includes throughout the project. I'll be
committing updates to Clang, DragonEgg, and Polly momentarily.
llvm-svn: 171366
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Sooooo many of these had incorrect or strange main module includes.
I have manually inspected all of these, and fixed the main module
include to be the nearest plausible thing I could find. If you own or
care about any of these source files, I encourage you to take some time
and check that these edits were sensible. I can't have broken anything
(I strictly added headers, and reordered them, never removed), but they
may not be the headers you'd really like to identify as containing the
API being implemented.
Many forward declarations and missing includes were added to a header
files to allow them to parse cleanly when included first. The main
module rule does in fact have its merits. =]
llvm-svn: 169131
|
| |
|
|
| |
llvm-svn: 160668
|
| |
|
|
| |
llvm-svn: 138102
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
exposes an initializeMyPassFunction(), which
must be called in the pass's constructor. This function uses static dependency declarations to recursively initialize
the pass's dependencies.
Clients that only create passes through the createFooPass() APIs will require no changes. Clients that want to use the
CommandLine options for passes will need to manually call the appropriate initialization functions in PassInitialization.h
before parsing commandline arguments.
I have tested this with all standard configurations of clang and llvm-gcc on Darwin. It is possible that there are problems
with the static dependencies that will only be visible with non-standard options. If you encounter any crash in pass
registration/creation, please send the testcase to me directly.
llvm-svn: 116820
|
| |
|
|
| |
llvm-svn: 115996
|
| |
|
|
| |
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: 109045
|
| |
|
|
| |
llvm-svn: 106542
|
| |
|
|
|
|
| |
non-zero trip count. Use SmallVector's pop_back_val().
llvm-svn: 92734
|
| |
|
|
| |
llvm-svn: 80766
|
| |
|
|
|
|
|
|
| |
the optimizers about this. For example, a readonly
function with no uses cannot be removed unless it is
also marked nounwind.
llvm-svn: 71071
|
| |
|
|
|
|
|
| |
was causing llvm-gcc to fail to build. I've
verified it bootstraps now; good enough for me.
llvm-svn: 66073
|
| |
|
|
| |
llvm-svn: 59658
|
| |
|
|
| |
llvm-svn: 59012
|
| |
|
|
| |
llvm-svn: 55779
|
| |
|
|
|
|
| |
because, as Eli pointed out, SimplifyCFG already does this.
llvm-svn: 53104
|
| |
|
|
|
|
|
|
|
| |
set.
Also, move large sets and vectors out of instance variables and onto the stack,
and give them more reasonable sizes.
llvm-svn: 53044
|
| |
|
|
|
|
| |
part of PR2509.
llvm-svn: 53038
|
| |
|
|
|
|
| |
with a huge "size" parameter is actually quite inefficient.
llvm-svn: 53034
|
| |
|
|
|
|
|
| |
instance variables so they can be allocated just once, and reuse the worklist
as the dead list as well.
llvm-svn: 52618
|
| |
|
|
| |
llvm-svn: 51680
|
| |
|
|
|
|
|
|
|
| |
the one case that ADCE catches that normal DCE doesn't: non-induction variable
loop computations.
This implementation handles this problem without using postdominators.
llvm-svn: 51668
|
| |
|
|
|
|
| |
safer manner by loop deletion.
llvm-svn: 51182
|
| |
|
|
|
|
|
| |
several things that were neither in an anonymous namespace nor static
but not intended to be global.
llvm-svn: 51017
|
| |
|
|
|
|
|
|
| |
Specifically, introduction of XXX::Create methods
for Users that have a potentially variable number of
Uses.
llvm-svn: 49277
|
| |
|
|
| |
llvm-svn: 45418
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
into alias analysis. This meant updating the API
which now has versions of the getModRefBehavior,
doesNotAccessMemory and onlyReadsMemory methods
which take a callsite parameter. These should be
used unless the callsite is not known, since in
general they can do a better job than the versions
that take a function. Also, users should no longer
call the version of getModRefBehavior that takes
both a function and a callsite. To reduce the
chance of misuse it is now protected.
llvm-svn: 44487
|
| |
|
|
|
|
|
| |
exceptions, so don't turn invokes of them into
calls.
llvm-svn: 44278
|
| |
|
|
|
|
|
|
| |
indexing an empty std::vector.
Updates to all clients.
llvm-svn: 40660
|
| |
|
|
| |
llvm-svn: 37407
|
| |
|
|
| |
llvm-svn: 37403
|
| |
|
|
| |
llvm-svn: 36873
|
| |
|
|
| |
llvm-svn: 36662
|
| |
|
|
|
|
|
| |
Due to darwin gcc bug, one version of darwin linker coalesces
static const int, which defauts PassID based pass identification.
llvm-svn: 36652
|
| |
|
|
| |
llvm-svn: 36632
|
| |
|
|
| |
llvm-svn: 36255
|
| |
|
|
| |
llvm-svn: 36249
|
| |
|
|
| |
llvm-svn: 34219
|
| |
|
|
| |
llvm-svn: 34176
|
| |
|
|
|
|
|
| |
the Transforms library. This reduces debug library size by 132 KB, debug
binary size by 376 KB, and reduces link time for llvm tools slightly.
llvm-svn: 33939
|
| |
|
|
|
|
|
| |
converted, we lose a static initializer. This also allows GCC to emit warnings
about unused statistics.
llvm-svn: 32690
|
| |
|
|
|
|
| |
is 'unsigned'.
llvm-svn: 32279
|
| |
|
|
| |
llvm-svn: 31923
|
| |
|
|
| |
llvm-svn: 29925
|
| |
|
|
| |
llvm-svn: 28664
|
| |
|
|
| |
llvm-svn: 28632
|
| |
|
|
| |
llvm-svn: 25514
|