Commit Graph

266348 Commits

Author SHA1 Message Date
Chris Lattner 256e28f916 Disable sample project until it works
llvm-svn: 7287
2003-07-23 23:28:57 +00:00
Chris Lattner 14f7522071 Add new tests, make existing tests more difficult
llvm-svn: 7286
2003-07-23 23:21:08 +00:00
Chris Lattner e9340228c9 Fix bug: FunctionResolve/2003-07-23-CPR-Reference.ll
This fixes a long time annoyance which caused prototypes for bzero, bcopy,
bcmp, fputs, and fputs_unlocked to never get deleted.  Grr.

llvm-svn: 7285
2003-07-23 22:03:18 +00:00
Chris Lattner 092fb6c66c New testcase
llvm-svn: 7284
2003-07-23 22:02:39 +00:00
Chris Lattner bfb1d03159 Add comments
llvm-svn: 7283
2003-07-23 21:41:57 +00:00
Chris Lattner 9763859e8d Remove explicit check for: not (not X) = X, it is already handled because xor is commutative
- InstCombine: (X & C1) ^ C2 --> (X & C1) | C2 iff (C1&C2) == 0
  - InstCombine: (X | C1) ^ C2 --> (X | C1) & ~C2 iff (C1&C2) == C2

llvm-svn: 7282
2003-07-23 21:37:07 +00:00
Chris Lattner 2326ef6484 New testcases
llvm-svn: 7281
2003-07-23 21:36:01 +00:00
Chris Lattner fbfe819ec6 Renumber tests sequentially
llvm-svn: 7280
2003-07-23 21:11:56 +00:00
Chris Lattner 2cc064c96f Split the or and xor tests into two separate files
llvm-svn: 7279
2003-07-23 21:10:55 +00:00
Chris Lattner 177cc120f9 Remove obscure test
llvm-svn: 7278
2003-07-23 21:06:34 +00:00
Chris Lattner 8820aaf1e6 Check in old testcase sitting in my tree
llvm-svn: 7277
2003-07-23 20:48:03 +00:00
Chris Lattner bbc2bc1790 Fix program: SingleSource/UnitTests/2003-07-09-SignedArgs with the CBE
llvm-svn: 7276
2003-07-23 20:45:31 +00:00
Brian Gaeke a92dce471b Printer.cpp: Ditch addRequired/getAnalysis, because they leave
Printer::doFinalization() out in the cold.  Now we pass in a TargetMachine
  to Printer's constructor and get the TargetData from the TargetMachine.
 Don't pass TargetMachine or MRegisterInfo objects around in the Printer.
 Constify TargetData references.
X86.h: Update comment and prototype of createX86CodePrinterPass().
X86TargetMachine.cpp: Update callers of createX86CodePrinterPass().

llvm-svn: 7275
2003-07-23 20:25:08 +00:00
Chris Lattner 4b4dacd838 Make Module::getNamedFunction prefer non-external functions if there is more than
one function of the same name

llvm-svn: 7274
2003-07-23 20:21:30 +00:00
Chris Lattner 1442020798 Fix space
llvm-svn: 7273
2003-07-23 20:21:06 +00:00
Chris Lattner 33217db4d9 InstCombine: (X ^ C1) & C2 --> (X & C2) iff (C1&C2) == 0
llvm-svn: 7272
2003-07-23 19:36:21 +00:00
Chris Lattner b69f30c115 New testcase
llvm-svn: 7271
2003-07-23 19:35:51 +00:00
Chris Lattner 16464b36ff - InstCombine: (X | C1) & C2 --> X & C2 iff C1 & C1 == 0
- InstCombine: (X | C) & C --> C
  - InstCombine: (X | C1) & C2 --> (X | (C1&C2)) & C2

llvm-svn: 7269
2003-07-23 19:25:52 +00:00
Chris Lattner fcd1efbbc0 New testcase
llvm-svn: 7267
2003-07-23 19:24:34 +00:00
Chris Lattner a439aaf71e New testcase
llvm-svn: 7266
2003-07-23 19:05:29 +00:00
Brian Gaeke c3998cb090 Add, rewrite, and/or reformat many comments.
Stop passing ostreams around: we already have one perfectly good ostream
and we can all share it.

Stop stashing a pointer to TargetData in the Pass object, because that will
lead to a crash if there are no functions in the module (ouch!)  Instead,
use addRequired() and getAnalysis(), like we always should have done.

Move the check for ConstantExpr up before the check for isPrimitiveType,
because we need to be able to catch e.g. ubyte (cast bool false to ubyte),
whose type is primitive but which is nevertheless a ConstantExpr, by calling
our specialized handler instead of the AsmWriter. This would result in
assembler errors when we would try to output something like ".byte (cast
bool false to ubyte)".

GC some unused variable declarations.

llvm-svn: 7265
2003-07-23 18:37:06 +00:00
Chris Lattner 8f0d15601a IC: (X & C1) | C2 --> (X | C2) & (C1|C2)
IC: (X ^ C1) | C2 --> (X | C2) ^ (C1&~C2)

We are now guaranteed that all 'or's will be inside of 'and's, and all 'and's
will be inside of 'xor's, if the second operands are constants.

llvm-svn: 7264
2003-07-23 18:29:44 +00:00
Chris Lattner d5663230b4 New testcases
llvm-svn: 7263
2003-07-23 18:28:42 +00:00
Chris Lattner 49b47ae565 IC: (X ^ C1) & C2 --> (X & C2) ^ (C1&C2)
Minor code cleanup

llvm-svn: 7262
2003-07-23 17:57:01 +00:00
Chris Lattner aeef93ccdb New testcase
llvm-svn: 7261
2003-07-23 17:56:34 +00:00
Chris Lattner cfbce7c880 InstCombine: (X ^ 4) == 8 --> X == 12
llvm-svn: 7260
2003-07-23 17:26:36 +00:00
Chris Lattner 2309b410f3 New testcase
llvm-svn: 7259
2003-07-23 17:25:55 +00:00
Chris Lattner 0fa0e3f2ea Add support for ~ operator on constants
llvm-svn: 7258
2003-07-23 17:21:17 +00:00
Chris Lattner d492a0b7b4 IC: (X & 5) == 13 --> false
IC: (X | 8) == 4  --> false

llvm-svn: 7257
2003-07-23 17:02:11 +00:00
Chris Lattner a4f252d0fe New tests
llvm-svn: 7256
2003-07-23 17:01:18 +00:00
John Criswell 8d3a83cef7 Renamed libtool to mklib for your tab completion pleasure.
llvm-svn: 7255
2003-07-23 16:52:50 +00:00
Chris Lattner 625eef3e41 Remove redundant const qualifier
llvm-svn: 7254
2003-07-23 15:30:32 +00:00
Chris Lattner f26a8ee580 Remove redundant const qualifiers from cast<> expressions
llvm-svn: 7253
2003-07-23 15:30:06 +00:00
Chris Lattner 6077c3195f Simplify code by using ConstantInt::getRawValue instead of checking to see
whether the constant is signed or unsigned, then casting

llvm-svn: 7252
2003-07-23 15:22:26 +00:00
Chris Lattner 79f22fe02f Remove unnecessary casts
llvm-svn: 7250
2003-07-23 15:17:51 +00:00
Chris Lattner 3bc9b251b9 Fit code into 80 columns
llvm-svn: 7249
2003-07-23 15:17:01 +00:00
Chris Lattner 23801c571e Eliminate old-style cast
llvm-svn: 7248
2003-07-23 15:16:40 +00:00
Chris Lattner b976da9ecf Random cleanups
llvm-svn: 7247
2003-07-23 14:59:40 +00:00
Chris Lattner 0470412961 Remove using decl
llvm-svn: 7246
2003-07-23 14:55:59 +00:00
Chris Lattner c5372125b9 Remove explicit const qualifiers
llvm-svn: 7245
2003-07-23 14:54:33 +00:00
Chris Lattner dc4016b44c Add more doxygen comments, add new ConstantInt::getRawValue method
llvm-svn: 7244
2003-07-23 14:49:06 +00:00
Chris Lattner d78ebd0c6b Fix bug: TailDup/2003-07-22-InfiniteLoop.ll
llvm-svn: 7243
2003-07-23 03:32:41 +00:00
Chris Lattner 96b9038998 New testcase that caused infinite loop in taildup
llvm-svn: 7242
2003-07-23 03:32:11 +00:00
Chris Lattner bdb0ce0605 - InstCombine (cast (xor A, B) to bool) ==> (setne A, B)
- InstCombine (cast (and X, (1 << size(X)-1)) to bool) ==> x < 0

llvm-svn: 7241
2003-07-22 21:46:59 +00:00
Chris Lattner 9af9880ddc New testcases
llvm-svn: 7240
2003-07-22 21:44:06 +00:00
John Criswell b65ddad4f4 Repaired the --enable and --disable options.
llvm-svn: 7239
2003-07-22 21:00:24 +00:00
John Criswell 5ec24d8733 Fixed the enable/disable options. The AC_ARG_ENABLE macro does not perform
the *action-if-not-given* code when the --disable option is used.
Rather, the AC_ARG_ENABLE macro sets the $enableval variable, which then needs
to be checked to determine if --enable, --disable, or neither was specified.

llvm-svn: 7238
2003-07-22 20:59:52 +00:00
Brian Gaeke 673ef4d7fb Add documentation for runOnMachineFunction()
llvm-svn: 7237
2003-07-22 20:53:20 +00:00
John Criswell cc0e805844 Made some corrections to the enable-llc_diffs option.
This should keep it from breaking for now.

llvm-svn: 7236
2003-07-22 20:07:49 +00:00
John Criswell c933eeb12b Generated a new configure script.
This script uses files within the new autoconf subdirectory and includes
changes from Brian Gaeke's recent changes to configure.ac.

llvm-svn: 7235
2003-07-22 19:18:09 +00:00