Commit Graph

8945 Commits

Author SHA1 Message Date
Chris Lattner
d65460f133 Fix bug with previous implementation:
-      // ~(c-X) == X-(c-1) == X+(-c+1)
+      // ~(c-X) == X-c-1 == X+(-c-1)

Implement: C - ~X == X + (1+C)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9715 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-05 01:06:05 +00:00
Chris Lattner
9716eb7676 New testcase for the other side
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9714 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-05 01:05:22 +00:00
Brian Gaeke
2fa8212a7a Use regular old malloc to emulate malloc/alloca instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9713 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-05 01:02:14 +00:00
Brian Gaeke
3636f4e0d6 Remove a comment which no longer applies.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9712 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-05 00:59:28 +00:00
Chris Lattner
ad5b4fb6b7 Minor cleanup, plus implement InstCombine/xor.ll:test17
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9711 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-04 23:50:51 +00:00
Chris Lattner
519c6965f5 Since we're in the neighborhood, test for the inverse
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9710 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-04 23:49:53 +00:00
Chris Lattner
d5e4918fa7 Fix spello
Add negate overload


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9709 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-04 23:37:40 +00:00
Chris Lattner
689d24b6ed Implement InstCombine/xor.ll:test(15|16)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9708 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-04 23:37:10 +00:00
Chris Lattner
736cca670f Add a generalization of the previous case
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9707 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-04 23:36:50 +00:00
Chris Lattner
f61641f7d4 New testcase for masking operation that frequently occurs in the pool allocator
for converting a number that is a power of two into a mask


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9706 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-04 23:21:22 +00:00
Alkis Evlogimenos
4dad76cea0 Update documentation since it was misleading: make it clear that a
negative instruction count is returned if instructions are removed
from a basic block.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9705 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-04 23:07:00 +00:00
Alkis Evlogimenos
e668dab5b3 Change all machine basic block modifier functions in MRegisterInfo to
return the number of instructions added to/removed from the basic block
passed as their first argument.

Note: This is only needed because we use a std::vector instead of an
ilist to keep MachineBasicBlock instructions. Inserting an instruction
to a MachineBasicBlock invalidates all iterators to the basic
block. The return value can be used to update an index to the machine
basic block instruction vector and circumvent the iterator elimination
problem but this is really not needed if we move to a better
representation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9704 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-04 22:57:09 +00:00
Brian Gaeke
55766e139a Update verifySavedState()'s comment, so that it reflects its current
status.  In doFinalization(), skip over external functions, just like
Anand's mapping info does.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9703 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-04 22:42:41 +00:00
Chris Lattner
c2630f7314 New file, for use by the pool allocator project
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9702 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-04 22:38:28 +00:00
Chris Lattner
2855ecdf04 Substantial release notes updates
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9700 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-04 20:06:53 +00:00
Chris Lattner
6926dcbe06 New testcase for PR80
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9699 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-04 18:52:01 +00:00
Chris Lattner
871b15052c New testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9698 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-04 18:34:05 +00:00
Brian Gaeke
cce4e7a1b1 Add comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9697 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-04 18:25:56 +00:00
Chris Lattner
2bde8bdc16 While working on the pool allocator, I noticed that basicaa is failing a scary
number of simple cases.  Someday when I get a chance to work on it again, this
testcase should be corrected.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9695 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-04 16:40:40 +00:00
Chris Lattner
9053356dd1 Fix problems in previous changes. This fixes several regressions last night.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9694 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-04 16:04:32 +00:00
John Criswell
700867bb69 Checking in Chris's suggestions:
Added assert() to ensure symbol table is well formed.
Added code to remember the value that was found; resolving types can change
the symbol table and invalidate the value of the iterator.
Added comments to the ResolveTypes() function (mainly for my own benefit).
Please feel free to correct the comments if they are not accurate.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9693 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-04 15:22:26 +00:00
Chris Lattner
62a7cc8661 New testcase for PR84
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9690 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-03 21:37:08 +00:00
John Criswell
a4c535284e Modified build rules so that a messages appears before and after linking.
This helps to disambiguate when linking begins and when the library/program
is linked and ready to be used.
This is sort of as preference thing, so feel free to modify/revert the change.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9687 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-03 21:12:49 +00:00
Chris Lattner
ac662d1e02 Significantly simplify constant emission by unifying the stuff which used to build up
strings with the stuff that used to print to an ostream directly.  We now NEVER build
up big strings, only to print them once they are formed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9686 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-03 20:19:49 +00:00
Chris Lattner
2fb1ef8901 updates to release notes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9685 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-03 20:08:08 +00:00
Chris Lattner
3e119c68fe Incorporate printSingleConstantValue into its single caller
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9684 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-03 19:44:05 +00:00
Chris Lattner
603c56213d * Reformat some code
* Emit bools as 1/0 instead of true/false, fixing compilation of eon and
  PR 83 & Jello/2003-11-03-GlobalBool.llx


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9683 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-03 19:33:45 +00:00
Chris Lattner
1d8addbc16 New testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9682 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-03 19:27:17 +00:00
Chris Lattner
5bc3e31c54 Fix InstCombine/2003-11-03-VarargsCallBug.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9681 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-03 18:44:58 +00:00
Chris Lattner
ab13ae8c46 New testcase for a bug in instcombine
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9680 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-03 18:33:44 +00:00
Chris Lattner
5ea326a23b Work around a bug in GCC where it can't handle common variables marked weak.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9679 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-03 17:35:00 +00:00
Chris Lattner
2580d4f232 Fix bugs with attribute weak emission
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9678 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-03 17:32:38 +00:00
Chris Lattner
fd35c6417d If linking a library, do not link other libraries, like libc, into it!
This fixes lots of annoying warnings and error messages


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9677 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-03 17:27:17 +00:00
John Criswell
1edcb0939c Closed the h2 header for the LLVM Test Suite Organization section.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9676 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-03 14:59:59 +00:00
Chris Lattner
5fecdecda4 More testcases
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9675 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-03 05:42:50 +00:00
Chris Lattner
4d3ba7397f Move a test from cast-set to a new bit-tracking.ll file. Update file comments
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9674 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-03 05:30:34 +00:00
Chris Lattner
6870805117 Implement InstCombine/cast-set.ll:test6[a]. This improves code generated for
a hot function in em3d


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9673 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-03 05:17:03 +00:00
Chris Lattner
26f9c065a7 Add another case, which an implementation of test6 must be sure to handle
correctly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9672 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-03 05:08:53 +00:00
Chris Lattner
8917d36229 This simplifies the CWriter code, makes the generated code easier to read,
and makes the output work with the intel compiler.  Overall, a win.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9671 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-03 04:31:54 +00:00
Chris Lattner
de90b76670 Implement InstCombine/cast-set.ll: test1, test2, test7
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9670 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-03 04:25:02 +00:00
Chris Lattner
40cfd9ea41 Add the testcase from PR8
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9669 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-03 03:52:34 +00:00
Chris Lattner
a5c5666d48 Add another case, which occurs in em3d
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9668 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-03 03:51:26 +00:00
Chris Lattner
8ee9204309 Fix bug with zero sized casts
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9667 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-03 01:29:41 +00:00
Chris Lattner
7635ea4230 Eliminate the silly namedContext member of printType
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9666 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-03 01:01:59 +00:00
Chris Lattner
ac50030f86 Allow CallSites to be used as the key of a map
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9660 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-02 23:04:33 +00:00
Chris Lattner
15869aa2c7 All DSGraphs keep a reference to the targetdata they are created with. This is
used to eliminate the hard coded, hacked in, sparc specific, global TargetData.
Changing the TargetData used to actually match the code fixes problems, and
eliminates a crash.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9659 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-02 22:27:28 +00:00
Chris Lattner
dbfe36e51e Fix bug: test/Regression/Analysis/DSGraph/2003-11-02-NodeCollapsing.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9658 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-02 21:02:20 +00:00
Chris Lattner
dab02aeada New testcase for DSA which is improperly collapsed!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9657 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-02 20:43:10 +00:00
Chris Lattner
fc07a3473a Fix bug in previous checkin
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9656 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-02 06:54:48 +00:00
Chris Lattner
766be1de9d The 'thefunc' function should not have weak linkage, it should have linkonce linkage.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9655 91177308-0d34-0410-b5e6-96231b3b80d8
2003-11-02 06:30:39 +00:00