Chris Lattner
0188534cd1
Instcombine this away:
...
%A = getelementptr [4 x int]* %M, long 0, long 0
%B = getelementptr int* %A, long 2
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4536 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-04 16:43:32 +00:00
Chris Lattner
a3c4ba427b
Add new getelementptr elimination test
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4535 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-04 16:35:14 +00:00
Chris Lattner
0864acf07b
Add a transformation to turn:
...
malloc Ty, C
int
malloc [C x Ty], 1
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4534 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-04 16:18:53 +00:00
Chris Lattner
0eaaa56f1f
New testcase for malloc promotion
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4533 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-04 16:18:07 +00:00
Vikram S. Adve
c405daf392
Simple passes that print out SCCs in the CFGs or in the CallGraph of a module.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4532 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-04 14:20:22 +00:00
Vikram S. Adve
5fe9171b38
Generic graph iterator to enumerate the SCCs of a graph
...
in linear time using Tarjan's DFS algorithm.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4531 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-04 14:15:57 +00:00
Chris Lattner
02606637e0
Change the "Cannot merge two portions of the same node yet" from an assertion
...
into a "oh crap, lets collapse" case
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4530 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-04 06:48:26 +00:00
Chris Lattner
4d5f10f8d6
Add information about why this testcase fails
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4529 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-04 06:16:13 +00:00
Chris Lattner
2b0679ff0b
Convert uint gep operands to long
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4528 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-04 06:09:46 +00:00
Chris Lattner
69afeca154
Convert old style gep index from uint to long
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4527 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-04 06:07:04 +00:00
Chris Lattner
35b74c4e54
Ack: Fix bug in previous checkin.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4526 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-04 05:50:42 +00:00
Chris Lattner
38dc4f06af
Be more generous about level raising constant expressions don't force each
...
constant to one particular type.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4525 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-04 05:46:37 +00:00
Chris Lattner
f74825436c
Implement a new -print-callgraph analysis that turns a callgraph into a dot
...
graph
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4524 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-04 02:55:30 +00:00
Chris Lattner
af663465d6
Make sure to _delete_ memory allocated by worklists
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4523 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-04 02:54:22 +00:00
Chris Lattner
7e5f46a441
Implement methods needed to print out call graph
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4522 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-04 02:53:39 +00:00
Chris Lattner
048912bad9
Give a better error message in an unhandled case
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4521 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-04 02:29:15 +00:00
Chris Lattner
a5cf9364f1
Minor fix to space accounting
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4520 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-04 01:49:45 +00:00
Chris Lattner
f9415dd8c2
Improve the clean target
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4519 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-04 00:33:19 +00:00
Chris Lattner
9d4ef12b9c
Implement MaxRSS in terms of mallinfo instead of the system RSS. This gives
...
us much more accurate numbers and actually WORKS.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4518 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-04 00:32:44 +00:00
Chris Lattner
1650015822
Allow the call graph to be called from analyze naturally with print implemented
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4517 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-04 00:21:19 +00:00
Chris Lattner
c875f023d4
Rename ValueMap to ScalarMap
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4516 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-03 21:27:48 +00:00
Chris Lattner
d18f342af8
Rename NewNode flag to HeapNode
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4515 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-03 21:24:04 +00:00
Chris Lattner
ef69ccf71b
Change the letters used to represent stack and heap allocations to "S" and "H"
...
respectively. This is to make presentation easier in the paper.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4514 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-03 19:46:15 +00:00
Chris Lattner
36aff6ec2d
Check in header file that was missing, thus broke the build
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4513 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-03 19:24:49 +00:00
Vikram S. Adve
02a74ccd61
Disable correlated expressions pass until it is reliable.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4512 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-03 12:41:50 +00:00
Anand Shukla
93d545e691
code to lightly instrument at branches
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4511 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-03 01:45:20 +00:00
Chris Lattner
5da2e6ac70
Move function to cpp file from header
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4510 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-02 22:07:51 +00:00
Misha Brukman
0d05e6d942
Fixed comment on top of DSNode.h, added note to DSSupport.h as to why
...
functions were split out from DSNode class.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4509 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-02 21:18:53 +00:00
Chris Lattner
f01729ea56
Implement signed and unsigned division and remainder
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4508 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-02 20:54:46 +00:00
Chris Lattner
f37ca3acda
Enable div and mod tests
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4507 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-02 20:54:11 +00:00
Chris Lattner
ca9671d864
Implement multiply operator
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4506 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-02 20:28:58 +00:00
Chris Lattner
bbe75fe78f
Enable multiply tests
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4505 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-02 20:28:47 +00:00
Chris Lattner
d04b51d447
New testcase for arithmetic operations
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4504 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-02 20:13:40 +00:00
Chris Lattner
68aad93291
* Implement subtract
...
* Merge add code into logical code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4503 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-02 20:13:22 +00:00
Chris Lattner
e2954c84e9
shuffle code around a bit, implement and, or, xor
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4502 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-02 20:04:26 +00:00
Chris Lattner
5a23ddfa17
New testcase for logical operators
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4501 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-02 20:04:02 +00:00
Chris Lattner
51b49a9633
Add PHI node support, add comment for branch function
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4500 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-02 19:45:49 +00:00
Chris Lattner
275c637208
Make phi test a bit more challenging
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4499 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-02 19:45:30 +00:00
Chris Lattner
2df035bb3c
Implement unconditional branching support
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4498 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-02 19:27:56 +00:00
Chris Lattner
6a353ed5da
Only test that uncond branch works
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4497 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-02 19:27:45 +00:00
Chris Lattner
e9913f2cff
* Fix nonconstant shift case
...
* Turn table into 2d table
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4496 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-02 01:41:55 +00:00
Chris Lattner
8b6c5e4412
Expose a LJELLO variable
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4495 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-02 01:41:07 +00:00
Chris Lattner
b3e3cae32b
Tests results are invalidated when jello is rebuilt
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4494 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-02 01:40:24 +00:00
Chris Lattner
b1761fc4df
Use a more table driven approach to handling types. Seems to simplify the
...
code a bit
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4493 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-02 01:15:18 +00:00
Chris Lattner
d5a87f80b7
Make switch statements denser, but only because of the follow-on patch
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4492 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-02 00:49:56 +00:00
Chris Lattner
796df73e6e
* Remove dead variable
...
* Shift amount is always guaranteed to be 8 bits
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4491 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-02 00:44:25 +00:00
Chris Lattner
5af344d79d
Implement the "unknown flag" which mainly consists of aligning printing code
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4490 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-02 00:36:03 +00:00
Chris Lattner
7a0b5bb7ab
Oops, this was not meant to be checked in
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4489 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-02 00:26:32 +00:00
Chris Lattner
92673296e6
Stop representing scalars as explicit nodes in the graph. Now the only
...
nodes in the graph are memory objects, which is very nice. This also greatly
reduces the size and memory footprint for DSGraphs. For example, the local
DSGraph for llu went from 65 to 13 nodes with this change. As a side bonus,
dot seems to lay out the graphs slightly better too. :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4488 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-02 00:13:20 +00:00
Chris Lattner
332043264e
* Eliminate Scalar node type (renumber other node types)
...
* Allow DSNodeHandle::mergeWith to work if a node handle isn't pointing to a node yet
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4487 91177308-0d34-0410-b5e6-96231b3b80d8
2002-11-02 00:11:12 +00:00