298797 Commits

Author SHA1 Message Date
Chris Lattner
94dcd411a5 Fix bug: test/Regression/Transforms/LevelRaise/2002-05-02-BadCastElimination.ll
llvm-svn: 2429
2002-05-02 17:37:34 +00:00
Chris Lattner
48a44f7e23 * Add ability to eliminate a bunch of different cascading cast variations
* Allow elimination of getelementptr X, uint 0 (which is a noop)

llvm-svn: 2428
2002-05-02 17:06:02 +00:00
Chris Lattner
90f608c002 Intitial checkin of cast tests
llvm-svn: 2427
2002-05-02 17:01:39 +00:00
Chris Lattner
dff664314a New testcase for bug found by Vikram
llvm-svn: 2426
2002-05-02 16:16:39 +00:00
Chris Lattner
254e086e65 Check another case
llvm-svn: 2424
2002-05-02 15:24:40 +00:00
Chris Lattner
b3e81510d7 Fixed bug: test/Regression/Transforms/Mem2Reg/2002-05-01-ShouldNotPromoteThisAlloca.ll
llvm-svn: 2423
2002-05-01 15:38:23 +00:00
Chris Lattner
65d4dcb6ca New bug testcase
llvm-svn: 2422
2002-05-01 15:33:12 +00:00
Chris Lattner
10120bdff0 Remove unneccesary pass.
llvm-svn: 2421
2002-04-30 20:53:05 +00:00
Chris Lattner
f328577307 Remove unneccesary pass
llvm-svn: 2420
2002-04-30 20:52:49 +00:00
Chris Lattner
12fc22300e New testcase
llvm-svn: 2419
2002-04-30 19:50:47 +00:00
Chris Lattner
cb42906835 Fix problem where subpasses would invalidate all analyses outstanding
llvm-svn: 2418
2002-04-30 18:50:17 +00:00
Chris Lattner
31ba129cbe Add folding rules for mul X, 0 and mul X, 2
llvm-svn: 2417
2002-04-29 22:24:47 +00:00
Chris Lattner
5c9040e0e0 New test cases for mul folding
llvm-svn: 2416
2002-04-29 22:24:24 +00:00
Chris Lattner
7d3253876a Significantly clean up SCCP pass. Now the two classes are merged and in
an anonymous namespace where they belong.

llvm-svn: 2415
2002-04-29 21:26:08 +00:00
Chris Lattner
27eeecbb69 Range insertion now returns an iterator
llvm-svn: 2414
2002-04-29 21:25:34 +00:00
Chris Lattner
f3dee03ba9 Make the range insert operation return an iterator, even though the STL
range insert doesn't

llvm-svn: 2413
2002-04-29 21:23:30 +00:00
Chris Lattner
aa261937c0 These aren't tools
llvm-svn: 2412
2002-04-29 20:29:30 +00:00
Chris Lattner
09bbb5c015 Remove unused files: This is the old induction varaible cannonicalization
pass built on top of interval analysis

llvm-svn: 2411
2002-04-29 20:18:00 +00:00
Chris Lattner
0fb0022f68 Move constant merging pass earlier
Include the SCCP pass in gccas

llvm-svn: 2410
2002-04-29 20:11:38 +00:00
Chris Lattner
767210feb7 Fix for problem when allocating something like this:
malloc(100-i);

llvm-svn: 2409
2002-04-29 20:09:21 +00:00
Chris Lattner
70f274b3a6 Merge Chris's script with the one already checked in
llvm-svn: 2408
2002-04-29 19:11:01 +00:00
Chris Lattner
9c0b187463 Fix #include broken by iMemory.h not including DerivedTypes.h
llvm-svn: 2407
2002-04-29 18:56:45 +00:00
Chris Lattner
70411b074c Add neccesary #include
llvm-svn: 2406
2002-04-29 18:48:55 +00:00
Chris Lattner
15e8f4c012 changes because iMemory.h no longer #includes DerivedTypes.h
This only requires Type.h anyway

llvm-svn: 2405
2002-04-29 18:48:30 +00:00
Chris Lattner
913d18f567 Changes so that iMemory.h doesn't include DerivedTypes.h
llvm-svn: 2404
2002-04-29 18:46:50 +00:00
Chris Lattner
df159af353 Change to allow iMemory.h to avoid including DerivedTypes.h
llvm-svn: 2403
2002-04-29 18:46:22 +00:00
Chris Lattner
8cfc0d5f89 Fix bug: test/Regression/Other/2002-04-29-NameBinding.ll
llvm-svn: 2402
2002-04-29 18:25:33 +00:00
Chris Lattner
ce42e8ac31 Remove InstForest from analysis namespace
llvm-svn: 2401
2002-04-29 18:13:31 +00:00
Chris Lattner
b4de02df67 Eliminate dead global variables
llvm-svn: 2400
2002-04-29 18:13:11 +00:00
Chris Lattner
9550e21152 Remove analysis namespace
llvm-svn: 2399
2002-04-29 18:12:52 +00:00
Chris Lattner
68383d80de New test for broken asm parser
llvm-svn: 2398
2002-04-29 18:12:28 +00:00
Chris Lattner
d5a847057b Eliminate duplicate or unneccesary #include's
llvm-svn: 2397
2002-04-29 17:42:12 +00:00
Chris Lattner
2dfc667a7d Remove broken assertion.
llvm-svn: 2396
2002-04-29 16:20:25 +00:00
Chris Lattner
37104aace8 Add new optional getPassName() virtual function that a Pass can override
to make debugging output a lot nicer.

llvm-svn: 2395
2002-04-29 14:57:45 +00:00
Chris Lattner
e2eb99eb62 Add a new command line option for PassManager using utilities.
Now for llc, gccas, analyze, opt, etc you can specify the -time-passes
command line option that outputs a timing summary report that indicates
how long each pass takes to execute.

llvm-svn: 2394
2002-04-29 04:04:29 +00:00
Chris Lattner
e936e24ca4 Stub functions for timing support
llvm-svn: 2393
2002-04-29 04:02:50 +00:00
Chris Lattner
8d843f6b77 More cleanups
llvm-svn: 2392
2002-04-29 01:58:47 +00:00
Chris Lattner
fc1a433dae Code cleanups
llvm-svn: 2391
2002-04-29 01:22:55 +00:00
Chris Lattner
d0cfbae8c9 Remove dead code
llvm-svn: 2390
2002-04-28 21:57:50 +00:00
Chris Lattner
0ebb7930c9 FIXME removed: malloc/alloca ALWAYS have a size argument
llvm-svn: 2389
2002-04-28 21:57:33 +00:00
Chris Lattner
450bda1a42 Rename functions to be more consistend with other pass constructors
llvm-svn: 2388
2002-04-28 21:45:36 +00:00
Chris Lattner
1d7f38d15e Todo has been implemented, remove it
llvm-svn: 2387
2002-04-28 21:45:02 +00:00
Chris Lattner
f12cc842b3 Tighten up the AnalysisUsage of lots of passes, primarily to correctly indicate whether or not they invalidate the CFGA
llvm-svn: 2386
2002-04-28 21:27:06 +00:00
Chris Lattner
a452f86593 Tighten up the AnalysisUsage of lots of passes, primarily to correctly indicate whether or not they invalidate the CFG
llvm-svn: 2385
2002-04-28 21:26:51 +00:00
Chris Lattner
ee2ff5da74 Move FunctionPass::doesNotModifyCFG to AnalysisUsage::preservesCFG()
llvm-svn: 2384
2002-04-28 21:25:41 +00:00
Chris Lattner
37c8667190 * Add a stub to FunctionPass so that subclasses can declare that they do not
modify the CFG.  It currently does nothing, but will in the future.
* Changes to make the public PassManager.h be MUCH smaller, and devoid of
  implementation details.  Now PassManager is just a Pimpl class that wraps
  PassManagerT<Module>, but lib/VMCore/Pass.cpp is now the only class that
  has to #include PassManagerT.h

llvm-svn: 2383
2002-04-28 20:46:05 +00:00
Chris Lattner
d0e9bd1ab2 Move include/llvm/PassManager.h to lib/VMCore/PassManagerT.h
llvm-svn: 2382
2002-04-28 20:42:50 +00:00
Chris Lattner
63c52f3805 Add #include that was removed from TargetMachine.h
llvm-svn: 2381
2002-04-28 20:40:59 +00:00
Chris Lattner
5cf963e3e0 Use forward decl instead of #include
llvm-svn: 2380
2002-04-28 20:40:25 +00:00
Chris Lattner
50cf8f1871 Include appropriate file
llvm-svn: 2379
2002-04-28 20:40:16 +00:00