Commit Graph

3510 Commits

Author SHA1 Message Date
Chris Lattner
3cac88ac9e - Change getelementptr instruction to use long indexes instead of uint
indexes for sequential types.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3682 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-11 01:21:33 +00:00
Chris Lattner
106ff4551c - Change getelementptr instruction to use long indexes instead of uint
indexes for sequential types.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3681 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-11 01:21:29 +00:00
Chris Lattner
562219de55 Give better assertion message for error conditions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3680 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-11 01:21:04 +00:00
Chris Lattner
0235fe2b72 Recently changed getelementptr to use 'long' indexes for sequential types
instead of uints.  This adds a translation scheme to be backwards compatible
with old .ll files.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3679 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-11 01:17:27 +00:00
Chris Lattner
dbd35c22e4 Convert index type for getelementptr instruction from uint to long
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3678 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-11 01:16:19 +00:00
Chris Lattner
a98bde53a7 Allocation insts always have one operand
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3677 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-11 00:22:39 +00:00
Chris Lattner
62815d9672 Add convenience ctor to BranchInst
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3676 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 23:54:58 +00:00
Chris Lattner
9531c50c75 Add convenience ctor to BranchInst
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3675 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 23:54:56 +00:00
Chris Lattner
9e6161cfd1 Fix the last of the silly bugs I just introduced. :(
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3674 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 23:46:10 +00:00
Chris Lattner
8606d9924b Fix bugs in previous checkins
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3673 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 23:31:28 +00:00
Chris Lattner
08c2e4838d Fix bug in previous checkin
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3672 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 23:31:12 +00:00
Chris Lattner
f283608f2e Add cannonicalization of shl X, 1 -> add X, X
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3671 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 23:04:09 +00:00
Chris Lattner
dabb94adc1 Check for cannonicalization of shl X, 1 -> add X, X
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3670 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 23:03:10 +00:00
Chris Lattner
533ce5c070 Fix minor problems in previous checkin
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3669 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 22:52:51 +00:00
Chris Lattner
228b14b71e Fix minor problems in previous checkin
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3668 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 22:52:49 +00:00
Chris Lattner
1d3d7114ff Fix config file due to directories changing
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3667 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 22:39:04 +00:00
Chris Lattner
f2d2d0bb13 Clean up code due to auto-insert constructors
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3666 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 22:38:49 +00:00
Chris Lattner
1d608abbc0 Clean up code due to auto-insert constructors
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3665 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 22:38:47 +00:00
Chris Lattner
9afdb2998b Clean up code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3664 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 22:38:06 +00:00
Chris Lattner
1cff96a77c Use explicit ctor
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3663 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 22:37:46 +00:00
Chris Lattner
2b37c03f8c Clean up pointer using testcases
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3662 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 20:04:19 +00:00
Chris Lattner
9a66d5109e Tighten up assertion checking for binary operators, not allowing invalid
instructions to _even be created_.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3661 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 19:57:53 +00:00
Chris Lattner
4a6482ba9c Tighten up error checking in parser, disallowing instructions that f.e.,
add pointers together.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3660 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 19:57:26 +00:00
Chris Lattner
544b0dcd14 Remove a testcase that is irrelevant now, fix a pointer adding testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3659 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 19:55:40 +00:00
Chris Lattner
e29f6a85ee Fix bug: test/Regression/Transforms/LevelRaise/2002-09-10-PointerAdds.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3658 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 19:42:53 +00:00
Chris Lattner
4229be3ce7 New testcase for poitner problem
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3657 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 19:41:57 +00:00
Chris Lattner
2a7c23ef91 Simplify code (somtimes dramatically), by using the new "auto-insert" feature
of instruction constructors.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3656 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 17:04:02 +00:00
Chris Lattner
3ea5cb0df1 Simplify code (somtimes dramatically), by using the new "auto-insert" feature
of instruction constructors.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3655 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 17:03:06 +00:00
Chris Lattner
3bc06b33da Add support for printing constpointerrefs more nicely
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3654 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 15:53:49 +00:00
Chris Lattner
2aa831120c Add capability to insert an instruction into a basic block immediately after
it is created, as part of the ctor call.

Eliminate the GenericBinaryInst class


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3653 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 15:45:53 +00:00
Chris Lattner
6e65cda0ec Remove extra #include
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3652 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 15:43:30 +00:00
Chris Lattner
3a8b0f00e6 Implement support for inserting an instruction into a basic block right when it
is created.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3651 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 15:36:11 +00:00
Chris Lattner
74493a4c6e Clean up indvar printing
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3650 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 15:35:39 +00:00
Chris Lattner
a690c590dc Eliminate the GenericBinaryInst class
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3649 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 15:35:23 +00:00
Chris Lattner
2e9fe0ad09 * Eliminate GenericBinaryInst class
* Allow specifying where to insert a newly created SetCondInst


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3648 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 15:34:41 +00:00
Chris Lattner
226719e3ea Eliminate the GenericBinaryInst class.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3647 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 15:27:31 +00:00
Chris Lattner
b163f1c3e5 Eliminate setType method
Now the only way to set the type of a value is in the ctor for an object


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3646 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 15:26:27 +00:00
Chris Lattner
6b121f1c43 Finish up the isa/cast/dyn_cast section
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3645 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 15:20:46 +00:00
Chris Lattner
5e76140536 * Clean up code a little bit
* Fix bug: test/Regression/Transforms/IndVarsSimplify/2002-09-09-PointerIndVar.ll


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3644 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 05:24:05 +00:00
Chris Lattner
4b635b8316 Run indvars tests
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3643 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 04:55:36 +00:00
Chris Lattner
7a4e86d20e Add new testcase for broken indvars case
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3642 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 04:54:44 +00:00
Chris Lattner
712653908e Fix typeo in assertion message
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3641 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 04:52:59 +00:00
Chris Lattner
1b9029c2f2 Hack unneccesary now that shifts of pointers are no longer legal!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3640 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 03:50:54 +00:00
Chris Lattner
979d9b7a57 Write most of the isa, cast, dyn_cast section. It's not done yet though.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3639 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-10 00:39:05 +00:00
Chris Lattner
1a143aef99 Do not allow adds of pointer types, or many other operations on pointer types.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3638 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-09 20:26:04 +00:00
Chris Lattner
871d2ce690 Disallow creation of pointer typed shift instructions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3637 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-09 20:25:21 +00:00
Chris Lattner
caa5d13cda * 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


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3636 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-09 19:58:18 +00:00
Joel Stanley
d8aabb20e8 *** empty log message ***
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3635 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-09 16:29:58 +00:00
Joel Stanley
e7be6500e7 - Made distinction between object->iterator and iterator->object
conversion more clear.

- Added content to "Iterating over Instructions in a Function"
section.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3634 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-09 15:50:33 +00:00
Vikram S. Adve
ec7f482d90 Silly bug fix: Machine code vector could be empty for a no-op cast instruction,
e.g., cast double to double.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3633 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-09 14:54:21 +00:00