| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
namespacification.
llvm-svn: 10430
|
| |
|
|
|
|
|
| |
index by using I.getOperand() here. This was failing an assertion on
basically every struct access.
llvm-svn: 10426
|
| |
|
|
|
|
| |
get an error inside the bytecode reader.
llvm-svn: 10415
|
| |
|
|
|
|
| |
BasicAA/2003-12-11-ConstExprGEP.ll
llvm-svn: 10412
|
| |
|
|
|
|
| |
getelementptr's
llvm-svn: 10410
|
| |
|
|
|
|
| |
known problems in the universe.
llvm-svn: 10409
|
| |
|
|
|
|
| |
Add new -print-cfg-only pass
llvm-svn: 10407
|
| |
|
|
|
|
|
|
|
| |
that it needs. This is pretty scary code! This fixes
Regression.Transforms.LevelRaise.2002-07-16-SourceAndDestCrash
Regression.Transforms.LevelRaise.2002-07-31-AssertionFailure
llvm-svn: 10406
|
| |
|
|
| |
llvm-svn: 10400
|
| |
|
|
|
|
| |
This is a partial fix for PR 86
llvm-svn: 10399
|
| |
|
|
| |
llvm-svn: 10398
|
| |
|
|
|
|
| |
is included.
llvm-svn: 10397
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
beginning of the archive member data as an argument.
Get rid of ParseLongFilenameSection(), which is dead.
In ReadArchiveBuffer(), implement support for 4.4BSD/MacOSX long filenames.
This is kind of invasive, because they prepend the long filename to the archive
member data, and then lie about the size. So we have to keep track of the real
size.
llvm-svn: 10392
|
| |
|
|
|
|
| |
warning whenever it sees it.
llvm-svn: 10391
|
| |
|
|
| |
llvm-svn: 10390
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
interpreting them.
Move support for getting the value of a ConstantExpr into
getConstantExprValue(), and add support for the rest of the different
kinds of ConstantExprs. (I don't think I like ConstantExprs!)
This requires separate procedures executeShlInst() and executeShrInst().
Reduce the number of references to TheEE.
Get rid of an old comment mentioning annotations.
Fix exitCalled(), which was crashing the Interpreter. This was a
leftover from the return-value code refactoring.
llvm-svn: 10389
|
| |
|
|
|
|
| |
regression tests.
llvm-svn: 10388
|
| |
|
|
|
|
| |
Thanks for pointing this out John :)
llvm-svn: 10387
|
| |
|
|
| |
llvm-svn: 10386
|
| |
|
|
| |
llvm-svn: 10385
|
| |
|
|
|
|
| |
Fix bug: LowerInvoke/2003-12-10-Crash.llx
llvm-svn: 10382
|
| |
|
|
|
|
| |
This makes LLVM and the generated C code more portable.
llvm-svn: 10377
|
| |
|
|
|
|
|
| |
Reorder #includes
Implement: IndVarsSimplify/2003-12-10-IndVarDeadCode.ll
llvm-svn: 10376
|
| |
|
|
|
|
|
|
| |
the write() system call because it returns 64 bits on Solaris 64 bit,
and an implicit return value of int says it returns 32 bits.
Admittedly, this is a bit of a hack.
llvm-svn: 10375
|
| |
|
|
|
|
| |
Fix bug: LoopSimplify/2003-12-10-ExitBlocksProblem.ll
llvm-svn: 10373
|
| |
|
|
| |
llvm-svn: 10371
|
| |
|
|
| |
llvm-svn: 10370
|
| |
|
|
|
|
| |
efficient too: don't insert a store in every exit block, because a particular block may be exited to more than once by a loop
llvm-svn: 10369
|
| |
|
|
| |
llvm-svn: 10367
|
| |
|
|
|
|
| |
Provide a context module to WriteAsOperand
llvm-svn: 10366
|
| |
|
|
|
|
|
| |
better job, but this is the majority of the work. This implements
LICM/sink*.ll
llvm-svn: 10358
|
| |
|
|
| |
llvm-svn: 10348
|
| |
|
|
|
|
|
| |
should make subsequent changes simpler. This also allows us to hoist vaarg
and vanext instructions
llvm-svn: 10342
|
| |
|
|
|
|
|
| |
Code cleanups
Make LICM::SafeToHoist marginally more efficient
llvm-svn: 10341
|
| |
|
|
|
|
| |
Also make sure to clean up any PHI nodes that are inserted which are pointless.
llvm-svn: 10333
|
| |
|
|
|
|
|
|
| |
We now insert accumulator variables as necessary to eliminate tail recursion
more aggressively. This is still fairly limited, but allows us to transform
fib/factorial, and other functions into nice happy loops. :)
llvm-svn: 10332
|
| |
|
|
| |
llvm-svn: 10321
|
| |
|
|
| |
llvm-svn: 10320
|
| |
|
|
| |
llvm-svn: 10318
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
The only functionality change is that we now implement:
Regression/Transforms/TailCallElim/intervening-inst.ll
Which is really kinda pointless, because it means that trivially dead code
does not interfere with -tce, but trivially dead code probably wouldn't be
around anytime when this pass is run anyway.
The point of including this change it to support other more aggressive
transformations when we have the analysis capabilities to do so.
llvm-svn: 10312
|
| |
|
|
| |
llvm-svn: 10305
|
| |
|
|
|
|
| |
* Transform: free <ty>* (cast <ty2>* X to <ty>*) into free <ty2>* X
llvm-svn: 10303
|
| |
|
|
|
|
|
| |
which never worked itself. The cee pass still doesn't work, but it doesn't use
this method anymore anyway, so eliminate the method.
llvm-svn: 10302
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
on the algorithm for directly computing immediate dominators presented in this
paper:
A Fast Algorithm for Finding Dominators in a Flowgraph
T. Lengauer & R. Tarjan, ACM TOPLAS July 1979, pgs 121-141.
This _substantially_ speeds up construction of all dominator related information.
Post-dominators to follow.
llvm-svn: 10301
|
| |
|
|
|
|
| |
Move method out of generic dominators construction code
llvm-svn: 10299
|
| |
|
|
|
|
|
| |
this point, the second operand must be a physical register (it cannot
be a virtual one).
llvm-svn: 10292
|
| |
|
|
|
|
| |
potential register assignment.
llvm-svn: 10291
|
| |
|
|
| |
llvm-svn: 10290
|
| |
|
|
| |
llvm-svn: 10289
|
| |
|
|
| |
llvm-svn: 10288
|