Commit Graph

3624 Commits

Author SHA1 Message Date
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 &lt/&gt/&amp 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: & -> &amp; > -> &gt; 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