| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
| |
the very unlikely case that someone passes an integer > i64 to strchr.
llvm-svn: 115144
|
| |
|
|
| |
llvm-svn: 115116
|
| |
|
|
| |
llvm-svn: 115111
|
| |
|
|
| |
llvm-svn: 115095
|
| |
|
|
| |
llvm-svn: 115091
|
| |
|
|
| |
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: 110181
|
| |
|
|
| |
llvm-svn: 109103
|
| |
|
|
| |
llvm-svn: 109092
|
| |
|
|
| |
llvm-svn: 109045
|
| |
|
|
| |
llvm-svn: 107637
|
| |
|
|
| |
llvm-svn: 107278
|
| |
|
|
| |
llvm-svn: 106731
|
| |
|
|
|
|
| |
convention with a new call with a different calling convention.
llvm-svn: 106134
|
| |
|
|
|
|
|
| |
The memcmp will be optimized further and even the pathological case
'strstr(x, "x") == x' generates optimal code now.
llvm-svn: 106097
|
| |
|
|
| |
llvm-svn: 106047
|
| |
|
|
| |
llvm-svn: 104692
|
| |
|
|
| |
llvm-svn: 104648
|
| |
|
|
|
|
|
| |
Probably the best way to know that all getOperand() calls have been handled
is to replace that API instead of updating.
llvm-svn: 101579
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
with a fix for self-hosting
rotate CallInst operands, i.e. move callee to the back
of the operand array
the motivation for this patch are laid out in my mail to llvm-commits:
more efficient access to operands and callee, faster callgraph-construction,
smaller compiler binary
llvm-svn: 101465
|
| |
|
|
| |
llvm-svn: 101434
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
with a fix
rotate CallInst operands, i.e. move callee to the back
of the operand array
the motivation for this patch are laid out in my mail to llvm-commits:
more efficient access to operands and callee, faster callgraph-construction,
smaller compiler binary
llvm-svn: 101397
|
| |
|
|
| |
llvm-svn: 101368
|
| |
|
|
|
|
|
|
|
|
| |
of the operand array
the motivation for this patch are laid out in my mail to llvm-commits:
more efficient access to operands and callee, faster callgraph-construction,
smaller compiler binary
llvm-svn: 101364
|
| |
|
|
|
|
|
| |
Added support for address spaces and added a isVolatile field to memcpy, memmove, and memset,
e.g., llvm.memcpy.i32(i8*, i8*, i32, i32) -> llvm.memcpy.p0i8.p0i8.i32(i8*, i8*, i32, i32, i1)
llvm-svn: 100304
|
| |
|
|
| |
llvm-svn: 100199
|
| |
|
|
|
|
|
| |
Added support for address spaces and added a isVolatile field to memcpy, memmove, and memset,
e.g., llvm.memcpy.i32(i8*, i8*, i32, i32) -> llvm.memcpy.p0i8.p0i8.i32(i8*, i8*, i32, i32, i1)
llvm-svn: 100191
|
| |
|
|
| |
llvm-svn: 99948
|
| |
|
|
|
|
|
|
|
| |
memmove, and memset,
e.g., llvm.memcpy.i32(i8*, i8*, i32, i32) -> llvm.memcpy.p0i8.p0i8.i32(i8*, i8*, i32, i32, i1)
A update of langref will occur in a subsequent checkin.
llvm-svn: 99928
|
| |
|
|
| |
llvm-svn: 99418
|
| |
|
|
|
|
| |
optimizations down stream.
llvm-svn: 99282
|
| |
|
|
|
|
| |
Thanks to Duncan for spotting my mistake.
llvm-svn: 98671
|
| |
|
|
| |
llvm-svn: 98663
|
| |
|
|
|
|
|
|
| |
out the remainder of the calls that we should lower in some way and
move the tests to the new correct directory. Fix up tests that are now
optimized more than they were before by -instcombine.
llvm-svn: 97875
|
| |
|
|
|
|
|
|
| |
can be used in more places. Add an argument for the TargetData that
most of them need. Update for the getInt8PtrTy() change. Should be
no functionality change.
llvm-svn: 97844
|
| |
|
|
|
|
| |
>= memset / memcpy / memmove size.
llvm-svn: 97828
|
| |
|
|
|
|
| |
No functionality change.
llvm-svn: 97793
|
| |
|
|
|
|
|
| |
and T->isPointerTy(). Convert most instances of the first form to the second form.
Requested by Chris.
llvm-svn: 96344
|
| |
|
|
|
|
| |
isInteger, we now have isFloatTy and isIntegerTy. Requested by Chris!
llvm-svn: 96223
|
| |
|
|
| |
llvm-svn: 95165
|
| |
|
|
| |
llvm-svn: 95154
|
| |
|
|
|
|
| |
Passed bootstrap and nightly test run here.
llvm-svn: 95145
|
| |
|
|
|
|
| |
don't use TargetData here.
llvm-svn: 95040
|
| |
|
|
| |
llvm-svn: 95036
|
| |
|
|
| |
llvm-svn: 95035
|
| |
|
|
| |
llvm-svn: 95027
|