Commit Graph

266348 Commits

Author SHA1 Message Date
Chris Lattner df307e6fd0 Implement a new mergeInGraph method, which basically factors code out of
the BU class.

This will be used by the IPModRef class to do stuff, eventually perhaps the
TD pass will use it also.

Speaking of the TD pass, this also eliminates the self recursive case, which
was broken, and couldn't occur anyway.

llvm-svn: 4599
2002-11-07 06:31:54 +00:00
Chris Lattner 8d493b51db Add new method
llvm-svn: 4598
2002-11-07 06:30:17 +00:00
Chris Lattner 312afcafaf Expose isPointerType to clients of dsanalysis
llvm-svn: 4597
2002-11-07 05:21:15 +00:00
Chris Lattner ca03c3b516 Rename DataStructureAnalysis namespace to DS
llvm-svn: 4596
2002-11-07 05:20:53 +00:00
Chris Lattner 28c34bd8eb Fix problem with dangling referrers
llvm-svn: 4595
2002-11-07 05:00:35 +00:00
Chris Lattner f9d29b3299 Minor bugfix to enable generation of methcall.llvm.lib, objinst.llvm.lib, and
The problem was merging two unsized types like function's, ie int (int*) with
int (uint *)

llvm-svn: 4594
2002-11-07 04:59:28 +00:00
Chris Lattner 88ff2a457c Update info now that bugfixes have been applied
llvm-svn: 4593
2002-11-07 03:53:27 +00:00
Chris Lattner c03a377f6a Compute total number of nodes and # call nodes
llvm-svn: 4592
2002-11-07 02:18:46 +00:00
Chris Lattner 1e3c276375 Add new NumNodes column
llvm-svn: 4591
2002-11-07 02:18:30 +00:00
Chris Lattner bbc5460114 Add note
llvm-svn: 4590
2002-11-07 02:07:57 +00:00
Chris Lattner 8ecf9eac71 New web page to track the progress of the DSGraph implementation
llvm-svn: 4589
2002-11-07 02:03:18 +00:00
Chris Lattner 4f8e2acaa2 Move printouts to be wrapped in DEBUG() macros
llvm-svn: 4588
2002-11-07 01:54:56 +00:00
Chris Lattner 2d0081a148 When the -only-print-main-ds option is specified, still print out graph size
statistics for skipped functions

llvm-svn: 4587
2002-11-07 01:54:44 +00:00
Chris Lattner 7f6d8dd144 Add a comment
llvm-svn: 4586
2002-11-06 23:26:21 +00:00
Chris Lattner c3a84099a9 Implement fprintf
llvm-svn: 4585
2002-11-06 23:05:03 +00:00
Chris Lattner 8529020770 Implement fputc and ungetc to allow burg to run in lli
llvm-svn: 4584
2002-11-06 22:59:28 +00:00
Nick Hildenbrandt 642f44fe8e Fixes escapeing bug in strings. Fixes test case test/Regression/CBackend/2002-11-06-PrintEscaped.c
llvm-svn: 4583
2002-11-06 21:40:23 +00:00
Nick Hildenbrandt 36053f5b52 Certain characters not getting escaped properly
llvm-svn: 4582
2002-11-06 21:38:39 +00:00
Chris Lattner 3c725a0722 Add note about what this is
llvm-svn: 4581
2002-11-06 20:58:26 +00:00
Chris Lattner bc69c9cf87 libraries is used for internal stuff, not as a real testcase
llvm-svn: 4580
2002-11-06 20:36:52 +00:00
Nick Hildenbrandt d1f273e97b Loads and stores can't be inlined. This fixes test/Singlesource/matrixTranspose
llvm-svn: 4579
2002-11-06 20:07:54 +00:00
Chris Lattner bac5fec8b9 Allow the ResolveCallSiteModRefInfo method to return a mapping of nodes,
implement the mod/ref bit masking

llvm-svn: 4578
2002-11-06 19:59:33 +00:00
Chris Lattner 2b23bf16e3 Add a stub to implement the context sensitive mod/ref info for call sites
llvm-svn: 4577
2002-11-06 19:38:43 +00:00
Chris Lattner 3cf08cc08a Give a back pointer to the IPModRef object to the FunctionModRefInfo object
llvm-svn: 4576
2002-11-06 19:07:13 +00:00
Chris Lattner 2f05c9a206 Remove a couple of #includes, move some code from .h file
llvm-svn: 4575
2002-11-06 18:38:18 +00:00
Chris Lattner 4167780062 Remove a couple of #includes, move some code to .cpp file
llvm-svn: 4574
2002-11-06 18:38:10 +00:00
Chris Lattner 21d8b9f0d6 Make maxSize a private variable, add a size() accessor
llvm-svn: 4573
2002-11-06 18:34:40 +00:00
Chris Lattner 92acbcda99 Change Steens class to build with Vikram's changes
llvm-svn: 4572
2002-11-06 18:08:32 +00:00
Chris Lattner 468e98e64e Make PointerShift/Size be enums so they are constants instead of globals
llvm-svn: 4571
2002-11-06 18:02:26 +00:00
Chris Lattner 2b79f4b7c3 Make PointerSize & Shift be enums
Fix problem with recursive merging

llvm-svn: 4570
2002-11-06 18:01:39 +00:00
Vikram S. Adve 075a8d7341 Make query operations non-const to allow demand-driven analyses.
llvm-svn: 4569
2002-11-06 17:17:55 +00:00
Vikram S. Adve e781ba560e An implementation of the bit-vector representation of sets.
llvm-svn: 4568
2002-11-06 17:14:14 +00:00
Vikram S. Adve 36da63f19f An interprocedural analysis pass that computes flow-insensitive
IP Mod and Ref information for every function and every call site.

llvm-svn: 4567
2002-11-06 17:02:03 +00:00
Vikram S. Adve 85cbece4a3 Add const version of function getNodeForValue:
const DSNodeHandle &getNodeForValue(Value *V) const.

llvm-svn: 4566
2002-11-06 17:00:41 +00:00
Vikram S. Adve 763e3f5752 Don't build llc symbols by default.
llvm-svn: 4565
2002-11-06 16:10:57 +00:00
Chris Lattner 5f60711713 New testcases
llvm-svn: 4563
2002-11-06 06:20:53 +00:00
Chris Lattner 48e37d9b97 Dramatically simplify internal DSNode representation, get implementation
*FULLY OPERATIONAL* and safe.  We are now capable of completely analyzing
at LEAST the Olden benchmarks + 181.mcf

llvm-svn: 4562
2002-11-06 06:20:27 +00:00
Chris Lattner 4c74bd8936 Remove stripscalars argument to cloneInto
llvm-svn: 4561
2002-11-06 06:18:56 +00:00
Chris Lattner 230f6926b0 Delete "StripScalars" argument to cloneInto method
llvm-svn: 4560
2002-11-06 06:16:30 +00:00
Chris Lattner 5f827fa57b Give passnames to the printer classes
llvm-svn: 4559
2002-11-06 06:16:08 +00:00
Chris Lattner e6a2968a5f New testcase to handle eventually
llvm-svn: 4558
2002-11-06 00:52:21 +00:00
Vikram S. Adve a281003e5e Remove a nasty little semi-colon someone introduced which
prevented any machine instrs from being printed!

llvm-svn: 4557
2002-11-06 00:34:26 +00:00
Nick Hildenbrandt 540257627f Typo fixed
llvm-svn: 4555
2002-11-05 22:57:43 +00:00
Nick Hildenbrandt 628db400e8 Added new tests
llvm-svn: 4554
2002-11-05 22:55:38 +00:00
Chris Lattner ce216753d2 New testcase
llvm-svn: 4553
2002-11-05 21:12:30 +00:00
Chris Lattner 4b24005a9b Add a note about the switch instruction
llvm-svn: 4551
2002-11-05 00:21:03 +00:00
Chris Lattner 6c213d673b Attempted fixes to the mergemap to make it work better.
Ended up disabling merge map merging completely.  It shall be removed.

llvm-svn: 4550
2002-11-05 00:01:58 +00:00
Chris Lattner 4331647781 Add a bunch of assertions
llvm-svn: 4549
2002-11-04 23:59:41 +00:00
Chris Lattner 2ce8c6890b Simplify code
llvm-svn: 4547
2002-11-04 21:06:54 +00:00
Chris Lattner d8be7b01f9 Sun can now use mallinfo()
llvm-svn: 4546
2002-11-04 21:05:21 +00:00