Commit Graph

40865 Commits

Author SHA1 Message Date
Dan Gohman 34fc7dbf5b Convert Legalize to use the APInt form of ComputeMaskedBits.
llvm-svn: 47383
2008-02-20 16:57:27 +00:00
Dan Gohman 360c86aed5 Add explicit keywords.
llvm-svn: 47382
2008-02-20 16:44:09 +00:00
Dan Gohman d0ff91dac5 Convert DAGCombiner to use the APInt form of ComputeMaskedBits.
llvm-svn: 47381
2008-02-20 16:33:30 +00:00
Dan Gohman b717fdaa7b Use APInt::intersects.
llvm-svn: 47380
2008-02-20 16:30:17 +00:00
Dan Gohman 4edaff3586 Add an intersects method to APInt, to capture a common idiom.
llvm-svn: 47379
2008-02-20 16:08:11 +00:00
Anton Korobeynikov 581ba34c63 Add documentation for cl::sink stuff
llvm-svn: 47378
2008-02-20 12:38:31 +00:00
Anton Korobeynikov f275a49f7f Add 'sink' cmdline option. Patch by Mikhail Glushenkov!
llvm-svn: 47377
2008-02-20 12:38:07 +00:00
Anton Korobeynikov 5c96f98e5a Regenerate
llvm-svn: 47376
2008-02-20 12:10:37 +00:00
Anton Korobeynikov 18991d78fa Fix newly-introduced 4.3 warnings
llvm-svn: 47375
2008-02-20 12:07:57 +00:00
Anton Korobeynikov ea333124f1 Get rid of hash_map in llvmc
llvm-svn: 47374
2008-02-20 11:28:26 +00:00
Anton Korobeynikov 6f74afea32 Get rid of hash_map. Use StringMap instead
llvm-svn: 47373
2008-02-20 11:27:49 +00:00
Anton Korobeynikov bddf51bc9b And final pack of warnings silencing
llvm-svn: 47372
2008-02-20 11:27:04 +00:00
Anton Korobeynikov 1bfd121321 Make Transforms to be 4.3 warnings-clean
llvm-svn: 47371
2008-02-20 11:26:25 +00:00
Anton Korobeynikov 852e214993 Fix code style
llvm-svn: 47370
2008-02-20 11:24:05 +00:00
Anton Korobeynikov 40d67c59d5 Remove bunch of gcc 4.3-related warnings from Target
llvm-svn: 47369
2008-02-20 11:22:39 +00:00
Anton Korobeynikov 035eaacd1f Update gcc 4.3 warnings fix patch with recent head changes
llvm-svn: 47368
2008-02-20 11:10:28 +00:00
Anton Korobeynikov 579f07135a Unbreak build with gcc 4.3: provide missed includes and silence most annoying warnings.
llvm-svn: 47367
2008-02-20 11:08:44 +00:00
Bill Wendling b912351ec9 Added some comments and reformatted others. No functionality change.
Added two "FIXMEs" for code that looks dubious to me (but I could be
wrong).

llvm-svn: 47366
2008-02-20 09:15:16 +00:00
Bill Wendling 34c09e1a78 Fixed typo.
llvm-svn: 47365
2008-02-20 09:14:09 +00:00
Owen Anderson b4724dbda2 When performing return slot optimization, remember to inform memdep when we're removing the memcpy.
llvm-svn: 47364
2008-02-20 08:23:02 +00:00
Evan Cheng ab5729cfe6 Added memmove to interpreter external functions list. Patch by Daniel Dunbar.
llvm-svn: 47363
2008-02-20 07:55:26 +00:00
Bill Wendling 406fdbd3ad More constification of things. More comments added. No functionality
changes. (Sorry for any formatting changes that creeped in.)

llvm-svn: 47362
2008-02-20 07:36:31 +00:00
Nick Lewycky b0a2f9513f Use getConstant for ConstantInts.
llvm-svn: 47361
2008-02-20 06:58:55 +00:00
Nick Lewycky 1c44ebcf86 Add 'umax' similar to 'smax' SCEV. Closes PR2003.
Parse reversed smax and umax as smin and umin and express them with negative
or binary-not SCEVs (which are really just subtract under the hood).

Parse 'xor %x, -1' as (-1 - %x).

Remove dead code (ConstantInt::get always returns a ConstantInt).

Don't use getIntegerSCEV(-1, Ty). The first value is an int, then it gets
passed into a uint64_t. Instead, create the -1 directly from
ConstantInt::getAllOnesValue().

llvm-svn: 47360
2008-02-20 06:48:22 +00:00
Chris Lattner 2a8037b5f5 Fix an incredibly subtle bug exposed by Ted's change to APInt profiling.
AddNodeIDNode does profiling for a ConstantSDNode, but so does 
SelectionDAG::getConstant.  This profiling should be moved to a common
static function in ConstantSDNode.

llvm-svn: 47359
2008-02-20 06:28:01 +00:00
Bill Wendling 59cc15955f No functionality change:
- Constified some MachineOperand values.
 - Added/Modified some comments.

llvm-svn: 47358
2008-02-20 06:10:21 +00:00
Ted Kremenek 34e83b80fd Implemented transfer function logic for unary '+'
llvm-svn: 47357
2008-02-20 04:12:31 +00:00
Ted Kremenek b597bb9c4a Placed transfer function logic for dereferences in its own method, while at
the same time clearing up some logic of how the unary '*' operator is processed.

llvm-svn: 47356
2008-02-20 04:02:35 +00:00
Evan Cheng 0aa9f2a7f3 XFAIL this for now.
llvm-svn: 47355
2008-02-20 02:38:58 +00:00
Evan Cheng 7626ab33d8 Disable for now. This is pessimizing code.
llvm-svn: 47354
2008-02-20 02:29:17 +00:00
Dan Gohman 0fc9f57675 Add some comments to Intrinsic::getDeclaration to clarify how to
get declarations for overloaded intrinsics.

llvm-svn: 47353
2008-02-20 01:07:51 +00:00
Dale Johannesen 11a555e94a Add Alignment field to ParameterAttributes and
treat more or less rationally in interface
functions, subject to change.  No functional change.

llvm-svn: 47352
2008-02-19 23:51:49 +00:00
Evan Cheng 5ce8dd93ef Add hidden option -x86-fold-and-in-test to test the effect the test / and folding change.
llvm-svn: 47351
2008-02-19 23:36:51 +00:00
Devang Patel 8b51bc47a2 regenerate
llvm-svn: 47350
2008-02-19 22:27:01 +00:00
Devang Patel 0dcd198bff Parse
%b = getresult {i32, i32} %a, i32 1

llvm-svn: 47349
2008-02-19 22:26:37 +00:00
Devang Patel 295711f583 Add GetResultInst. First step for multiple return value support.
llvm-svn: 47348
2008-02-19 22:15:16 +00:00
Lauro Ramos Venancio ca0fd02cdd Improve non-const initializer implementation.
llvm-svn: 47347
2008-02-19 22:04:22 +00:00
Lauro Ramos Venancio 91fdb9ec43 Implement CodeGenModule::getMemSetFn method.
llvm-svn: 47346
2008-02-19 22:01:01 +00:00
Dale Johannesen 9bbd8ebf78 Generated files for checkin 47342.
llvm-svn: 47344
2008-02-19 21:40:51 +00:00
Dale Johannesen 151e50bf0c Forgot a file, goes with 47342.
llvm-svn: 47343
2008-02-19 21:40:10 +00:00
Dale Johannesen 89268bc6e2 Expand ParameterAttributes to 32 bits (in preparation
for adding alignment info, not there yet).  Clean up
interfaces to reference ParameterAttributes consistently.

llvm-svn: 47342
2008-02-19 21:38:47 +00:00
Ted Kremenek 4ae9985285 Added missing case in constant propagation logic for handling the Xor of
two concrete integer values.

llvm-svn: 47341
2008-02-19 20:53:37 +00:00
Ted Kremenek 9c08512656 Added special handling for UninitializedVals for the transfer function logic
for pointer dereferences.

llvm-svn: 47340
2008-02-19 20:53:06 +00:00
Ted Kremenek 4baef06bbc Implemented "getType()" for symbolic values representing the "contents" of
another symbolic value.

llvm-svn: 47339
2008-02-19 20:51:40 +00:00
Ted Kremenek 901540f118 Fixed bug in APInt::Profile() where the BitWidth field was not included in the
profile of the APSInt object. This caused unexpected Profile collisions where
none should have occurred.

llvm-svn: 47338
2008-02-19 20:50:41 +00:00
Andrew Lenharth 4aa9e208fa fix some byval problems in the cbe. Closes PR2065
llvm-svn: 47337
2008-02-19 19:47:54 +00:00
Lauro Ramos Venancio e2162c6549 Simplify aggregate initilizer implementation. Use the CodeGenModule::EmitConstantExpr method when
possible.
Fix mediabench/mpeg2/mpeg2dec test.

llvm-svn: 47336
2008-02-19 19:27:31 +00:00
Ted Kremenek 9fd2531b5e Fixed transfer function for casts to always evaluate the effects of the
cast's subexpression even if the cast itself has no effect.

llvm-svn: 47335
2008-02-19 18:52:54 +00:00
Chris Lattner 90c2df5bd0 random cleanups.
llvm-svn: 47334
2008-02-19 18:49:08 +00:00
Ted Kremenek fe0b5740ce Added transfer function support for casting to "void".
llvm-svn: 47333
2008-02-19 18:47:04 +00:00