Commit Graph

5384 Commits

Author SHA1 Message Date
Chris Lattner 4fdb75f223 Simple N^2 alias anlysis accuracy checker
llvm-svn: 5498
2003-02-06 21:29:49 +00:00
Chris Lattner 66f24706ea New "open projects" document
llvm-svn: 5497
2003-02-06 19:39:21 +00:00
Chris Lattner f7979c2f2b Fix an assertion failure
llvm-svn: 5496
2003-02-06 00:15:08 +00:00
Chris Lattner 80614ee5ef Implement optimization for direct function call case. This dramatically
reduces the number of function nodes created and speeds up analysis by
about 10% overall.

llvm-svn: 5495
2003-02-05 21:59:58 +00:00
Chris Lattner 5981c63e6e Squelch warning
llvm-svn: 5494
2003-02-05 21:44:28 +00:00
Chris Lattner 6a9307866c Allow the addition of edge source labels
llvm-svn: 5493
2003-02-05 19:40:59 +00:00
Chris Lattner d7357ab5d1 Remove bogus assertion
llvm-svn: 5492
2003-02-04 16:33:23 +00:00
Chris Lattner 04fb4b5808 Fix a huge bug with handling non-pointer instructions
llvm-svn: 5491
2003-02-04 00:59:50 +00:00
Chris Lattner 36fd3eccbd Make the TD pass not include all of the call nodes from the local pass,
eliminating incomplete markers from them

llvm-svn: 5490
2003-02-04 00:59:32 +00:00
Chris Lattner a0e9e6ec8c Add sanity check
llvm-svn: 5489
2003-02-04 00:03:57 +00:00
Chris Lattner 7e41fedd3a Fix steensgaard to work on a lot more cases...
llvm-svn: 5488
2003-02-04 00:03:37 +00:00
Chris Lattner 4113571cd1 Fix printing of nonfunction graphs
llvm-svn: 5487
2003-02-04 00:03:18 +00:00
Chris Lattner eededa396e Rename variable
llvm-svn: 5486
2003-02-03 22:51:53 +00:00
Chris Lattner 390cec0c77 Hack to work around deficiency in pass infrastructure
llvm-svn: 5485
2003-02-03 22:51:28 +00:00
Chris Lattner 8fd2b77547 Initial implementation of ds-aa
llvm-svn: 5484
2003-02-03 22:50:46 +00:00
Chris Lattner e344bdf485 Check field sensitivity
llvm-svn: 5483
2003-02-03 21:40:14 +00:00
Chris Lattner 20278b4ffd Build DS-AA tests
llvm-svn: 5482
2003-02-03 21:31:53 +00:00
Chris Lattner 8d621888f9 Initial tests for DS alias analysis
llvm-svn: 5481
2003-02-03 21:31:43 +00:00
Chris Lattner 4b9eb3d2a1 Add statistics to basicAA pass
llvm-svn: 5480
2003-02-03 21:16:17 +00:00
Chris Lattner 1d3922ac0b * Fix a bug introduced in the last checkin wrt Stack markers
* Make cloning more efficient in the process...

llvm-svn: 5479
2003-02-03 20:08:51 +00:00
Chris Lattner 47c8d718a6 Implement feof and xmalloc
llvm-svn: 5478
2003-02-03 19:12:38 +00:00
Chris Lattner 8bb9513bd8 Implement the globals graph!
llvm-svn: 5477
2003-02-03 19:12:15 +00:00
Chris Lattner e396e9bbae Add better debug output
llvm-svn: 5476
2003-02-03 19:11:38 +00:00
Chris Lattner 6662cbc510 Eliminate unused resolving caller stuff
llvm-svn: 5475
2003-02-03 19:11:04 +00:00
Chris Lattner d39eca41b8 * Add a bunch of stuff for checking the integrity of the graph
* remove the isNodeDead method

llvm-svn: 5474
2003-02-03 19:10:24 +00:00
Chris Lattner ddcd02e8db Remove pool alloc accessor
llvm-svn: 5473
2003-02-03 19:08:33 +00:00
Chris Lattner 82723d73ba Split public interface out into header file
llvm-svn: 5472
2003-02-03 19:08:18 +00:00
Chris Lattner 45914783ad Expose information about pool allocation
llvm-svn: 5471
2003-02-03 19:07:46 +00:00
Chris Lattner 0881aeb121 Indent for uniformity
llvm-svn: 5470
2003-02-02 17:02:20 +00:00
Chris Lattner 07ba9d9010 Be a bit more specific in caption
llvm-svn: 5469
2003-02-02 16:42:01 +00:00
Chris Lattner b57f4b7b72 Allow modifying a global variables constness property
llvm-svn: 5468
2003-02-02 16:40:40 +00:00
Chris Lattner b90181e348 Fix bug: Assembler/2003-02-02-ConstGlobal.ll
llvm-svn: 5467
2003-02-02 16:40:20 +00:00
Chris Lattner 5c13328c49 New testcase
llvm-svn: 5466
2003-02-02 16:30:29 +00:00
Chris Lattner 9e75f38bb9 Fix a bug where we would delete neccesary calls in bu pass
llvm-svn: 5465
2003-02-01 06:54:31 +00:00
Chris Lattner 5965bbb02f Fix a bug where we would incorrectly delete globals which had edges to alive nodes in
a graph in the t-d pass.  This slows down the TD pass by quite a bit (1/3), but is
needed for correctness.

llvm-svn: 5464
2003-02-01 06:51:17 +00:00
Chris Lattner c154bdcd4c Delete nodes more efficiently
llvm-svn: 5463
2003-02-01 06:41:15 +00:00
Chris Lattner 71449ba556 Remove dead nodes more efficiently
llvm-svn: 5462
2003-02-01 06:23:33 +00:00
Chris Lattner 4f276cc4dd Improve efficiency of aliveness traversal code
llvm-svn: 5461
2003-02-01 06:17:02 +00:00
Chris Lattner c44c04af44 Change DSGraph stuff to use hash_(set|map) instead of std::(set|map)
This change provides a small (3%) but consistent speedup

llvm-svn: 5460
2003-02-01 04:52:08 +00:00
Chris Lattner 6c4005ccfe Add a bunch more stubs
llvm-svn: 5459
2003-02-01 04:51:12 +00:00
Chris Lattner f683599915 Fix typo
llvm-svn: 5458
2003-02-01 04:50:59 +00:00
Chris Lattner 2c5b6a0021 Add hash_multimap support
llvm-svn: 5457
2003-02-01 04:14:28 +00:00
Chris Lattner ee97c8b08a Remove using declarations
llvm-svn: 5456
2003-02-01 04:01:21 +00:00
Chris Lattner 34a5bb762d Simplify assertions
llvm-svn: 5455
2003-02-01 03:33:22 +00:00
Chris Lattner fae1291852 Add new composition mask
llvm-svn: 5454
2003-02-01 03:28:26 +00:00
Joel Stanley a801c7bae5 Added protos for two alternate, convenient CallInst constructors.
llvm-svn: 5453
2003-02-01 00:41:27 +00:00
Joel Stanley 4b27ed9759 Added implementation of alternate CallInst constructors (one ctor is
for no actual parameters, and one ctor is for one actual parameter).

llvm-svn: 5452
2003-02-01 00:39:58 +00:00
Chris Lattner 87d76c7f01 Remove globals on the bottom up pass which do not contain any information
llvm-svn: 5451
2003-01-31 23:57:36 +00:00
Chris Lattner 0cd81260e6 Add functions to the ban list
llvm-svn: 5450
2003-01-31 23:57:10 +00:00
Chris Lattner d119b565fd Fix strip issue Joel ran into
llvm-svn: 5449
2003-01-31 19:00:26 +00:00