Chris Lattner
45719ee85d
Eliminate setType method
...
Now the only way to set the type of a value is in the ctor for an object
llvm-svn: 3646
2002-09-10 15:26:27 +00:00
Chris Lattner
fe500386d3
Finish up the isa/cast/dyn_cast section
...
llvm-svn: 3645
2002-09-10 15:20:46 +00:00
Chris Lattner
4184bcc701
* Clean up code a little bit
...
* Fix bug: test/Regression/Transforms/IndVarsSimplify/2002-09-09-PointerIndVar.ll
llvm-svn: 3644
2002-09-10 05:24:05 +00:00
Chris Lattner
a6a5335197
Run indvars tests
...
llvm-svn: 3643
2002-09-10 04:55:36 +00:00
Chris Lattner
df422ba2b9
Add new testcase for broken indvars case
...
llvm-svn: 3642
2002-09-10 04:54:44 +00:00
Chris Lattner
80a2568f9b
Fix typeo in assertion message
...
llvm-svn: 3641
2002-09-10 04:52:59 +00:00
Chris Lattner
e103d178c5
Hack unneccesary now that shifts of pointers are no longer legal!
...
llvm-svn: 3640
2002-09-10 03:50:54 +00:00
Chris Lattner
4e7f7c0f30
Write most of the isa, cast, dyn_cast section. It's not done yet though.
...
llvm-svn: 3639
2002-09-10 00:39:05 +00:00
Chris Lattner
1f41925300
Do not allow adds of pointer types, or many other operations on pointer types.
...
llvm-svn: 3638
2002-09-09 20:26:04 +00:00
Chris Lattner
ff16f07017
Disallow creation of pointer typed shift instructions
...
llvm-svn: 3637
2002-09-09 20:25:21 +00:00
Chris Lattner
7e03b6ee33
* Write the prose for the Basic Inspection and Traversal Routines section
...
* Fix some minor problems with < and &
* Add links to later parts of the document for classes
llvm-svn: 3636
2002-09-09 19:58:18 +00:00
Joel Stanley
5d79df728a
*** empty log message ***
...
llvm-svn: 3635
2002-09-09 16:29:58 +00:00
Joel Stanley
0b2b897cdc
- Made distinction between object->iterator and iterator->object
...
conversion more clear.
- Added content to "Iterating over Instructions in a Function"
section.
llvm-svn: 3634
2002-09-09 15:50:33 +00:00
Vikram S. Adve
d50fb11d18
Silly bug fix: Machine code vector could be empty for a no-op cast instruction,
...
e.g., cast double to double.
llvm-svn: 3633
2002-09-09 14:54:21 +00:00
Chris Lattner
e40840b26b
Clean up the isa section stub. It should not be listed twice
...
llvm-svn: 3632
2002-09-09 05:53:21 +00:00
Chris Lattner
6755aa133d
Stub out another couple sections that it looks like 426's MP1 will really
...
need.
llvm-svn: 3631
2002-09-09 05:49:39 +00:00
Chris Lattner
a818d92195
Fix minor typo
...
llvm-svn: 3630
2002-09-09 03:48:46 +00:00
Chris Lattner
acb1825937
Testcase no longer applicable since shifts of pointers are no longer allowed
...
llvm-svn: 3629
2002-09-09 03:43:09 +00:00
Chris Lattner
23ecec4320
Eliminate multiply of pointer type
...
llvm-svn: 3628
2002-09-09 03:42:14 +00:00
Chris Lattner
5f00d66cc3
Factor silly code duplication out
...
llvm-svn: 3627
2002-09-08 21:47:54 +00:00
Chris Lattner
b8bba6f765
Fix Bug: test/Regression/Transforms/InstCombine/2002-09-08-PointerShiftBug.ll
...
llvm-svn: 3626
2002-09-08 21:39:07 +00:00
Chris Lattner
aae5959902
New testcase for a bug identified by Vikram
...
llvm-svn: 3625
2002-09-08 21:37:49 +00:00
Chris Lattner
74946507fc
Make sure the leakdetector is told about temporary Phi nodes also, so it doesn't
...
erroneously report them as leaks
llvm-svn: 3624
2002-09-08 21:19:29 +00:00
Chris Lattner
16d4c60600
Inform the memory leak detector that TmpInstruction objects should not be
...
subject to memory leak checking.
llvm-svn: 3623
2002-09-08 21:08:43 +00:00
Chris Lattner
d85566e59a
Move TmpInstruction ctor to InstrSelection.cpp file
...
llvm-svn: 3622
2002-09-08 21:07:51 +00:00
Chris Lattner
ed6504b1eb
Enable "garbage detection" of LLVM objects. Check for leaks after running
...
every pass.
llvm-svn: 3621
2002-09-08 19:00:07 +00:00
Chris Lattner
184b298edc
Enable "garbage detection" of LLVM objects. Now users should be obnoxious
...
warnings. If they accidentally leak LLVM Value's.
llvm-svn: 3620
2002-09-08 18:59:35 +00:00
Chris Lattner
bdb147c373
Minor simplification
...
llvm-svn: 3619
2002-09-08 18:55:04 +00:00
Chris Lattner
4f986cebfd
Checkin initial support for automatic memory leak detection routines
...
llvm-svn: 3618
2002-09-08 18:51:16 +00:00
Chris Lattner
57c6a2123d
Checkin initial support for automatic memory leak detection routines
...
llvm-svn: 3617
2002-09-08 18:51:12 +00:00
Chris Lattner
30214c23aa
* Add capability to recognize alias properties of the following common cases:
...
- A[c1] cannot alias A[c2] where constants c1 != c2
- A[i] cannot alias B[j] if A & B are provably different arrays
This should help out array based codes. For example, from bzip2 from spec,
3 additional loads can be GCSE'd, and _21_ additional loads can be LICMd due
to this change.
In a test example from the Spec GAP benchmark (vecffe.c), this change allows
_52_ additional loads to be GCSE'd and _224_ additional LICM'd loads.
Not bad for such a simple change. Other testcases show no change at all
because they just don't use arrays. Not too suprising there.
llvm-svn: 3616
2002-09-08 18:45:18 +00:00
Chris Lattner
3ea7da13bb
New testcase that tests for array pointer analysis type stuff
...
llvm-svn: 3615
2002-09-08 18:08:36 +00:00
Chris Lattner
1567ab4059
Fix bug in testcase now that load-vn is not built into gcse
...
llvm-svn: 3614
2002-09-07 22:50:41 +00:00
Chris Lattner
439f5d5ef7
Fix broken test
...
llvm-svn: 3613
2002-09-07 22:48:30 +00:00
Chris Lattner
340182e523
Test commit
...
llvm-svn: 3612
2002-09-07 05:33:45 +00:00
Joel Stanley
ad37a452ce
*** empty log message ***
...
llvm-svn: 3611
2002-09-06 23:42:40 +00:00
Joel Stanley
ed8bfd97f5
Fixed typos and added </>/& tags where appropriate
...
llvm-svn: 3610
2002-09-06 23:05:12 +00:00
Chris Lattner
f9d779ae66
* Fix a couple more <>&'s
...
* Correct an extremely minor technical point about a deprecated interface.
llvm-svn: 3609
2002-09-06 22:51:10 +00:00
Chris Lattner
7bf5b1d17a
Minor fixes html type fixes: & -> & > -> > etc.
...
Hopefully permission thing works this time.
llvm-svn: 3608
2002-09-06 22:12:58 +00:00
Chris Lattner
32b15d908d
Minor fix, test that web autoupdate works for people non-chris
...
llvm-svn: 3607
2002-09-06 22:09:21 +00:00
Joel Stanley
64cfdbb8a0
Added subsections to 'Basic Inspection and Traversal Routines':
...
* Iterating over the BasicBlocks in a Function
* Iterating over the Instructions in a BasicBlock
* Turning an iterator into a class pointer
* Finding call sites: a more complex example
llvm-svn: 3606
2002-09-06 21:55:13 +00:00
Chris Lattner
9ed7aef651
Move code out of header files into .cpp files to make future changes easier
...
llvm-svn: 3605
2002-09-06 21:33:15 +00:00
Chris Lattner
809375647d
* Clean up some comments
...
* Move code out of header file to .cpp files, to make future changes easier
* Add arguments to classes so that they can be automatically inserted into their
parent structure upon creation.
llvm-svn: 3604
2002-09-06 21:31:57 +00:00
Chris Lattner
88cb597cbc
Fix script due to new www/ top level directory
...
llvm-svn: 3603
2002-09-06 21:04:36 +00:00
Chris Lattner
b6aae148d2
Remove obsolete script
...
llvm-svn: 3602
2002-09-06 21:04:22 +00:00
Chris Lattner
43a240e346
* Clean up indentation a bit
...
* Fix broken comments (copy and pasto)
* Remove irrelevant comment
* Add extra argument to function that causes it to get inserted into a module
automatically.
llvm-svn: 3601
2002-09-06 20:47:31 +00:00
Chris Lattner
6213ae0028
* Remove extraneous #includes
...
* Add extra argument to Function ctor to allow automatic insertion into module
llvm-svn: 3600
2002-09-06 20:46:32 +00:00
Chris Lattner
1871472e14
Initial checkin of Correlated Expression Elimination Pass
...
llvm-svn: 3599
2002-09-06 18:41:55 +00:00
Chris Lattner
c70222dc15
* No longer need to run die after instcombine
...
* Run new correlated expressions pass
* Simplify the CFG (removing dead blocks, merging blocks, eliminating branches
on constant booleans, etc) after correlated exprs pass.
llvm-svn: 3598
2002-09-06 18:41:33 +00:00
Chris Lattner
1ff9162127
Include stub for correlated expression elimination pass
...
llvm-svn: 3597
2002-09-06 18:39:29 +00:00