Chris Lattner
1b09a9ab68
Really minor cleanups
...
llvm-svn: 3549
2002-08-30 22:53:30 +00:00
Chris Lattner
e083fe9e34
AsmParser now depends on clients to verify that input is well formed
...
llvm-svn: 3548
2002-08-30 22:52:23 +00:00
Chris Lattner
f2eb70fc0b
Minor cleanups so I can remove BasicValueNumbering.h
...
llvm-svn: 3544
2002-08-30 22:30:36 +00:00
Chris Lattner
c05581fb31
initial implementation of ValueNumbering interface.
...
llvm-svn: 3541
2002-08-30 20:29:02 +00:00
Chris Lattner
2dd49e525c
Initial implementation of value numbering for load instructions
...
llvm-svn: 3540
2002-08-30 20:28:10 +00:00
Chris Lattner
216edd4ea0
- Use Pass::AnalysisImpls instead of findAnalysisGroupMemeber
...
- -debug-pass=Details now prints implementation class names for analysis
groups
- Rework how AnalysisGroups are resolved to be simpler and better.
llvm-svn: 3535
2002-08-30 20:25:01 +00:00
Chris Lattner
b3708e267e
- PassManager prints analysis sets nicer
...
- Use Pass::AnalysisImpls instead of findAnalysisGroupMemeber
llvm-svn: 3534
2002-08-30 20:23:45 +00:00
Chris Lattner
b2a31090b1
- GCSE now no longer counts instructions not removed (due to no common
...
dominator as being removed)
- GCSE now uses new Value #'ing interface, instead of dealing with AA itself
- GCSE worklist implementation much simpler, class cleaned up.
llvm-svn: 3533
2002-08-30 20:22:29 +00:00
Chris Lattner
abb16604fd
Remove unneeded #include
...
llvm-svn: 3524
2002-08-29 20:08:55 +00:00
Anand Shukla
bcba516097
moved this file from lib/Reoptimizer/Mapping
...
llvm-svn: 3519
2002-08-27 22:47:33 +00:00
Anand Shukla
2762328f9e
Makefile for new sub directory
...
llvm-svn: 3518
2002-08-27 22:46:38 +00:00
Anand Shukla
fe9eda7fb1
Added Mapping subdir
...
llvm-svn: 3517
2002-08-27 22:45:49 +00:00
Chris Lattner
c837dbc39f
Implement ConstantPointerRef support, & ConstantExpr support for Cast, GEP & Add.
...
llvm-svn: 3516
2002-08-27 22:33:45 +00:00
Anand Shukla
a1cd3fedb5
added Reoptimizer in Makefile DIRS
...
llvm-svn: 3515
2002-08-27 22:05:53 +00:00
Anand Shukla
f246131208
Added getFunctionInfo and MappingInfoForFunction pass, and fixed the earlier error in compiling
...
llvm-svn: 3513
2002-08-27 16:45:17 +00:00
Chris Lattner
91680b53f4
Fix bug: test/Regression/CBackend/2002-08-26-IndirectCallTest.ll
...
llvm-svn: 3511
2002-08-26 20:50:09 +00:00
Chris Lattner
81fabb05e5
Add support for turning an array of characters into a string.
...
llvm-svn: 3509
2002-08-26 17:53:56 +00:00
Anand Shukla
e87291ef83
Changed so it gets linked properly
...
llvm-svn: 3508
2002-08-26 16:45:19 +00:00
Vikram S. Adve
8a5c9b15ae
Fix the way parens are printed around "*ptrName" so that
...
no parens are printed around *, **, ... alone, except if
it is a pointer type for which no name should be printed,
as in the result of a cast.
llvm-svn: 3506
2002-08-25 20:00:08 +00:00
Vikram S. Adve
872c7f9a9e
Use newly-added type inspection support in InstTreeNode subclasses.
...
llvm-svn: 3501
2002-08-24 21:02:09 +00:00
Vikram S. Adve
8c1e3f7310
Moved code here to extract memory instruction indices and to check
...
whether FoldGetElemNodes should be called. This is machine-independent
but was in the Sparc directory. This is in a new function: GetMemInstArgs.
llvm-svn: 3500
2002-08-24 21:00:08 +00:00
Vikram S. Adve
bee7297f26
LoadIdx non-terminal no longer needed.
...
llvm-svn: 3499
2002-08-24 20:58:04 +00:00
Vikram S. Adve
541862fbf3
Sign-extend values used to index arrays (and Simplify
...
SetOperandsForMemInstr significantly). Load and Store
no longer have any indices. Eliminate spurious sign-extension
on a cast to float/double.
llvm-svn: 3498
2002-08-24 20:56:53 +00:00
Vikram S. Adve
9068efdce6
Fix sign-extension: it needs to happen *after* multiplying by type size.
...
llvm-svn: 3497
2002-08-24 14:44:58 +00:00
Vikram S. Adve
bc27523001
Sign-extend array index expressions to work correctly on non-32 bit machines.
...
llvm-svn: 3496
2002-08-24 14:44:23 +00:00
Chris Lattner
65217ff294
- instcombine demorgan's law: and (not A), (not B) == not (or A, B)
...
llvm-svn: 3495
2002-08-23 18:32:43 +00:00
Anand Shukla
83a3654838
Changed default value of 3rd parameter in function definition
...
llvm-svn: 3492
2002-08-23 10:55:49 +00:00
Anand Shukla
492a263ffd
Added #include <alloca.h>
...
llvm-svn: 3491
2002-08-23 10:54:26 +00:00
Vikram S. Adve
b342572667
Simplify previous hack slightly.
...
llvm-svn: 3490
2002-08-23 03:21:01 +00:00
Vikram S. Adve
1c84243d47
Force sign-extension for uint array indexes from 32-bit to 64-bits
...
since uint is not normally sign-extended when casting to uint64_t.
llvm-svn: 3489
2002-08-23 02:55:51 +00:00
Chris Lattner
02fe752fbd
Eliminated the MemAccessInst class, folding contents into GEP class.
...
llvm-svn: 3488
2002-08-22 23:37:24 +00:00
Chris Lattner
dfb3a2cd07
Eliminated the MemAccessInst class, folding contents into GEP class.
...
llvm-svn: 3487
2002-08-22 23:37:20 +00:00
Chris Lattner
cd709cbf53
Load & StoreInst no longer derive from MemAccessInst, so we don't have
...
to handle indexing anymore
llvm-svn: 3485
2002-08-22 22:49:05 +00:00
Chris Lattner
030effa42c
Load & StoreInst no longer derive from MemAccessInst, so we don't have
...
to handle indexing anymore
llvm-svn: 3484
2002-08-22 22:48:55 +00:00
Chris Lattner
62b42ce764
*** empty log message ***
...
llvm-svn: 3483
2002-08-22 22:48:32 +00:00
Chris Lattner
4011c62a8d
Load and Store now no longer derive from MemAccessInst. Indexing a load or
...
store is not possible anymore.
llvm-svn: 3482
2002-08-22 22:47:47 +00:00
Chris Lattner
d922a84930
doxygenize comments
...
llvm-svn: 3481
2002-08-22 22:46:39 +00:00
Chris Lattner
a51fa88702
Add capability of using pointer analysis to LICM
...
llvm-svn: 3478
2002-08-22 21:39:55 +00:00
Chris Lattner
faea121df7
Remove long obsolete comments
...
llvm-svn: 3476
2002-08-22 21:25:54 +00:00
Chris Lattner
e46f5528a3
Fix bug: test/Regression/Assembler/2002-08-22-DominanceProblem.ll
...
llvm-svn: 3474
2002-08-22 20:39:29 +00:00
Chris Lattner
f6c0efa754
Instcombine PHI's of the form %PN = phi PN, X into X and
...
%PN = phi PN, PN, PN into 0 (because the phi must not be reachable)
llvm-svn: 3470
2002-08-22 20:22:01 +00:00
Chris Lattner
3a4a335ad8
Add missing #include
...
llvm-svn: 3467
2002-08-22 18:57:09 +00:00
Chris Lattner
7d58f8ddc0
Check-in new alias analysis infrastructure
...
llvm-svn: 3465
2002-08-22 18:25:32 +00:00
Chris Lattner
879cb97f63
Convert GCSE pass to use new alias analysis infrastructure
...
llvm-svn: 3463
2002-08-22 18:24:48 +00:00
Chris Lattner
bb53bba9d0
Do not generate load/store instructions with indexing.
...
llvm-svn: 3461
2002-08-22 16:41:31 +00:00
Chris Lattner
f18177ea01
Change code to not use the copyOperands method added to User. It's now
...
more efficient to boot.
llvm-svn: 3453
2002-08-22 15:57:58 +00:00
Vikram S. Adve
3f76984952
dumpNode() does not need to print MachineInstrs.
...
llvm-svn: 3444
2002-08-22 02:59:46 +00:00
Vikram S. Adve
a6100862d3
Fix two resource names.
...
llvm-svn: 3443
2002-08-22 02:58:57 +00:00
Vikram S. Adve
c3a5e4e0f8
Add AsmPrinter::ConstantExprToString, which writes out a ConstantExpr
...
as an expression.
llvm-svn: 3442
2002-08-22 02:58:36 +00:00
Vikram S. Adve
2d85a9976a
Eliminate bool, boolreg and boolconst nonterminals, and just use
...
reg and Constant instead.
llvm-svn: 3441
2002-08-22 02:56:10 +00:00