Commit Graph

60 Commits

Author SHA1 Message Date
Chris Lattner 9daef352e9 add an argument to allow avoiding deleting phi nodes.
llvm-svn: 21255
2005-04-12 18:52:14 +00:00
Chris Lattner cdb9bfc150 remove all of the various setName implementations, consolidating them into
Value::setName, which is no longer virtual.

llvm-svn: 20464
2005-03-05 19:51:50 +00:00
Chris Lattner ed2fb1cf93 Remove the 2nd argument to Value::setName
llvm-svn: 20458
2005-03-05 19:01:49 +00:00
Chris Lattner ce046ac9c6 add a new method.
llvm-svn: 20293
2005-02-24 02:37:26 +00:00
Chris Lattner 25169caa80 make this more efficient. Scan up to 16 nodes, not the whole list.
llvm-svn: 20289
2005-02-23 16:53:04 +00:00
Chris Lattner cf08c21f2c Reduce the amount of searching this assertion does. On a testcase of mine,
this reduces the time for -simplifycfg in a debug build from 106s to 14.82s

llvm-svn: 20286
2005-02-23 07:09:08 +00:00
Chris Lattner f6c93e36c7 Improve conformance with the Misha spelling benchmark suite
llvm-svn: 19930
2005-01-30 00:09:23 +00:00
Chris Lattner e5c7b9a215 Adjust to ilist changes.
llvm-svn: 19923
2005-01-29 18:41:12 +00:00
Chris Lattner 5d1bc2c408 Adjust to changes in User class.
llvm-svn: 19892
2005-01-29 00:35:33 +00:00
Chris Lattner 8d0b1b2a82 Check in the file I forgot last night, to solve all of the crashes in every
test in the suite.  :(

llvm-svn: 18804
2004-12-11 22:10:29 +00:00
Chris Lattner 02a71e7748 Implement remove/eraseFromParent methods
llvm-svn: 16922
2004-10-11 22:21:39 +00:00
Reid Spencer 7c16caa336 Changes For Bug 352
Move include/Config and include/Support into include/llvm/Config,
include/llvm/ADT and include/llvm/Support. From here on out, all LLVM
public header files must be under include/llvm/.

llvm-svn: 16137
2004-09-01 22:55:40 +00:00
Misha Brukman 2d3fa9e18e Fix #includes of i*.h files => Instructions.h as per PR403
llvm-svn: 15327
2004-07-29 16:53:53 +00:00
Chris Lattner bea7247357 Find bugs sooner rather than later. In this case, don't allow the creation
of instructions that don't have a first-class or void type.

llvm-svn: 14646
2004-07-06 17:44:17 +00:00
Chris Lattner 08d1b9db1e Fix GCC warnings
llvm-svn: 14044
2004-06-05 17:43:52 +00:00
Chris Lattner 708ee9d965 As much as I dislike doing this, it's the only fix for VC8.0 that I can come
up with, even though it's perfectly conformant code.  :(

llvm-svn: 14034
2004-06-05 00:11:27 +00:00
Misha Brukman ede10c9185 Fix retriving parent Function.
llvm-svn: 13001
2004-04-16 17:37:12 +00:00
Misha Brukman 0af4a9c12b Assert if deleting BasicBlock before removing it from Function.
llvm-svn: 12983
2004-04-16 15:47:21 +00:00
Chris Lattner 2be4744c5e Remove obsolete method
llvm-svn: 11302
2004-02-11 01:17:33 +00:00
Chris Lattner bb5f0db8d6 Adjust to the new BB ctor
llvm-svn: 11113
2004-02-04 03:57:50 +00:00
Chris Lattner 9cda4bf8e5 When splitting a basic block, insert the new half immediately after the first
half.

llvm-svn: 11110
2004-02-04 03:21:31 +00:00
Chris Lattner c4c7ea5288 In BasicBlock::splitBasicBlock, just use islist::splice to move the instructions,
instead of a loop that is really inefficient with large basic blocks.

This speeds up the inliner pass on the testcase in PR209 from 13.8s to 2.24s
which still isn't exactly speedy, but is a lot better.  :)

llvm-svn: 11105
2004-02-03 23:11:21 +00:00
Chris Lattner a29600046d Minor cleanups and simplifications
llvm-svn: 10127
2003-11-21 16:52:05 +00:00
Chris Lattner 2af517281d Start using the nicer terminator auto-insertion API
llvm-svn: 10111
2003-11-20 18:25:24 +00:00
Brian Gaeke 960707c335 Put all LLVM code into the llvm namespace, as per bug 109.
llvm-svn: 9903
2003-11-11 22:41:34 +00:00
Chris Lattner 41baa98478 Make code gcc 3.4 clean
llvm-svn: 9719
2003-11-05 05:15:42 +00:00
John Criswell 482202a601 Added LLVM project notice to the top of every C++ source file.
Header files will be on the way.

llvm-svn: 9298
2003-10-20 19:43:21 +00:00
Chris Lattner 64d88bc788 Do not use BasicBlock::succ_iterator
llvm-svn: 8700
2003-09-24 22:03:22 +00:00
Chris Lattner 6d5693566f Allow specifying the name for the newly split basic block
llvm-svn: 8097
2003-08-24 03:41:39 +00:00
Chris Lattner ef8c8332b1 Fix a bug that occurred when removing the last predecessor INTO an
infinite loop

llvm-svn: 5953
2003-04-25 23:14:19 +00:00
Chris Lattner 889f620841 Remove unnecesary &*'s
llvm-svn: 5872
2003-04-23 16:37:45 +00:00
Chris Lattner 98cf1f5d64 - Eliminated the deferred symbol table stuff in Module & Function, it really
wasn't an optimization and it was causing lots of bugs.

llvm-svn: 4779
2002-11-20 18:36:02 +00:00
Chris Lattner 69ce8674b5 - Rename Instruction::First*Op to *OpsBegin, and Num*Ops to *OpsEnd to
reflect the fact that it's a range being defined.

llvm-svn: 4147
2002-10-13 19:39:16 +00:00
Chris Lattner caf5b504a3 Changes to support PHINode::removeIncoming changes
llvm-svn: 4080
2002-10-08 21:36:34 +00:00
Chris Lattner 4dfede8070 - Add new ctor to BasicBlock to allow insertion before any BB, not just at
the end of the function.

llvm-svn: 3934
2002-09-26 05:03:22 +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 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 c678c17211 Avoid warning: control reaches end of non-void function
llvm-svn: 3081
2002-07-25 15:39:05 +00:00
Vikram S. Adve 6e792fca91 Moved MachineCodeForBB to be an annotation on BasicBlock.
llvm-svn: 2818
2002-07-08 22:31:11 +00:00
Chris Lattner 113f4f4609 MEGAPATCH checkin.
For details, See: docs/2002-06-25-MegaPatchInfo.txt

llvm-svn: 2779
2002-06-25 16:13:24 +00:00
Chris Lattner 5cd012d58c Fix bug: test/Regression/Transforms/ADCE/2002-05-23-ZeroArgPHITest.ll
Which contains a description of why this is neccesary.

llvm-svn: 2733
2002-05-23 16:52:34 +00:00
Chris Lattner f7373e4bec Fix bug: test/Regression/Transforms/CFGSimplify/2002-05-21-PHIElimination.ll
llvm-svn: 2694
2002-05-21 19:52:49 +00:00
Chris Lattner d5a847057b Eliminate duplicate or unneccesary #include's
llvm-svn: 2397
2002-04-29 17:42:12 +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 f739fa8541 s/Method/Function
llvm-svn: 2180
2002-04-08 22:03:57 +00:00
Chris Lattner 6e6f5be53d Move include/llvm/ValueHolderImpl.h to lib/VMCore/ValueHolderImpl.h
llvm-svn: 2156
2002-04-08 00:15:29 +00:00
Chris Lattner 4eed0b8390 Fix bug: test/Regression/Other/2002-02-24-InlineBrokePHINodes.ll
llvm-svn: 1798
2002-02-25 00:35:07 +00:00
Chris Lattner 83d485b310 * Pull BasicBlock::pred_* and BasicBlock::succ_* out of BasicBlock.h and into
llvm/Support/CFG.h
* Make pred & succ iterators for intervals global functions
* Add #includes that are now neccesary because BasicBlock.h doesn't include
  InstrTypes.h anymore

llvm-svn: 1750
2002-02-12 22:39:50 +00:00
Chris Lattner 7f74a56e24 Changes to build successfully with GCC 3.02
llvm-svn: 1503
2002-01-20 22:54:45 +00:00
Chris Lattner 3462ae3ad7 Rename ConstPoolVal -> Constant
Rename ConstPool*   -> Constant*
Rename ConstPoolVals.h -> ConstantVals.h

llvm-svn: 1407
2001-12-03 22:26:30 +00:00