Chris Lattner [Mon, 21 Mar 2005 01:36:35 +0000 (01:36 +0000)]
Provide a guaranteed definition of intptr_t. Thansk to Evan Jones for
pointing this out!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20721
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 20 Mar 2005 18:02:56 +0000 (18:02 +0000)]
Don't strip modref bits when inlining down the call graph. This fixes
the DSGraph/2003-06-30-TopDownResolve.ll regression from last night.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20717
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 20 Mar 2005 04:30:30 +0000 (04:30 +0000)]
Remove the ability to keep track of inlined globals, which is always dead.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20716
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 20 Mar 2005 04:30:16 +0000 (04:30 +0000)]
Remove the InlinedGlobals set which is always empty.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20715
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 20 Mar 2005 04:29:54 +0000 (04:29 +0000)]
This call is always a noop, remove it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20714
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 20 Mar 2005 04:29:39 +0000 (04:29 +0000)]
remove some pointless asserts
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20713
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 20 Mar 2005 04:23:57 +0000 (04:23 +0000)]
-steens doesn't use the inlined globals facility.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20712
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 20 Mar 2005 03:32:35 +0000 (03:32 +0000)]
Build EC's for globals twice. The first is after constructing the initial
Globals Graph for the local pass, the second is after all of the locals
graphs have been constructed. This allows for many additional global EC's
to be recognized that weren't before. This speeds up analysis of programs
like 177.mesa, where it changes DSA from taking 0.712s to 0.4018s.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20711
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 20 Mar 2005 03:29:54 +0000 (03:29 +0000)]
Add a new DSNode::removeGlobal method.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20710
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 20 Mar 2005 03:29:39 +0000 (03:29 +0000)]
add a method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20709
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 20 Mar 2005 02:42:07 +0000 (02:42 +0000)]
Transform BU pass to not use the horrible DSCallSiteIterator class.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20708
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 20 Mar 2005 02:41:38 +0000 (02:41 +0000)]
Implement new methods for dealing with DSNode global lists, rename uses of
old methods.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20707
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 20 Mar 2005 02:41:16 +0000 (02:41 +0000)]
use simpler methods.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20706
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 20 Mar 2005 02:40:27 +0000 (02:40 +0000)]
method was renamed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20705
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 20 Mar 2005 02:40:11 +0000 (02:40 +0000)]
print out equiv class info.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20704
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 20 Mar 2005 02:40:04 +0000 (02:40 +0000)]
some methods got renamed
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20703
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 20 Mar 2005 02:39:49 +0000 (02:39 +0000)]
Make use of simpler DSNode methods.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20702
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 20 Mar 2005 02:38:39 +0000 (02:38 +0000)]
rename some methods and add some new methods for dealing with the globals list
in a DSNode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20701
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 20 Mar 2005 02:14:15 +0000 (02:14 +0000)]
#ifdef out a function only used by #ifdef'd code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20700
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 20 Mar 2005 01:18:00 +0000 (01:18 +0000)]
comment cleanup
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20699
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Sat, 19 Mar 2005 23:39:50 +0000 (23:39 +0000)]
Constant-propagate the value of `isL' variable and eliminate it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20698
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeff Cohen [Sat, 19 Mar 2005 22:36:39 +0000 (22:36 +0000)]
Silence VC++ warning about mixing intptr_t and bool, and about unused variable isL.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20697
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 19 Mar 2005 22:23:45 +0000 (22:23 +0000)]
Create an equivalence class of global variables that DSA will never be able
to tell apart anyway, and only track the leader for of these equivalence
classes in our graphs.
This dramatically reduces the number of GlobalValue*'s that appear in scalar
maps, which A) reduces memory usage, by eliminating many many scalarmap entries
and B) reduces time for operations that need to execute an operation for each
global in the scalar map.
As an example, this reduces the memory used to analyze 176.gcc from 1GB to
511MB, which (while it's still way too much) is better because it doesn't hit
swap anymore. On eon, this shrinks the local graphs from 14MB to 6.8MB,
shrinks the bu+td graphs of povray from 50M to 40M, shrinks the TD graphs of
130.li from 8.8M to 3.6M, etc.
This change also speeds up DSA on large programs where this makes a big
difference. For example, 130.li goes from 1.17s -> 0.56s, 134.perl goes
from 2.14 -> 0.93s, povray goes from 15.63s->7.99s (!!!).
This also apparently either fixes the problem that caused DSA to crash on
perlbmk and gcc, or it hides it, because DSA now works on these. These
both take entirely too much time in the TD pass (147s for perl, 538s for
gcc, vs 7.67/5.9s in the bu pass for either one), but this is a known
problem that I'll deal with later.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20696
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 19 Mar 2005 22:13:13 +0000 (22:13 +0000)]
Make each scalar map contain a reference to an equivalence class of global
variables. Do not insert a global into the scalar map unless it is the
leader of its equivalence class.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20695
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 19 Mar 2005 22:12:33 +0000 (22:12 +0000)]
Each DS collection now contains an equivalence class of globals values.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20694
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 19 Mar 2005 22:12:03 +0000 (22:12 +0000)]
add a method to clear globals from a node
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20693
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 19 Mar 2005 21:02:12 +0000 (21:02 +0000)]
Two fixes for the copy ctor/operator=:
1. Make sure to clear() 'this' before adding elements to it
2. Make sure that the leaders of the RHS EC are the leaders of the LHS EC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20692
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 19 Mar 2005 20:42:43 +0000 (20:42 +0000)]
add some methods, fix a major bug in getLeader() that was causing things to
not be unified correctly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20691
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 19 Mar 2005 19:26:14 +0000 (19:26 +0000)]
implement a proper copy ctor, operator= and add a helper method.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20690
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 19 Mar 2005 17:35:11 +0000 (17:35 +0000)]
Fix the 3 regressions last night, due to my buggy patch from yesterday.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20689
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Sat, 19 Mar 2005 11:40:31 +0000 (11:40 +0000)]
Add new function getPtrPtrFromArrayPtr().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20684
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Sat, 19 Mar 2005 09:22:17 +0000 (09:22 +0000)]
Stop using deprecated interface.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20679
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 19 Mar 2005 05:15:27 +0000 (05:15 +0000)]
Switch to use the new interface for the EquivalenceClasses class, and fix
a bug involving SCC's who have multiple members that are part of an EC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20678
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 19 Mar 2005 05:14:29 +0000 (05:14 +0000)]
Rewrite this class, making the following improvements:
1. It now actually uses tarjan's algorithm, so it is a efficient inverse
ackerman's function for union operations, not linear time.
2. It now stores one copy of the data in the set instead of two.
3. It now works for elements other than pointers.
4. It now has a more STL-like interface that exposes iterators instead
of internal implementation details.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20677
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 18 Mar 2005 23:19:47 +0000 (23:19 +0000)]
do not bother inlining nullary functions without return values. The only
effect these calls can have is due to global variables, and these passes
all use the globals graph to capture their effect anyway. This speeds up
the BU pass very slightly on perlbmk, reducing the number of dsnodes
allocated from 98913 to 96423.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20676
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 18 Mar 2005 23:18:30 +0000 (23:18 +0000)]
fix a bogus assertion
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20675
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 18 Mar 2005 23:18:20 +0000 (23:18 +0000)]
another fastpath
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20674
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 18 Mar 2005 16:12:37 +0000 (16:12 +0000)]
remove use of getPrev() and getNext() on ilist nodes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20673
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 18 Mar 2005 05:27:57 +0000 (05:27 +0000)]
expose this pass to both opt and analyze
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20672
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Fri, 18 Mar 2005 00:48:56 +0000 (00:48 +0000)]
We shall have IA64 as a new experimental backend released with LLVM 1.5
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20671
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 18 Mar 2005 00:23:59 +0000 (00:23 +0000)]
remove a bogus optimization. This only works if there are no globals in the
graph, and the combination of a function that does not reference globals, takes
not arguments and returns no value is pretty rare.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20670
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 18 Mar 2005 00:21:03 +0000 (00:21 +0000)]
Rewrite DSAA::getModRefInfo to compute the mapping between caller and callee
to determine mod/ref behavior, instead of creating a *copy* of the caller
graph and inlining the callee graph into the copy.
This speeds up aa-eval on Ptrdist/yacr2 from 109.13s to 3.98s, and gives
identical results. The speedup is similar on other programs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20669
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 Mar 2005 23:45:54 +0000 (23:45 +0000)]
implement a new method.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20668
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 Mar 2005 23:45:35 +0000 (23:45 +0000)]
add 3 methods
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20667
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 17 Mar 2005 20:56:22 +0000 (20:56 +0000)]
Recognize an IA64 when we see one
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20666
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 Mar 2005 20:33:27 +0000 (20:33 +0000)]
add some possibly bogus assertions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20665
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 Mar 2005 20:25:04 +0000 (20:25 +0000)]
Do not include the Function* for direct call/invoke instructions in the
alias evaluation. Clients really don't care.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20664
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Thu, 17 Mar 2005 20:23:27 +0000 (20:23 +0000)]
typo/denial
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20663
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 Mar 2005 20:16:58 +0000 (20:16 +0000)]
simplify this function a bit, allow DS-AA to build on/improve the mod/ref
results returned by AA, not just use one or the other.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20662
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 Mar 2005 19:56:56 +0000 (19:56 +0000)]
Clean up some code, handle null pointer specially to avoid an assertion
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20660
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 Mar 2005 19:56:18 +0000 (19:56 +0000)]
Two changes:
1. Chain to the parent implementation of M/R analysis if we can't find
any information. It has some heuristics that often do well.
2. Do not clear all flags, this can make invalid nodes by turning nodes
that used to be collapsed into non-collapsed nodes (fixing crashes)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20659
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Thu, 17 Mar 2005 19:00:40 +0000 (19:00 +0000)]
clean up warnings when building in release mode
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20658
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Thu, 17 Mar 2005 18:57:02 +0000 (18:57 +0000)]
now the angry bug reports have somewhere to go!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20657
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 Mar 2005 18:39:06 +0000 (18:39 +0000)]
statically link ia64 into llc
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20656
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Thu, 17 Mar 2005 18:37:05 +0000 (18:37 +0000)]
OK, IA64 is statically linked into llc
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20655
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Thu, 17 Mar 2005 18:29:04 +0000 (18:29 +0000)]
build the IA64 target as a .so for now
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20654
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Thu, 17 Mar 2005 18:23:22 +0000 (18:23 +0000)]
dainty
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20653
91177308-0d34-0410-b5e6-
96231b3b80d8
Duraid Madina [Thu, 17 Mar 2005 18:17:03 +0000 (18:17 +0000)]
and so it begins...
PHASE 1: write instruction selector
PHASE 2: ???
PHASE 3: profit!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20652
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 Mar 2005 16:29:26 +0000 (16:29 +0000)]
Don't emit two comparisons when comparing a FP value against zero!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20651
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 Mar 2005 16:07:45 +0000 (16:07 +0000)]
spiff up the nightly tester output one more notch
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20650
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 Mar 2005 15:38:16 +0000 (15:38 +0000)]
Fix the missing symbols problem Bill was hitting. Patch contributed by
Bill Wendling!!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20649
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 Mar 2005 05:25:34 +0000 (05:25 +0000)]
Do not create ridiculously huge DSNodes, as described in the comments.
This speeds up the BU pass on 172.mgrid from 62.3 -> 0.1242s.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20648
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 17 Mar 2005 04:49:04 +0000 (04:49 +0000)]
Fix a bug where we would consider " .99" and "1.0" different because of the
leading whitespace.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20647
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 16 Mar 2005 22:42:45 +0000 (22:42 +0000)]
remove compat_iterator, which is dead in the tree.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20644
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 16 Mar 2005 22:42:19 +0000 (22:42 +0000)]
remove use of compat_iterator.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20643
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 16 Mar 2005 22:42:01 +0000 (22:42 +0000)]
remove use of compat_iterator
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20642
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 16 Mar 2005 17:09:53 +0000 (17:09 +0000)]
Print out who commits and what files were modified at the bottom of the test summary log sent to llvm-commits.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20641
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeff Cohen [Wed, 16 Mar 2005 05:49:58 +0000 (05:49 +0000)]
Do #include HashExtras.h with VC++
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20640
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeff Cohen [Wed, 16 Mar 2005 05:49:06 +0000 (05:49 +0000)]
Don't provide default hash struct instantiation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20639
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Wed, 16 Mar 2005 05:42:00 +0000 (05:42 +0000)]
Convert tabs to spaces
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20638
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeff Cohen [Wed, 16 Mar 2005 05:25:09 +0000 (05:25 +0000)]
Add adapter class to let VC++ hash_map use GCC's hash struct.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20637
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeff Cohen [Wed, 16 Mar 2005 05:09:59 +0000 (05:09 +0000)]
Remove deleted files from VC++ project.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20636
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Wed, 16 Mar 2005 03:54:50 +0000 (03:54 +0000)]
Fix grammar wrt apostrophe's
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20635
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Wed, 16 Mar 2005 03:46:55 +0000 (03:46 +0000)]
Convert tabs to spaces
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20634
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 Mar 2005 23:03:34 +0000 (23:03 +0000)]
fix some 80 column violations
Add support for programs that define main in a .a file, such as f2c'd programs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20631
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 Mar 2005 22:55:17 +0000 (22:55 +0000)]
consolidate LinkFiles into LinkItems, use lib_* iterators.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20630
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 Mar 2005 22:51:40 +0000 (22:51 +0000)]
consolidate LinkLibraries into LinkItems
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20629
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 Mar 2005 22:47:18 +0000 (22:47 +0000)]
make sure to mark nodes in the globals graph incomplete after computing it
so that external globals (and whatever they point to) are marked incomplete.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20628
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 Mar 2005 22:10:04 +0000 (22:10 +0000)]
fix crashes when we only have a prototype for main.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20627
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 Mar 2005 21:36:50 +0000 (21:36 +0000)]
Fix a crash that happens when mapping something like this:
{ short, short }
to
short
where the second short maps onto the second field of the first struct. In
this case, the struct index is not aligned, so we should avoid calling
getLink(2), which asserts out.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20626
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Tue, 15 Mar 2005 19:51:19 +0000 (19:51 +0000)]
sure, I can set a flag, but if I never check it, why bother setting it? Should fix 20 programs :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20623
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 Mar 2005 17:52:18 +0000 (17:52 +0000)]
Make computeGGToGMapping compute an invnodemap
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20622
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 Mar 2005 17:52:07 +0000 (17:52 +0000)]
remove warning, make computeGGToGMapping return an invnodemap.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20621
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 Mar 2005 17:51:51 +0000 (17:51 +0000)]
add support for hashing nodehandles.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20620
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 Mar 2005 17:14:09 +0000 (17:14 +0000)]
Finally fix (the right way) the problem where functions like this:
void foo() {
G = 1;
}
would have an empty DSGraph even though G (a global) is directly used
in the function.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20619
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 Mar 2005 16:55:04 +0000 (16:55 +0000)]
Start using retnodes_* for iteration.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20618
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 Mar 2005 16:46:11 +0000 (16:46 +0000)]
add iterators for return nodes list.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20617
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 Mar 2005 15:48:22 +0000 (15:48 +0000)]
method renamed
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20616
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 Mar 2005 15:48:06 +0000 (15:48 +0000)]
Replace more a*'s with arg_*'s, thanks to Gabor Greif!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20615
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 Mar 2005 15:46:23 +0000 (15:46 +0000)]
add missing copyright header
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20614
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Tue, 15 Mar 2005 07:20:55 +0000 (07:20 +0000)]
Stop using abegin and aend.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20610
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Tue, 15 Mar 2005 07:12:30 +0000 (07:12 +0000)]
Stop using abegin.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20609
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Tue, 15 Mar 2005 07:02:26 +0000 (07:02 +0000)]
Use arg_iterator and arg_begin and arg_end functions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20608
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeff Cohen [Tue, 15 Mar 2005 06:31:46 +0000 (06:31 +0000)]
Add EquivClassGraphs.cpp to VC++ project.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20607
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 Mar 2005 06:29:12 +0000 (06:29 +0000)]
avoid varialbe name collisions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20606
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeff Cohen [Tue, 15 Mar 2005 06:21:40 +0000 (06:21 +0000)]
Do it right...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20605
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeff Cohen [Tue, 15 Mar 2005 06:15:08 +0000 (06:15 +0000)]
Fix VC++ breakage.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20604
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 Mar 2005 05:19:49 +0000 (05:19 +0000)]
stop using method.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20603
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 Mar 2005 05:19:20 +0000 (05:19 +0000)]
methods removed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20602
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 15 Mar 2005 05:17:48 +0000 (05:17 +0000)]
remove reverse BB iterators.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20601
91177308-0d34-0410-b5e6-
96231b3b80d8