oota-llvm.git
21 years agoNice tasty llc fixes. These should fix LLC for x86 for everything in
Brian Gaeke [Fri, 27 Jun 2003 00:00:48 +0000 (00:00 +0000)]
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

21 years agoHere are the notes from our Reoptimizer meetings.
Brian Gaeke [Thu, 26 Jun 2003 20:37:42 +0000 (20:37 +0000)]
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

21 years agoModify script to support checkins on branches
Chris Lattner [Thu, 26 Jun 2003 20:11:07 +0000 (20:11 +0000)]
Modify script to support checkins on branches

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6921 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoNumber constants from constant pool as CPIf_i where f is the function index
Brian Gaeke [Thu, 26 Jun 2003 18:02:30 +0000 (18:02 +0000)]
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

21 years agoAdd a testcase to ensure that ctor/dtor attributes work in C
Chris Lattner [Thu, 26 Jun 2003 14:56:36 +0000 (14:56 +0000)]
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

21 years agoAdd support to globaldce for deleting dead function prototypes
Chris Lattner [Thu, 26 Jun 2003 05:41:18 +0000 (05:41 +0000)]
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

21 years agoWhen internalizing global ctor/dtor list, also mark it constant. This is gross, but
Chris Lattner [Thu, 26 Jun 2003 05:30:40 +0000 (05:30 +0000)]
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

21 years agoRun the simplify CFG pass after instcombine which has the effect of deleting
Chris Lattner [Thu, 26 Jun 2003 05:29:50 +0000 (05:29 +0000)]
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

21 years agoNew variable which is just the GCCLD tool
Chris Lattner [Thu, 26 Jun 2003 05:28:00 +0000 (05:28 +0000)]
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

21 years agoImplement more aggressive folding of constant GEP instructions
Chris Lattner [Thu, 26 Jun 2003 05:22:45 +0000 (05:22 +0000)]
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

21 years agoAdd support for elimination of load instruction from global constants
Chris Lattner [Thu, 26 Jun 2003 05:06:25 +0000 (05:06 +0000)]
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

21 years agoadd tests for elimination of loads
Chris Lattner [Thu, 26 Jun 2003 05:05:51 +0000 (05:05 +0000)]
add tests for elimination of loads

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6911 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoMove the instcombine pass before globaldce, so that if globals are made dead by instc...
Chris Lattner [Thu, 26 Jun 2003 04:32:31 +0000 (04:32 +0000)]
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

21 years agoDon't register the destructors if the list is empty
Chris Lattner [Thu, 26 Jun 2003 04:20:38 +0000 (04:20 +0000)]
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

21 years agoIntegrate the C writer's name mangler.
Brian Gaeke [Wed, 25 Jun 2003 22:00:39 +0000 (22:00 +0000)]
Integrate the C writer's name mangler.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6908 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFirst draft of X86 LLC backend. This should be OK for small programs like
Brian Gaeke [Wed, 25 Jun 2003 18:01:07 +0000 (18:01 +0000)]
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

21 years agoAdd test for instcombine -1*X -> -X
Chris Lattner [Wed, 25 Jun 2003 17:10:34 +0000 (17:10 +0000)]
Add test for instcombine -1*X -> -X

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6905 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoInstcombine: X * -1 -> -X
Chris Lattner [Wed, 25 Jun 2003 17:09:20 +0000 (17:09 +0000)]
Instcombine:  X * -1 -> -X

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6904 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFix bug: LevelRaise/2003-06-25-ExprAnalysis.ll
Chris Lattner [Wed, 25 Jun 2003 17:09:03 +0000 (17:09 +0000)]
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

21 years agoNew testcase
Chris Lattner [Wed, 25 Jun 2003 17:08:34 +0000 (17:08 +0000)]
New testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6902 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFix bug: Mem2Reg/2003-06-26-IterativePromote.ll
Chris Lattner [Wed, 25 Jun 2003 14:58:56 +0000 (14:58 +0000)]
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

21 years agoNew testcase
Chris Lattner [Wed, 25 Jun 2003 14:55:30 +0000 (14:55 +0000)]
New testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6900 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoRemove completed tasks
Chris Lattner [Wed, 25 Jun 2003 14:31:06 +0000 (14:31 +0000)]
Remove completed tasks

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6899 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago- Fixed name mangling conditions to handle 'linkonce' linkage type. In
Joel Stanley [Wed, 25 Jun 2003 04:52:09 +0000 (04:52 +0000)]
- 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

21 years agoTry to run cleanups even if nothing was modified in the preview passes
Chris Lattner [Wed, 25 Jun 2003 04:13:52 +0000 (04:13 +0000)]
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

21 years agoRun dead arg elimination, and tell it that it's ok to hack up non-internal functions
Chris Lattner [Wed, 25 Jun 2003 04:13:36 +0000 (04:13 +0000)]
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

21 years agoAdd argument to DAE to allow operation on non-internal functions
Chris Lattner [Wed, 25 Jun 2003 04:12:49 +0000 (04:12 +0000)]
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

21 years agoIt seems likely that floats would need a cast too, because they are
Brian Gaeke [Wed, 25 Jun 2003 03:05:33 +0000 (03:05 +0000)]
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

21 years agoNew testcase
Chris Lattner [Tue, 24 Jun 2003 23:40:27 +0000 (23:40 +0000)]
New testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6893 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoDon't print message, remove temp files
Chris Lattner [Tue, 24 Jun 2003 23:38:09 +0000 (23:38 +0000)]
Don't print message, remove temp files

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6892 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFix bug: ADCE/2003-06-24-BadSuccessor.ll
Chris Lattner [Tue, 24 Jun 2003 23:02:45 +0000 (23:02 +0000)]
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

21 years agoNew testcase
Chris Lattner [Tue, 24 Jun 2003 22:58:05 +0000 (22:58 +0000)]
New testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6890 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoMake assertion more descriptive
Chris Lattner [Tue, 24 Jun 2003 22:20:19 +0000 (22:20 +0000)]
Make assertion more descriptive

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6889 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoModernize testcase
Chris Lattner [Tue, 24 Jun 2003 21:51:03 +0000 (21:51 +0000)]
Modernize testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6888 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoDo not mark ALL terminators live if any instruciton in the block is live. We only
Chris Lattner [Tue, 24 Jun 2003 21:49:45 +0000 (21:49 +0000)]
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

21 years agomodernize testcase
Chris Lattner [Tue, 24 Jun 2003 21:23:50 +0000 (21:23 +0000)]
modernize testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6886 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoMake sure adce is basically working!
Chris Lattner [Tue, 24 Jun 2003 21:22:09 +0000 (21:22 +0000)]
Make sure adce is basically working!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6885 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoModernize testcases
Chris Lattner [Tue, 24 Jun 2003 21:21:31 +0000 (21:21 +0000)]
Modernize testcases

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6884 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFix bug: SCCP/2003-06-24-OverdefinedPHIValue.ll
Chris Lattner [Tue, 24 Jun 2003 20:29:52 +0000 (20:29 +0000)]
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

21 years agoNew testcase
Chris Lattner [Tue, 24 Jun 2003 20:29:36 +0000 (20:29 +0000)]
New testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6882 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFix bug: TailDup/2003-06-24-Simpleloop.ll
Chris Lattner [Tue, 24 Jun 2003 19:48:06 +0000 (19:48 +0000)]
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

21 years agoTestcase reduced by bugpoint
Chris Lattner [Tue, 24 Jun 2003 19:17:37 +0000 (19:17 +0000)]
Testcase reduced by bugpoint

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6880 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoRun the tail dup tests
Chris Lattner [Tue, 24 Jun 2003 18:49:51 +0000 (18:49 +0000)]
Run the tail dup tests

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6879 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoPrevented inclusion of (non-existent) stdint.h on Sparc.
Joel Stanley [Tue, 24 Jun 2003 02:46:47 +0000 (02:46 +0000)]
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

21 years agoImplement new transforms:
Chris Lattner [Mon, 23 Jun 2003 21:59:52 +0000 (21:59 +0000)]
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

21 years agoFix comment
Chris Lattner [Mon, 23 Jun 2003 21:52:59 +0000 (21:52 +0000)]
Fix comment

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6872 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoYet another testcase
Chris Lattner [Mon, 23 Jun 2003 21:49:25 +0000 (21:49 +0000)]
Yet another testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6871 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoTest cases for when casts to bool can be eliminated
Chris Lattner [Mon, 23 Jun 2003 21:48:26 +0000 (21:48 +0000)]
Test cases for when casts to bool can be eliminated

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6870 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFix 2003-06-23-PromotedExprs.llx -- if we are adding two bytes we better
Brian Gaeke [Mon, 23 Jun 2003 20:00:51 +0000 (20:00 +0000)]
Fix 2003-06-23-PromotedExprs.llx -- if we are adding two bytes we better
explicitly cast the result to be a byte, or C will gleefully promote it
to int.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6869 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoNew test case for C Writer regression found in 256.bzip2
Brian Gaeke [Mon, 23 Jun 2003 19:59:17 +0000 (19:59 +0000)]
New test case for C Writer regression found in 256.bzip2

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6868 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAllow .llx testcases (i.e., those that contain explicit RUN: stmts.)
Brian Gaeke [Mon, 23 Jun 2003 19:58:50 +0000 (19:58 +0000)]
Allow .llx testcases (i.e., those that contain explicit RUN: stmts.)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6867 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoInclude <cmath> instead of <math.h>
Brian Gaeke [Mon, 23 Jun 2003 19:41:55 +0000 (19:41 +0000)]
Include <cmath> instead of <math.h>
Remove isnan; it's too unportable to handle cleanly at this point.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6866 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd support for GCC 3.3
Chris Lattner [Mon, 23 Jun 2003 19:16:20 +0000 (19:16 +0000)]
Add support for GCC 3.3

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6865 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoNew testcase for a GCC bug
Chris Lattner [Mon, 23 Jun 2003 18:06:21 +0000 (18:06 +0000)]
New testcase for a GCC bug

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6863 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoavoid dividing by zero when dealing with zero sized types (like [0 x double])
Chris Lattner [Mon, 23 Jun 2003 17:36:49 +0000 (17:36 +0000)]
avoid dividing by zero when dealing with zero sized types (like [0 x double])

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6862 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd the padding needed for variable-size alloca's, which should work now.
Vikram S. Adve [Mon, 23 Jun 2003 02:13:57 +0000 (02:13 +0000)]
Add the padding needed for variable-size alloca's, which should work now.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6859 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoNew testcase narrowed down by Joel
Chris Lattner [Sun, 22 Jun 2003 21:40:38 +0000 (21:40 +0000)]
New testcase narrowed down by Joel

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6858 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFix bug: InstCombine/2003-06-22-ConstantExprCrash.ll
Chris Lattner [Sun, 22 Jun 2003 20:48:30 +0000 (20:48 +0000)]
Fix bug: InstCombine/2003-06-22-ConstantExprCrash.ll

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6857 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd paranoia checking
Chris Lattner [Sun, 22 Jun 2003 20:46:00 +0000 (20:46 +0000)]
Add paranoia checking

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6856 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoNew testcase
Chris Lattner [Sun, 22 Jun 2003 20:45:39 +0000 (20:45 +0000)]
New testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6855 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoNew testcases
Chris Lattner [Sun, 22 Jun 2003 20:32:35 +0000 (20:32 +0000)]
New testcases

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6854 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoInitial checkin
Chris Lattner [Sun, 22 Jun 2003 20:30:00 +0000 (20:30 +0000)]
Initial checkin

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6853 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoTest change
Chris Lattner [Sun, 22 Jun 2003 20:25:27 +0000 (20:25 +0000)]
Test change

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6852 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd tail duplication pass to the pipeline, move the verifier pass to the front
Chris Lattner [Sun, 22 Jun 2003 20:11:45 +0000 (20:11 +0000)]
Add tail duplication pass to the pipeline, move the verifier pass to the front
Other minor reorganizations

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6849 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd prototype for tail-dup pass
Chris Lattner [Sun, 22 Jun 2003 20:10:42 +0000 (20:10 +0000)]
Add prototype for tail-dup pass

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6847 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoInitial checkin of Tail duplication pass.
Chris Lattner [Sun, 22 Jun 2003 20:10:28 +0000 (20:10 +0000)]
Initial checkin of Tail duplication pass.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6846 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoDo not use the inefficient, fixed function, CBW, CDQ, ... instructions
Chris Lattner [Sun, 22 Jun 2003 03:31:18 +0000 (03:31 +0000)]
Do not use the inefficient, fixed function, CBW, CDQ, ... instructions

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6844 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoGet rid of WORDSIZE macro which can pollute untold numbers of translation units
Chris Lattner [Sun, 22 Jun 2003 03:09:10 +0000 (03:09 +0000)]
Get rid of WORDSIZE macro which can pollute untold numbers of translation units

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6843 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoRemove a ton of extraneous #includes
Chris Lattner [Sun, 22 Jun 2003 03:08:05 +0000 (03:08 +0000)]
Remove a ton of extraneous #includes

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6842 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoWhoops, accidentally lost a #include
Chris Lattner [Sun, 22 Jun 2003 03:04:58 +0000 (03:04 +0000)]
Whoops, accidentally lost a #include

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6841 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoRemove support for the MultiObject flag, which was fundamentally broken
Chris Lattner [Sun, 22 Jun 2003 03:03:52 +0000 (03:03 +0000)]
Remove support for the MultiObject flag, which was fundamentally broken

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6840 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoRemove support for the MultiObject flag, which was just fundamentally broken
Chris Lattner [Sun, 22 Jun 2003 03:03:24 +0000 (03:03 +0000)]
Remove support for the MultiObject flag, which was just fundamentally broken

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6839 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoInstcombine cast (getelementptr Ptr, 0, 0, 0) to ... into: cast Ptr to ...
Chris Lattner [Sat, 21 Jun 2003 23:12:02 +0000 (23:12 +0000)]
Instcombine cast (getelementptr Ptr, 0, 0, 0) to ... into: cast Ptr to ...
This fixes type safety problems in a variety of benchmarks that were confusing
DSA.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6837 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd testcase for reason that typesafety of power is being broken
Chris Lattner [Sat, 21 Jun 2003 22:59:39 +0000 (22:59 +0000)]
Add testcase for reason that typesafety of power is being broken

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6836 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoClarify that variables must be global
Chris Lattner [Sat, 21 Jun 2003 21:45:56 +0000 (21:45 +0000)]
Clarify that variables must be global

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6835 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoupdate documentation about columns
Chris Lattner [Sat, 21 Jun 2003 20:09:01 +0000 (20:09 +0000)]
update documentation about columns

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6833 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoMinor simplification to 64-bit instsel
Chris Lattner [Sat, 21 Jun 2003 18:15:27 +0000 (18:15 +0000)]
Minor simplification to 64-bit instsel

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6831 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFor 16 and 32-bit multiplies, use the IMUL instruction instead of the MUL instruction.
Chris Lattner [Sat, 21 Jun 2003 17:16:58 +0000 (17:16 +0000)]
For 16 and 32-bit multiplies, use the IMUL instruction instead of the MUL instruction.
This allows us to not force the use of the EAX/AX registers!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6830 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd IMULr16 & IMULr32 instructions
Chris Lattner [Sat, 21 Jun 2003 17:13:35 +0000 (17:13 +0000)]
Add IMULr16 & IMULr32 instructions

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6829 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoGenerate code for LONG indexes to getelementptr instructions more efficiently
Chris Lattner [Sat, 21 Jun 2003 16:01:24 +0000 (16:01 +0000)]
Generate code for LONG indexes to getelementptr instructions more efficiently

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6828 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoSome preprocessors doen't support // comments and get confused
Chris Lattner [Fri, 20 Jun 2003 23:14:50 +0000 (23:14 +0000)]
Some preprocessors doen't support // comments and get confused

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6821 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoRemove obsolete support for LD_LIBRARY_PATH
Chris Lattner [Fri, 20 Jun 2003 23:01:23 +0000 (23:01 +0000)]
Remove obsolete support for LD_LIBRARY_PATH

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6815 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoUpdated to the new Makefile.common.
John Criswell [Fri, 20 Jun 2003 21:37:31 +0000 (21:37 +0000)]
Updated to the new Makefile.common.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6814 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoReverted back to revision 1.91.
John Criswell [Fri, 20 Jun 2003 21:24:54 +0000 (21:24 +0000)]
Reverted back to revision 1.91.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6812 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdded a hack that takes the path relative to the home directory into account
John Criswell [Fri, 20 Jun 2003 18:35:39 +0000 (18:35 +0000)]
Added a hack that takes the path relative to the home directory into account
if a home directory is provided by the environment.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6805 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoThe modifications to LD_LIBRARY_PATH now add the specified paths to the
John Criswell [Fri, 20 Jun 2003 16:14:49 +0000 (16:14 +0000)]
The modifications to LD_LIBRARY_PATH now add the specified paths to the
beginning of LD_LIBRARY_PATH as opposed to simply replacing it.
This allows users to use LD_LIBRARY_PATH when running tests (useful for
when they have installed their own version of GCC).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6800 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoMinor cleanups
Chris Lattner [Fri, 20 Jun 2003 15:49:04 +0000 (15:49 +0000)]
Minor cleanups

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6799 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFix problem building optmized build
Chris Lattner [Fri, 20 Jun 2003 15:41:57 +0000 (15:41 +0000)]
Fix problem building optmized build

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6798 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFix the build. :(
Chris Lattner [Fri, 20 Jun 2003 14:36:52 +0000 (14:36 +0000)]
Fix the build.  :(

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6797 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoRDCCR defines arg. #1, not arg. #2.
Vikram S. Adve [Fri, 20 Jun 2003 11:32:11 +0000 (11:32 +0000)]
RDCCR defines arg. #1, not arg. #2.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6796 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoChanges to privatize NodeType
Chris Lattner [Thu, 19 Jun 2003 21:15:26 +0000 (21:15 +0000)]
Changes to privatize NodeType

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6795 91177308-0d34-0410-b5e6-96231b3b80d8

21 years ago* Changes to make NodeType be private to DSNode.
Chris Lattner [Thu, 19 Jun 2003 21:15:11 +0000 (21:15 +0000)]
* Changes to make NodeType be private to DSNode.
* Add new MultiObject flag to DSNode which keeps track of whether or not
  multiple objects have been merged into the node, allowing must-alias info
  to be tracked.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6794 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoLots of changes to make the NodeType field private to DSNode.
Chris Lattner [Thu, 19 Jun 2003 21:14:22 +0000 (21:14 +0000)]
Lots of changes to make the NodeType field private to DSNode.
Add new MultiObject flag

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6793 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFix output bug: Intel asm comment character is #, not ;.
Brian Gaeke [Thu, 19 Jun 2003 19:58:32 +0000 (19:58 +0000)]
Fix output bug: Intel asm comment character is #, not ;.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6792 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoRECAPITALIZE all the names of pseudo-instructions, and add a comment explaining
Brian Gaeke [Thu, 19 Jun 2003 19:41:13 +0000 (19:41 +0000)]
RECAPITALIZE all the names of pseudo-instructions, and add a comment explaining
the convention.

:-)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6791 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoRename many instructions to their Intel asm-compatible names. This
Brian Gaeke [Thu, 19 Jun 2003 19:34:44 +0000 (19:34 +0000)]
Rename many instructions to their Intel asm-compatible names. This
involves removing the [bwl] suffixes from instruction names, as well
as some other distinguishing marks (32/64/80 on fp insns, _i suffixes, etc.)

Lowercase all instr. names as well for consistency's sake.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6790 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoAdd Initialization and Finalization methods for the Printer pass,
Brian Gaeke [Thu, 19 Jun 2003 19:32:32 +0000 (19:32 +0000)]
Add Initialization and Finalization methods for the Printer pass,
to print various things on a module-by-module basis (currently, only the
former is used).

Don't print < > around names. The assembler can't take it.

Print pseudoinstructions only as comments. The poor little assembler can't
take that, either.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6789 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoRemove usage of sys/unistd.h
Chris Lattner [Thu, 19 Jun 2003 18:42:09 +0000 (18:42 +0000)]
Remove usage of sys/unistd.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6788 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoFuncresolve no longer performs nicification of resolved functions
Chris Lattner [Thu, 19 Jun 2003 17:03:51 +0000 (17:03 +0000)]
Funcresolve no longer performs nicification of resolved functions
instcombine does this

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6787 91177308-0d34-0410-b5e6-96231b3b80d8

21 years agoUpdate comments
Chris Lattner [Thu, 19 Jun 2003 17:03:00 +0000 (17:03 +0000)]
Update comments

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6785 91177308-0d34-0410-b5e6-96231b3b80d8