1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-22 04:22:57 +02:00
Commit Graph

456 Commits

Author SHA1 Message Date
Chris Lattner
8711f611fa Add a special case for main because we know it's incoming arguments don't alias
llvm-svn: 5511
2003-02-08 23:08:02 +00:00
Chris Lattner
6daed111da Fix a bug where we would mark the callees arguments incomplete if the caller was external.
llvm-svn: 5510
2003-02-08 23:07:39 +00:00
Chris Lattner
31e95435b8 Fix division by zero problem
llvm-svn: 5509
2003-02-08 23:04:50 +00:00
Chris Lattner
a05bfd7525 Remove explicit result counters
llvm-svn: 5508
2003-02-08 23:03:17 +00:00
Chris Lattner
2c7c54ce9d Add a flag which effectively disables field sensitivity
llvm-svn: 5506
2003-02-08 20:18:39 +00:00
Chris Lattner
b056679b1e Don't bother counting alias results, allow the AliasAnalysisCounter to do that.
llvm-svn: 5505
2003-02-07 20:39:48 +00:00
Chris Lattner
2f75411136 Allow counting multiple passes, and print the pass name counted
llvm-svn: 5504
2003-02-07 20:39:17 +00:00
Chris Lattner
ed61b8ddef New general purpose alias analysis result auditor
llvm-svn: 5503
2003-02-07 19:46:03 +00:00
Chris Lattner
4c58f5252e Add a summary
llvm-svn: 5500
2003-02-06 22:06:08 +00:00
Chris Lattner
d4990fe1be Simple N^2 alias anlysis accuracy checker
llvm-svn: 5498
2003-02-06 21:29:49 +00:00
Chris Lattner
21e1033bff Fix an assertion failure
llvm-svn: 5496
2003-02-06 00:15:08 +00:00
Chris Lattner
5f3ef2f0e7 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
4aa35d21be Remove bogus assertion
llvm-svn: 5492
2003-02-04 16:33:23 +00:00
Chris Lattner
4e0422745c Fix a huge bug with handling non-pointer instructions
llvm-svn: 5491
2003-02-04 00:59:50 +00:00
Chris Lattner
a4f94897b9 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
e8381114ef Add sanity check
llvm-svn: 5489
2003-02-04 00:03:57 +00:00
Chris Lattner
96f37f267a Fix steensgaard to work on a lot more cases...
llvm-svn: 5488
2003-02-04 00:03:37 +00:00
Chris Lattner
2e3829c76d Fix printing of nonfunction graphs
llvm-svn: 5487
2003-02-04 00:03:18 +00:00
Chris Lattner
7b9a9209fc Rename variable
llvm-svn: 5486
2003-02-03 22:51:53 +00:00
Chris Lattner
102e619864 Hack to work around deficiency in pass infrastructure
llvm-svn: 5485
2003-02-03 22:51:28 +00:00
Chris Lattner
2a3c476fd4 Initial implementation of ds-aa
llvm-svn: 5484
2003-02-03 22:50:46 +00:00
Chris Lattner
47929dacd2 Add statistics to basicAA pass
llvm-svn: 5480
2003-02-03 21:16:17 +00:00
Chris Lattner
2ce14e226e * 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
5d14f5d9ac Implement the globals graph!
llvm-svn: 5477
2003-02-03 19:12:15 +00:00
Chris Lattner
a589169d22 Add better debug output
llvm-svn: 5476
2003-02-03 19:11:38 +00:00
Chris Lattner
e4d8ec335c Be a bit more specific in caption
llvm-svn: 5469
2003-02-02 16:42:01 +00:00
Chris Lattner
acc67b5d1d 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
d946a6a307 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
4f56dfb8d8 Delete nodes more efficiently
llvm-svn: 5463
2003-02-01 06:41:15 +00:00
Chris Lattner
bbd430c392 Remove dead nodes more efficiently
llvm-svn: 5462
2003-02-01 06:23:33 +00:00
Chris Lattner
8bb8f73e76 Improve efficiency of aliveness traversal code
llvm-svn: 5461
2003-02-01 06:17:02 +00:00
Chris Lattner
7aec6c471b 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
6051f888b4 Remove using declarations
llvm-svn: 5456
2003-02-01 04:01:21 +00:00
Chris Lattner
c3e8b48d5e 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
390dc95c05 Add functions to the ban list
llvm-svn: 5450
2003-01-31 23:57:10 +00:00
Chris Lattner
91e3c1eeac Use and implement API for graph traversals
llvm-svn: 5431
2003-01-29 21:10:20 +00:00
Chris Lattner
712b3598b8 free instructions mark their operands as being heap nodes.
llvm-svn: 5425
2003-01-28 20:59:57 +00:00
Chris Lattner
77e422543e * Eliminate boolean arguments in favor of using enums
llvm-svn: 5420
2003-01-23 22:06:33 +00:00
Chris Lattner
f1afc156f8 * Eliminate boolean arguments in favor of using enums
* T-D pass now eliminates unreachable globals

llvm-svn: 5419
2003-01-23 22:05:33 +00:00
Chris Lattner
1c82a35a0b Slight efficiency improvement
llvm-svn: 5418
2003-01-23 21:31:16 +00:00
Chris Lattner
bd72aa79fc Fix analysis of the Burg program
llvm-svn: 5401
2003-01-22 22:00:24 +00:00
Chris Lattner
07b0e49989 Rename llvm/Analysis/LiveVar/FunctionLiveVarInfo.h -> llvm/CodeGen/FunctionLiveVarInfo.h
llvm-svn: 5284
2003-01-14 23:05:08 +00:00
Chris Lattner
57b5e8891e Move llvm/Analysis/LiveVar/ValueSet.h to CodeGen/ValueSet.h
llvm-svn: 5282
2003-01-14 22:56:37 +00:00
Chris Lattner
4093c3b83f Move annotations to support library
llvm-svn: 5270
2003-01-14 21:31:39 +00:00
Misha Brukman
1264a03c8a 'graph' is spelled without a 'c'.
Also added Statistic counters for NoAlias and MayAlias.

llvm-svn: 4972
2002-12-12 05:34:10 +00:00
Chris Lattner
8d4b4b020e Remove #includes
llvm-svn: 4968
2002-12-12 03:47:27 +00:00
Vikram S. Adve
c9617fde54 Iterator that enumerates the ProgramDependenceGraph (PDG) for a function,
i.e., enumerates all data and control dependences for the function.

llvm-svn: 4958
2002-12-08 14:13:19 +00:00
Vikram S. Adve
90bc3110b6 An explicit representation of dependence graphs, and a pass that
computes a dependence graph for data dependences on memory locations
using interprocedural Mod/Ref information.

llvm-svn: 4957
2002-12-08 13:26:29 +00:00
Chris Lattner
5f4d7d2801 Add total instruction, bb, & function counts
llvm-svn: 4954
2002-12-07 23:24:24 +00:00
Vikram S. Adve
773fe59c79 Two bug fixes:
(1) Make entries for Constant values in the ScalarMap.
(2) Set MOD bit for the node pointed to by the
    argument of a free instruction.

llvm-svn: 4948
2002-12-06 21:17:10 +00:00