Commit Graph

266348 Commits

Author SHA1 Message Date
Chris Lattner 50cf8f1871 Include appropriate file
llvm-svn: 2379
2002-04-28 20:40:16 +00:00
Chris Lattner ca14237696 Split ConstantVals.h into Constant.h and Constants.h
llvm-svn: 2378
2002-04-28 19:55:58 +00:00
Chris Lattner aa77eab129 Fix two FIXME's
llvm-svn: 2377
2002-04-28 19:49:58 +00:00
Chris Lattner 06bea32e9e Simplify and update code a bit
llvm-svn: 2376
2002-04-28 19:20:10 +00:00
Chris Lattner b3d1caf947 Eliminate the PromoteInstance class, incorporating it into the PromotePass
class.

llvm-svn: 2375
2002-04-28 19:12:38 +00:00
Chris Lattner 13dbfe5217 Eliminate visited, CurrentValue, and WriteSets as instance variables of
PromoteInstance.  Make them local variables that are passed around as
appropriate.  Especially in the case of CurrentValue, this makes the
code simpler.

llvm-svn: 2374
2002-04-28 18:54:01 +00:00
Chris Lattner ff8a62589c * Fix bug: test/Regression/Transforms/Mem2Reg/2002-03-28-UninitializedVal.ll
* Minor cleanup that was missed in last patch

llvm-svn: 2373
2002-04-28 18:39:46 +00:00
Chris Lattner 421873de24 This huge changeset is a strictly cleanup change
Bugfixes will come in the next revision so that the diff is obvious.

llvm-svn: 2372
2002-04-28 18:27:55 +00:00
Chris Lattner 42ec334ea3 Eliminate the cfg namespace
llvm-svn: 2371
2002-04-28 16:21:53 +00:00
Chris Lattner 78dd56fe62 Eliminate the cfg namespace, moving LoopInfo, Dominators, Interval* classes
to the global namespace

llvm-svn: 2370
2002-04-28 16:21:30 +00:00
Chris Lattner 002958cdbb Remove all contents of the cfg namespace to the global namespace
llvm-svn: 2369
2002-04-28 16:19:42 +00:00
Chris Lattner 138c8a32b5 Remove obsolete namespace from example
llvm-svn: 2368
2002-04-28 16:18:32 +00:00
Chris Lattner 412d277f4a Remove extra unused argument from CheckFailed method
Remove extraneous \n's from assert strings

llvm-svn: 2367
2002-04-28 16:06:24 +00:00
Chris Lattner 9713b840cf The check to see if an external function was marked internal was not reachable!
llvm-svn: 2366
2002-04-28 16:04:26 +00:00
Chris Lattner b81da4b616 Expose the internalize pass.
llvm-svn: 2365
2002-04-28 05:49:53 +00:00
Chris Lattner f0f014a182 Run the internalize pass to mark all functions except main internal when
linking the final program to allow smarter optimizations

llvm-svn: 2364
2002-04-28 05:49:45 +00:00
Chris Lattner ee2e78b86c Be careful not to make "external" function internal
llvm-svn: 2363
2002-04-28 05:48:34 +00:00
Chris Lattner 1b94c007dc Initial checkin of new "Internalize" pass for GCCLD
llvm-svn: 2362
2002-04-28 05:43:27 +00:00
Chris Lattner a454b5b7c5 Minor changes to allow Modules (which are no longer Values) to work
llvm-svn: 2361
2002-04-28 05:14:06 +00:00
Chris Lattner 17a4573d21 Use operator << to print modules
llvm-svn: 2360
2002-04-28 05:13:45 +00:00
Chris Lattner 02260eeabf SymTabValue class incorporated into Function and Module classes.
llvm-svn: 2359
2002-04-28 04:56:59 +00:00
Chris Lattner 97c1e50207 Include an operator<<, to print modules
llvm-svn: 2358
2002-04-28 04:56:28 +00:00
Chris Lattner ccd1df0144 Eliminate use of SymTabValue class
llvm-svn: 2357
2002-04-28 04:55:14 +00:00
Chris Lattner 30ddf7f57f The contents of the SymTabValue class have been incorporated into the
Module and Function classes directly.

llvm-svn: 2356
2002-04-28 04:52:28 +00:00
Chris Lattner 2c8ff6345f * Incorporate the contents of SymTabValue into Function and Module
* Module no longer subclasses Value

llvm-svn: 2355
2002-04-28 04:51:51 +00:00
Chris Lattner f491044d0f Module's are no longer values
llvm-svn: 2354
2002-04-28 04:51:09 +00:00
Chris Lattner 776bfa20a9 Simplify code
Remove unneccesary getID variant for module's

llvm-svn: 2353
2002-04-28 04:50:54 +00:00
Chris Lattner 02deb39dd3 Remove unneccesary #include
llvm-svn: 2352
2002-04-28 04:50:19 +00:00
Chris Lattner 6a1ea6fffc Module's are no longer Value subclasses
llvm-svn: 2351
2002-04-28 04:50:00 +00:00
Chris Lattner 503a3fcb42 Fix signed/unsigned comparison warning
llvm-svn: 2350
2002-04-28 04:49:43 +00:00
Chris Lattner 17e72e9bc3 Remove forward def'ns that are already in Value.h
Do not support output of Modules directly

llvm-svn: 2349
2002-04-28 04:47:33 +00:00
Chris Lattner 5833d481c0 s/Method/Function
llvm-svn: 2348
2002-04-28 04:47:06 +00:00
Chris Lattner 6b0910e99e Module's are no longer Value's.
llvm-svn: 2347
2002-04-28 04:46:29 +00:00
Chris Lattner b5bf1dc8db The interesting contents of SymTabValue were incorporated into Function
llvm-svn: 2346
2002-04-28 04:46:07 +00:00
Chris Lattner 1531f1611c * Module's are no longer Value's
* Incorporate SymTabValue contents into the Module class

llvm-svn: 2345
2002-04-28 04:45:48 +00:00
Chris Lattner 0edd8aca0b Add a forward defn for Module since it's no longer in Value.h
llvm-svn: 2344
2002-04-28 04:45:05 +00:00
Chris Lattner e472ae5df1 * Incorporate the functionality of SymTabValue into Function
* s/Method/Function

llvm-svn: 2343
2002-04-28 04:44:40 +00:00
Chris Lattner df8fcca994 New testcase for GCSE
llvm-svn: 2342
2002-04-28 01:46:36 +00:00
Chris Lattner 17602ba1c7 Test GCSE
llvm-svn: 2341
2002-04-28 01:46:30 +00:00
Chris Lattner 10aa1b64bb Run GCSE as part of gccas.
llvm-svn: 2340
2002-04-28 01:00:15 +00:00
Chris Lattner 9f3b15b8fe Expose new GCSE pass
llvm-svn: 2339
2002-04-28 00:48:17 +00:00
Chris Lattner 1467f64f01 Initial checkin of simple&fast SSA based GCSE algorithm
llvm-svn: 2338
2002-04-28 00:47:11 +00:00
Chris Lattner 99b6f5cac4 Change the Dominator info and LoopInfo classes to keep track of BasicBlock's, not
const BasicBlocks

llvm-svn: 2337
2002-04-28 00:15:57 +00:00
Chris Lattner f998685cd9 s/Method/Function
llvm-svn: 2336
2002-04-27 07:27:19 +00:00
Chris Lattner 8157a90b5d s/Method/Function in classname
llvm-svn: 2335
2002-04-27 06:59:56 +00:00
Chris Lattner 5948d72c9d Remove old file that will never be used
llvm-svn: 2334
2002-04-27 06:57:52 +00:00
Chris Lattner c8e665431b * Rename MethodPass class to FunctionPass
- Rename runOnMethod to runOnFunction
* Transform getAnalysisUsageInfo into getAnalysisUsage
  - Method is now const
  - It now takes one AnalysisUsage object to fill in instead of 3 vectors
    to fill in
  - Pass's now specify which other passes they _preserve_ not which ones
    they modify (be conservative!)
  - A pass can specify that it preserves all analyses (because it never
    modifies the underlying program)
* s/Method/Function/g in other random places as well

llvm-svn: 2333
2002-04-27 06:56:12 +00:00
Chris Lattner 66cfaf1da2 Changes because the Terminator::getSuccessor function now FAILS if successor
IDX is out of range instead of returning null.

llvm-svn: 2332
2002-04-27 03:15:45 +00:00
Chris Lattner e6dd75604e Use the cast<> operator in favor of C style casts
llvm-svn: 2331
2002-04-27 03:14:39 +00:00
Chris Lattner 4feb6f4a31 Change the semantics of getSuccessor to FAIL if an out of range successor # is attempted.
llvm-svn: 2330
2002-04-27 03:14:12 +00:00