Chris Lattner
98a6e485b0
* isFirstClassType is now provided by the Type class
...
* Add ReplaceInstWithInst
llvm-svn: 1468
2001-12-14 16:39:22 +00:00
Chris Lattner
553ec6b72f
* add ReplaceInstWithInst
...
* Add support for pointer indexing
* Fix minor bugs that are majorly annoying
llvm-svn: 1467
2001-12-14 16:38:59 +00:00
Chris Lattner
9e6ccdd858
Remove unsized array support
...
llvm-svn: 1466
2001-12-14 16:38:04 +00:00
Chris Lattner
cd134c6891
* Support pointer indexing
...
* Unsized arrays are a thing of the past, remove DoInsertArrayCast family
* Remove cases were we would get into infinite loops because we would insert a cast
which would then be removed, inserting a different cast, ad infinitum...
* Remove some code that should be redundant with ExprTypeConvert code
llvm-svn: 1465
2001-12-14 16:37:52 +00:00
Chris Lattner
1dc9744cc7
Many many changes and bugfixes:
...
* Remove support for unsized arrays
* Add pointer indexing support
* Allow more arbitrary malloc type changes (which are too generous currently
and should be fixed in the future)
* Allow more and better conversions
llvm-svn: 1464
2001-12-14 16:35:53 +00:00
Chris Lattner
315df5b058
The proper prototype for malloc returns a pointer, not an unsized array
...
llvm-svn: 1463
2001-12-14 16:32:20 +00:00
Chris Lattner
6b2dc21b63
* Refactor trace values to work as a proper pass. Before it used to add
...
methods while the pass was running which was a no no. Now it adds the
printf method at pass initialization
* Revamp code to use printf calls instead of the old style print_<type>
calls.
* Simplify code
llvm-svn: 1457
2001-12-14 16:26:05 +00:00
Chris Lattner
488f202019
Assertion could never fail because another one would in it's place. :)
...
llvm-svn: 1449
2001-12-13 00:45:40 +00:00
Chris Lattner
d76171a512
Implement more general conversions for getelementptr instructions
...
llvm-svn: 1432
2001-12-07 04:40:30 +00:00
Chris Lattner
9ae054fd1a
Remove code that is superceeded by code in ExprTypeConvert.cpp
...
llvm-svn: 1431
2001-12-07 04:39:01 +00:00
Chris Lattner
e3b8fb7426
Don't insert scales of 1 :)
...
llvm-svn: 1430
2001-12-07 04:26:02 +00:00
Chris Lattner
e3b57cfe8f
We can do cast-add elimination even on casts that reinterpret
...
llvm-svn: 1427
2001-12-06 18:06:13 +00:00
Chris Lattner
e23b6591f9
Fix bug that caused invalid transformations to be applied
...
llvm-svn: 1426
2001-12-06 18:05:55 +00:00
Chris Lattner
d89106f96b
Actually return true when a change has been made
...
llvm-svn: 1425
2001-12-05 19:41:33 +00:00
Chris Lattner
8ca0f9efd6
Handle more complex array indexing expressions
...
llvm-svn: 1424
2001-12-05 19:41:16 +00:00
Chris Lattner
662a17ba5f
Fix pessimizations on sized arrays
...
llvm-svn: 1423
2001-12-05 19:40:32 +00:00
Chris Lattner
57e64f9985
Fix a few bugs. Fix pessimization handling sized arrays
...
llvm-svn: 1422
2001-12-05 19:39:15 +00:00
Chris Lattner
d1a8ed7d8c
Hrm, don't do debugging output when debugging is off. :(
...
llvm-svn: 1420
2001-12-05 06:40:17 +00:00
Chris Lattner
05fb7c607f
Fixes to type conversion stuff to match induction variables more frequently
...
llvm-svn: 1417
2001-12-05 06:34:00 +00:00
Chris Lattner
7059b60173
Fix a bug introduced by "internal linkage" work.
...
llvm-svn: 1415
2001-12-04 18:01:49 +00:00
Chris Lattner
8ec5ceb110
Fix bugs, don't do external methods which causes segv.
...
llvm-svn: 1414
2001-12-04 08:13:06 +00:00
Chris Lattner
c1b018dcf4
Remove printouts
...
llvm-svn: 1413
2001-12-04 08:12:53 +00:00
Chris Lattner
bd85988c94
Implement induction variable simplification
...
llvm-svn: 1411
2001-12-04 04:32:29 +00:00
Chris Lattner
c4a5815033
Renamed inst_const_iterator -> const_inst_iterator
...
Renamed op_const_iterator -> const_op_iterator
Renamed PointerType::getValueType() -> PointerType::getElementType()
llvm-svn: 1408
2001-12-04 00:03:30 +00:00
Chris Lattner
f6b7da2bb5
Rename ConstPoolVal -> Constant
...
Rename ConstPool* -> Constant*
Rename ConstPoolVals.h -> ConstantVals.h
llvm-svn: 1407
2001-12-03 22:26:30 +00:00
Chris Lattner
bcf2df7058
Split the PHINode class out from the iOther.h file into the iPHINode.h file
...
llvm-svn: 1405
2001-12-03 18:02:31 +00:00
Chris Lattner
a337749b35
Initial checkin of indvar stuff
...
llvm-svn: 1404
2001-12-03 17:28:42 +00:00
Chris Lattner
cf360e3fd8
Compile the scalar directory
...
llvm-svn: 1403
2001-12-03 17:28:15 +00:00
Chris Lattner
463cc31132
Create a new #include "Support/..." directory structure to move things
...
from "llvm/Support/..." that are not llvm dependant.
Move files and fix #includes
llvm-svn: 1400
2001-11-27 00:03:19 +00:00
Chris Lattner
7b91b28853
Turn off debug info
...
llvm-svn: 1396
2001-11-26 19:36:58 +00:00
Chris Lattner
84d72f9596
Make strings be internal
...
llvm-svn: 1384
2001-11-26 19:14:33 +00:00
Chris Lattner
2459d65720
Remove debugging output
...
llvm-svn: 1383
2001-11-26 19:14:16 +00:00
Chris Lattner
c56685dca6
Support internal linkage
...
llvm-svn: 1382
2001-11-26 19:14:03 +00:00
Chris Lattner
5753d430a6
Build IPO directory
...
llvm-svn: 1381
2001-11-26 18:59:30 +00:00
Chris Lattner
dce8511222
Implement support for internal methods
...
llvm-svn: 1380
2001-11-26 18:59:18 +00:00
Chris Lattner
4d2046a71e
Include const prop as part of -raise
...
llvm-svn: 1379
2001-11-26 18:58:55 +00:00
Chris Lattner
d10d3f1015
Misc cleanups
...
llvm-svn: 1377
2001-11-26 18:57:38 +00:00
Chris Lattner
8fd567523c
Expose constant propogation of an instruction in a clean way
...
llvm-svn: 1376
2001-11-26 18:57:12 +00:00
Chris Lattner
118f8023f8
Implement DCE of global values
...
llvm-svn: 1360
2001-11-26 18:42:17 +00:00
Chris Lattner
e996313daa
Support array indexing
...
llvm-svn: 1345
2001-11-26 17:00:43 +00:00
Chris Lattner
4694a03e25
Support Composite's, not just structs
...
llvm-svn: 1344
2001-11-26 17:00:13 +00:00
Chris Lattner
ab740485ab
losslessCastableTypes is moved to Type class
...
getStructOffsetType supports array indexing
llvm-svn: 1343
2001-11-26 16:59:47 +00:00
Chris Lattner
c1f0351928
Support selectable structure transformations
...
llvm-svn: 1342
2001-11-26 16:59:10 +00:00
Chris Lattner
98a6ef2594
Support mutation of array indexing
...
llvm-svn: 1341
2001-11-26 16:58:33 +00:00
Chris Lattner
95b74bb24f
Clean up code, implement array indexing stuff
...
llvm-svn: 1340
2001-11-26 16:58:14 +00:00
Chris Lattner
a9084f9746
Implement array indexing reverse engineering
...
llvm-svn: 1339
2001-11-26 16:57:31 +00:00
Vikram S. Adve
44df059d4d
Print incoming arguments and return values.
...
llvm-svn: 1315
2001-11-15 15:00:16 +00:00
Chris Lattner
e19d5b4615
-cleangcc pass now remove type names that are never referenced and type names for pointers to primitive types.
...
llvm-svn: 1312
2001-11-15 04:34:46 +00:00
Chris Lattner
4046596beb
Remove much cruft from the MemAccessInst instruction
...
llvm-svn: 1298
2001-11-14 11:27:58 +00:00
Chris Lattner
f45cb25619
Better heuristics for handling arrays
...
llvm-svn: 1296
2001-11-14 11:02:49 +00:00