Chris Lattner
504ffdce51
New script for testrunner programs
...
llvm-svn: 6956
2003-06-28 22:52:52 +00:00
Chris Lattner
e2cd2f7591
Convert scripts from using explicit control flow to use the new grep-not script
...
llvm-svn: 6955
2003-06-28 22:44:42 +00:00
Chris Lattner
187311019f
Handle quoting right
...
llvm-svn: 6954
2003-06-28 22:43:58 +00:00
Chris Lattner
8c29536be8
Make the TestRunner tests not print out horrible things when they run
...
llvm-svn: 6953
2003-06-28 22:35:46 +00:00
Chris Lattner
d99b204afb
Fix testcase
...
llvm-svn: 6952
2003-06-28 22:31:37 +00:00
Chris Lattner
10e10f73c2
Initial checkin of grep-not script
...
llvm-svn: 6951
2003-06-28 22:28:31 +00:00
Chris Lattner
c9e6e7398e
Add the test/Scripts directory to the path used by TestRunner
...
llvm-svn: 6950
2003-06-28 22:21:39 +00:00
Chris Lattner
3850a1a1a2
Describe directory
...
llvm-svn: 6949
2003-06-28 22:20:19 +00:00
Chris Lattner
2767e8b33e
Improve the make rule
...
llvm-svn: 6948
2003-06-28 22:16:59 +00:00
Chris Lattner
1352a50cbb
Propagate globals graph from the local to bu to td globals graphs. This
...
fixes bug: DSGraph/buglobals.ll
llvm-svn: 6947
2003-06-28 22:14:55 +00:00
Chris Lattner
801e22514d
Drop references to globals who do exist in the globals graph, but are never
...
read or written to. Keep track of how many times this happens. This should
be good for deleting things like references to type information in C++ classes
llvm-svn: 6946
2003-06-28 22:10:58 +00:00
Chris Lattner
5f90382628
Avoid double negatives
...
llvm-svn: 6945
2003-06-28 21:58:28 +00:00
Chris Lattner
c059f6cce9
Add new DSGraph::ScalarMapTy typedef to avoid pulling representation issues
...
into callers of getScalarMap
llvm-svn: 6944
2003-06-28 21:57:13 +00:00
Chris Lattner
3b60ccaedb
Add new 'isComplete' method
...
llvm-svn: 6943
2003-06-28 21:56:42 +00:00
Chris Lattner
b70198e66b
New testcase
...
llvm-svn: 6942
2003-06-28 21:56:22 +00:00
Chris Lattner
cf6df3ef6b
New pass to perform DSA based optimizations. Initially we just support turning
...
globals into constants if we can prove it's safe
llvm-svn: 6941
2003-06-28 21:54:55 +00:00
Chris Lattner
eb7ed57473
New makefile for Dsgraph tests
...
llvm-svn: 6940
2003-06-28 21:16:38 +00:00
Chris Lattner
cd6865e0bc
Add DSGraph to the tests
...
llvm-svn: 6939
2003-06-28 21:16:27 +00:00
Chris Lattner
b94fc3e392
Avoid printing out huge structures or arrays if they are just filled with zeros
...
llvm-svn: 6938
2003-06-28 20:08:24 +00:00
Chris Lattner
1b9f2fdb0b
Add support for a new zeroinitializer token which can be used to get rid of
...
huge arrays of zero initialized values
llvm-svn: 6937
2003-06-28 20:01:34 +00:00
Chris Lattner
4493fbb3fe
Add test for new zeroinitializer token
...
llvm-svn: 6936
2003-06-28 20:01:03 +00:00
Chris Lattner
d77130be67
jmp_buf is really a pointer type that is passed around...
...
llvm-svn: 6935
2003-06-28 19:29:34 +00:00
Chris Lattner
c502341595
Add support for the Invoke instruction!
...
llvm-svn: 6934
2003-06-28 17:53:05 +00:00
Chris Lattner
bf3fe271ff
New testcase for invoke support
...
llvm-svn: 6933
2003-06-28 17:52:38 +00:00
Chris Lattner
0f66e1a23a
Preserve compatibility with non-gcc compilers
...
llvm-svn: 6932
2003-06-28 17:15:12 +00:00
Chris Lattner
769795ef2f
Fix bug: CBackend/2003-06-28-LinkOnceGlobalVars.llx
...
llvm-svn: 6931
2003-06-28 17:08:36 +00:00
Chris Lattner
792767578f
New testcase
...
llvm-svn: 6930
2003-06-28 17:07:23 +00:00
Chris Lattner
17ea08b804
Allow the inlining limit to be controlled from the command line!
...
llvm-svn: 6929
2003-06-28 15:57:04 +00:00
Chris Lattner
4d3ee0f3b1
Add support for 'unsigned' command line arguments
...
llvm-svn: 6928
2003-06-28 15:47:20 +00:00
John Criswell
6fc4a480f3
Added code to the clean rule that deletes files placed in the source directory.
...
These files interfer with a second build attempt.
llvm-svn: 6927
2003-06-27 17:03:20 +00:00
John Criswell
0ac290e21c
Added the OPTIONAL_DIRS variable for specifying optional directories to build.
...
llvm-svn: 6926
2003-06-27 16:58:44 +00:00
Chris Lattner
76e4750aab
New testcase that crashes the cfe
...
llvm-svn: 6925
2003-06-27 02:37:53 +00:00
Brian Gaeke
6f2c46cd52
Nice tasty llc fixes. These should fix LLC for x86 for everything in
...
SingleSource except oopack and Oscar. (Sorry, Oscar.)
include/llvm/Target/TargetInstrInfo.h: Remove virtual print method. Add
accessors for ImplicitUses/Defs.
lib/Target/TargetInstrInfo.cpp: Remove virtual print method. If you
really wanted this, just use MI->print(O, TM); instead...
lib/Target/X86:
FloatingPoint.cpp: ...like this.
X86InstrInfo.h: Remove virtual print method. Define the PrintImplUses
target-specific flag bit.
X86InstrInfo.def: Add the PrintImplUses flag to all the instructions
which implicitly use CL, because the assembler needs to see the CL in
order to generate the right instruction.
Printer.cpp: Ditch fnIndex at Chris's request. Now we use CurrentFnName
to name constants in the constant pool for each function instead. This
avoids keeping state between runOnMachineFunction() invocations, which
is a no-no. Having MangledGlobals be global is a bogon I'd like to get
rid of too, but making it a static member of Printer causes link errors
(why???).
Make NumberForBB into a member of Printer instead of a global, too.
Make printOp and printMemReference into methods of Printer.
X86InstrInfo::print is now Printer::printMachineInstruction, because
TargetInstrInfo::print is history. (Because of this, we have to qualify
the names of some TargetInstrInfo methods we call.)
Print out the ImplicitUses field of any instruction we print that has
the PrintImplUses bit set.
llvm-svn: 6924
2003-06-27 00:00:48 +00:00
Brian Gaeke
40d8d5e7c5
Here are the notes from our Reoptimizer meetings.
...
llvm-svn: 6923
2003-06-26 20:37:42 +00:00
Chris Lattner
9d2a41f43e
Modify script to support checkins on branches
...
llvm-svn: 6921
2003-06-26 20:11:07 +00:00
Brian Gaeke
7f1a3ef833
Number constants from constant pool as CPIf_i where f is the function index
...
and i is the constant pool index.
llvm-svn: 6920
2003-06-26 18:02:30 +00:00
Chris Lattner
2fec73e216
Add a testcase to ensure that ctor/dtor attributes work in C
...
llvm-svn: 6919
2003-06-26 14:56:36 +00:00
Chris Lattner
6b54665aa9
Add support to globaldce for deleting dead function prototypes
...
llvm-svn: 6918
2003-06-26 05:41:18 +00:00
Chris Lattner
3dc8d444ff
When internalizing global ctor/dtor list, also mark it constant. This is gross, but
...
until DSA is working all of the time and is totally reliable, we do this.
llvm-svn: 6917
2003-06-26 05:30:40 +00:00
Chris Lattner
caa0d010d6
Run the simplify CFG pass after instcombine which has the effect of deleting
...
ALL of the global ctor/dtor stuff if it is not used!
llvm-svn: 6916
2003-06-26 05:29:50 +00:00
Chris Lattner
4b18955832
New variable which is just the GCCLD tool
...
llvm-svn: 6914
2003-06-26 05:28:00 +00:00
Chris Lattner
44730af626
Implement more aggressive folding of constant GEP instructions
...
llvm-svn: 6913
2003-06-26 05:22:45 +00:00
Chris Lattner
0cc143577c
Add support for elimination of load instruction from global constants
...
llvm-svn: 6912
2003-06-26 05:06:25 +00:00
Chris Lattner
d0ba6d6258
add tests for elimination of loads
...
llvm-svn: 6911
2003-06-26 05:05:51 +00:00
Chris Lattner
622df692df
Move the instcombine pass before globaldce, so that if globals are made dead by instcombine, that they can be deleted.
...
llvm-svn: 6910
2003-06-26 04:32:31 +00:00
Chris Lattner
d99475d41a
Don't register the destructors if the list is empty
...
llvm-svn: 6909
2003-06-26 04:20:38 +00:00
Brian Gaeke
ff614a8a0c
Integrate the C writer's name mangler.
...
llvm-svn: 6908
2003-06-25 22:00:39 +00:00
Brian Gaeke
065bf4bab2
First draft of X86 LLC backend. This should be OK for small programs like
...
Shootout, but it has some issues with bigger programs. Work in progress.
llvm-svn: 6907
2003-06-25 18:01:07 +00:00
Chris Lattner
1681e785b3
Add test for instcombine -1*X -> -X
...
llvm-svn: 6905
2003-06-25 17:10:34 +00:00
Chris Lattner
ebbc28f553
Instcombine: X * -1 -> -X
...
llvm-svn: 6904
2003-06-25 17:09:20 +00:00