Chris Lattner
d2a6fc397e
Add support for 'unsigned' command line arguments
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6928 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-28 15:47:20 +00:00
John Criswell
3a56364f00
Added code to the clean rule that deletes files placed in the source directory.
...
These files interfer with a second build attempt.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6927 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-27 17:03:20 +00:00
John Criswell
2a6530f91a
Added the OPTIONAL_DIRS variable for specifying optional directories to build.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6926 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-27 16:58:44 +00:00
Chris Lattner
acd48e4383
New testcase that crashes the cfe
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6925 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-27 02:37:53 +00:00
Brian Gaeke
d7908f679e
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6924 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-27 00:00:48 +00:00
Brian Gaeke
f818386604
Here are the notes from our Reoptimizer meetings.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6923 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-26 20:37:42 +00:00
Chris Lattner
c0f33b5e8b
Modify script to support checkins on branches
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6921 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-26 20:11:07 +00:00
Brian Gaeke
5e00157c5a
Number constants from constant pool as CPIf_i where f is the function index
...
and i is the constant pool index.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6920 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-26 18:02:30 +00:00
Chris Lattner
102f9015c6
Add a testcase to ensure that ctor/dtor attributes work in C
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6919 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-26 14:56:36 +00:00
Chris Lattner
b12b75365a
Add support to globaldce for deleting dead function prototypes
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6918 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-26 05:41:18 +00:00
Chris Lattner
81d4e14449
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6917 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-26 05:30:40 +00:00
Chris Lattner
dc52353833
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!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6916 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-26 05:29:50 +00:00
Chris Lattner
083de22d9f
New variable which is just the GCCLD tool
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6914 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-26 05:28:00 +00:00
Chris Lattner
6a2a60aaf3
Implement more aggressive folding of constant GEP instructions
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6913 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-26 05:22:45 +00:00
Chris Lattner
833b8a4181
Add support for elimination of load instruction from global constants
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6912 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-26 05:06:25 +00:00
Chris Lattner
b75e1e79d7
add tests for elimination of loads
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6911 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-26 05:05:51 +00:00
Chris Lattner
293a33a911
Move the instcombine pass before globaldce, so that if globals are made dead by instcombine, that they can be deleted.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6910 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-26 04:32:31 +00:00
Chris Lattner
5d243c2fa5
Don't register the destructors if the list is empty
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6909 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-26 04:20:38 +00:00
Brian Gaeke
bc601fe3e7
Integrate the C writer's name mangler.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6908 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-25 22:00:39 +00:00
Brian Gaeke
01d79ff86d
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6907 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-25 18:01:07 +00:00
Chris Lattner
d4c914f062
Add test for instcombine -1*X -> -X
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6905 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-25 17:10:34 +00:00
Chris Lattner
0af1fab019
Instcombine: X * -1 -> -X
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6904 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-25 17:09:20 +00:00
Chris Lattner
5db61fdc8a
Fix bug: LevelRaise/2003-06-25-ExprAnalysis.ll
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6903 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-25 17:09:03 +00:00
Chris Lattner
262a79123b
New testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6902 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-25 17:08:34 +00:00
Chris Lattner
83c39d2edb
Fix bug: Mem2Reg/2003-06-26-IterativePromote.ll
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6901 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-25 14:58:56 +00:00
Chris Lattner
4f7ae85eda
New testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6900 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-25 14:55:30 +00:00
Chris Lattner
f56703b608
Remove completed tasks
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6899 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-25 14:31:06 +00:00
Joel Stanley
54f6032dae
- Fixed name mangling conditions to handle 'linkonce' linkage type. In
...
particular, name mangling for GlobalValues only occurs when the linkage type is
internal or when the name must be mangled to avoid a collision. See comments in
CWriter::getValueName for more information.
- 'inline' keyword is now emitted for functions with 'linkonce' linkage type.
- Fixed typos.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6898 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-25 04:52:09 +00:00
Chris Lattner
898e0e42e3
Try to run cleanups even if nothing was modified in the preview passes
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6897 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-25 04:13:52 +00:00
Chris Lattner
06c818e717
Run dead arg elimination, and tell it that it's ok to hack up non-internal functions
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6896 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-25 04:13:36 +00:00
Chris Lattner
9b2a14b6f1
Add argument to DAE to allow operation on non-internal functions
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6895 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-25 04:12:49 +00:00
Brian Gaeke
e99f4cf4ac
It seems likely that floats would need a cast too, because they are
...
ordinarily promoted to doubles.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6894 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-25 03:05:33 +00:00
Chris Lattner
484147db9c
New testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6893 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-24 23:40:27 +00:00
Chris Lattner
2d8270c92f
Don't print message, remove temp files
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6892 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-24 23:38:09 +00:00
Chris Lattner
837e42ccef
Fix bug: ADCE/2003-06-24-BadSuccessor.ll
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6891 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-24 23:02:45 +00:00
Chris Lattner
77825a3f81
New testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6890 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-24 22:58:05 +00:00
Chris Lattner
a89ab2c355
Make assertion more descriptive
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6889 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-24 22:20:19 +00:00
Chris Lattner
6932f6b606
Modernize testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6888 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-24 21:51:03 +00:00
Chris Lattner
99c91e021a
Do not mark ALL terminators live if any instruciton in the block is live. We only
...
want to mark it live if it is an unconditional branch. This fixes bug:
ADCE/2002-05-28-Crash.ll and makes this pass _much_ more useful.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6887 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-24 21:49:45 +00:00
Chris Lattner
e4b79d3324
modernize testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6886 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-24 21:23:50 +00:00
Chris Lattner
ad0f417d7a
Make sure adce is basically working!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6885 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-24 21:22:09 +00:00
Chris Lattner
82c94e2523
Modernize testcases
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6884 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-24 21:21:31 +00:00
Chris Lattner
38b5ae4b48
Fix bug: SCCP/2003-06-24-OverdefinedPHIValue.ll
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6883 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-24 20:29:52 +00:00
Chris Lattner
1e3af1ef87
New testcase
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6882 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-24 20:29:36 +00:00
Chris Lattner
fcd74e2e31
Fix bug: TailDup/2003-06-24-Simpleloop.ll
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6881 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-24 19:48:06 +00:00
Chris Lattner
d0d09e6c8f
Testcase reduced by bugpoint
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6880 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-24 19:17:37 +00:00
Chris Lattner
697381528f
Run the tail dup tests
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6879 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-24 18:49:51 +00:00
Joel Stanley
b1b3fb3b6a
Prevented inclusion of (non-existent) stdint.h on Sparc.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6876 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-24 02:46:47 +00:00
Chris Lattner
79d35b3f8b
Implement new transforms:
...
Replace (cast (sub A, B) to bool) -> (setne A, B)
Replace (cast (add A, B) to bool) -> (setne A, -B)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6873 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-23 21:59:52 +00:00
Chris Lattner
8c1ab94bae
Fix comment
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6872 91177308-0d34-0410-b5e6-96231b3b80d8
2003-06-23 21:52:59 +00:00