28442 Commits

Author SHA1 Message Date
Reid Spencer
87eb6d187d For PR950:
These tests need to be upgraded in preparation for the SETCC patch.

llvm-svn: 32668
2006-12-19 02:09:20 +00:00
Reid Spencer
41d4953fb0 This test needs to be upgraded in preparation for the SETCC patch.
llvm-svn: 32667
2006-12-19 02:07:11 +00:00
Reid Spencer
c753eddc43 This test needs to be upgraded.
llvm-svn: 32666
2006-12-19 02:03:04 +00:00
Evan Cheng
9e0ae42e6d May need to promote the operand (either sign_extend_inreg or and) before
expanding a {s|u}int_to_fp.

llvm-svn: 32665
2006-12-19 01:44:04 +00:00
Reid Spencer
2d69d6e962 Correct the description of ConstantInt::isValueValidForType.
llvm-svn: 32664
2006-12-19 01:34:39 +00:00
Reid Spencer
e9d6e54b36 Make ConstantInt not care about sign any more. To ensure the AsmParser can
still check the validity of signed values an overload to isValueValidForType
was added to allow passing in an int64_t to check.

llvm-svn: 32663
2006-12-19 01:28:19 +00:00
Chris Lattner
28c15ed860 Fix a bug in GetConstantFactor for affine expressions, in which the existing
code was wrong for things like 3+4*i.

llvm-svn: 32662
2006-12-19 01:16:02 +00:00
Chris Lattner
6a34f2718f Doxgenate comments.
Add GreatestCommonDivisor64

llvm-svn: 32661
2006-12-19 01:11:32 +00:00
Reid Spencer
f810a0cfab Remove a useless statement.
llvm-svn: 32660
2006-12-18 23:40:19 +00:00
Evan Cheng
975589f630 LegalizeSetCCOperands() may end up inserting libcalls. They need to be
properly serialized. Do not clear LastCallSEQ_END until that is done.

llvm-svn: 32659
2006-12-18 22:55:34 +00:00
Bill Wendling
899c552208 Removed llvm_ostream and used std::ostream instead.
llvm-svn: 32658
2006-12-18 21:59:00 +00:00
Reid Spencer
24a09586a9 For PR1042:
Fix a thinko. We want to check the second case if the first cast *didn't*
trigger.

llvm-svn: 32657
2006-12-18 21:56:29 +00:00
Rafael Espindola
05b3447706 macros -> Inline functions
Lauros's patch

llvm-svn: 32656
2006-12-18 11:07:09 +00:00
Reid Spencer
97af158c16 Remove the createInferredCast methods now that their last uses have been
removed. All casting is now explicit and not inferred by VMCore.

llvm-svn: 32655
2006-12-18 08:52:59 +00:00
Reid Spencer
f6bd59ba81 Convert the last uses of CastInst::createInferredCast to a normal cast
creation. These changes are still temporary but at least this pushes
knowledge of signedness out closer to where it can be determined properly
and allows signedness to be removed from VMCore.

llvm-svn: 32654
2006-12-18 08:47:13 +00:00
Reid Spencer
6769fa4ba2 Remove the two-argument (inferred cast) form of ConstantExpr::getCast now
that its last uses have been removed.

llvm-svn: 32653
2006-12-18 08:18:46 +00:00
Reid Spencer
f31673d965 Convert the last use of two-argument ConstantExpr::getCast into another
form so we can remove that method from ConstantExpr.

llvm-svn: 32652
2006-12-18 08:16:27 +00:00
Reid Spencer
9c4041605f Remove a call to Type::isSigned().
llvm-svn: 32651
2006-12-18 07:58:01 +00:00
Reid Spencer
1f5e1ff1a2 Revert last patch. ConstantInt isn't quite ready for signlessness.
llvm-svn: 32650
2006-12-18 04:22:56 +00:00
Reid Spencer
b9db2a065a Determine if the -enable-pic option was given.
llvm-svn: 32649
2006-12-18 04:11:16 +00:00
Rafael Espindola
08c0825f18 move ExtWeakSymbols to AsmPrinter
llvm-svn: 32648
2006-12-18 03:37:18 +00:00
Reid Spencer
503ae10c88 Add a couple little tests for SExt/ZExt of constants of a sign that doesn't
match.

llvm-svn: 32647
2006-12-18 01:11:46 +00:00
Reid Spencer
9ac4a6b7d0 Remove the last use of getUnsignedVersion and getSignedVersion from VMCore.
ConstantInt doesn't care about the sign of the type it represents. It only
cares about the bitwidth so there is no need to make the sign of the type
match the SExt or ZExt constant expression.

llvm-svn: 32646
2006-12-18 01:11:03 +00:00
Reid Spencer
142f27dfd4 Remove some clutter and make it keep going instead of stopping at the
first difference.

llvm-svn: 32645
2006-12-18 00:37:37 +00:00
Chris Lattner
3a173beb93 Fix PR1057 (compilation on macos 10.3), patch by Scott Michel!
llvm-svn: 32644
2006-12-17 21:04:02 +00:00
Reid Spencer
0cb59889d2 Use a predicate function to identify bitcast of fp and integer instead of
repeating the logic in two different parts of the code.

llvm-svn: 32643
2006-12-17 20:24:50 +00:00
Reid Spencer
85f67cbc7a Fix PR1058:
Generate the BITCAST_TEMPORARY regardless of the uses or inlinability of
the instruction. This temporary is needed to perform the instruction, not
provide storage for its results.

llvm-svn: 32642
2006-12-17 18:50:51 +00:00
Bill Wendling
10d7a4b963 Added example of how to code print() methods so that they will disappear
from the code if "cnull" is passed into them.

llvm-svn: 32641
2006-12-17 11:40:40 +00:00
Bill Wendling
34f4c12ae7 Fixed so that it dereferences the ostream pointer.
llvm-svn: 32640
2006-12-17 11:15:53 +00:00
Bill Wendling
8cd0977aad Accidental submission.
llvm-svn: 32639
2006-12-17 11:13:13 +00:00
Bill Wendling
5b534cf128 This snuck in. Reverted.
llvm-svn: 32638
2006-12-17 11:11:10 +00:00
Reid Spencer
be18cd1575 Fix problems in the CBE and InstructionCombining which use the isMaxValue
and isMinValue methods of ConstantInt. These have been broken since the
isSigned parameter was added. It is necessary to use the signed version
of the type in the call to isValueValidForType or else incorrect results
are returned.

llvm-svn: 32637
2006-12-17 06:07:30 +00:00
Bill Wendling
7f6a73eb5c Added an automatic cast to "std::ostream*" etc. from OStream. We then can
rework the hacks that had us passing OStream in. We pass in std::ostream*
instead, check for null, and then dispatch to the correct print() method.

llvm-svn: 32636
2006-12-17 05:15:13 +00:00
Reid Spencer
758736b8df Allow an --enable-pic option to turn on -fPIC compiler option when building.
The default is disabled until we know this doesn't break anyone.

llvm-svn: 32635
2006-12-16 22:07:52 +00:00
Chris Lattner
6bdae11796 when inserting a dummy argument to work-around the CBE not supporting
zero arg vararg functions, pass undef instead of 'int 0', which is cheaper.

llvm-svn: 32634
2006-12-16 21:21:53 +00:00
Chris Lattner
8b1e4d1edf Fix PR1049 and CodeGen/Generic/2006-12-16-InlineAsmCrash.ll
by producing target constants instead of constants.  Constants can get
selected to li/movri instructions, which causes the scheduler to explode.

llvm-svn: 32633
2006-12-16 21:14:48 +00:00
Chris Lattner
292b75066d testcase for pr1049
llvm-svn: 32632
2006-12-16 21:12:49 +00:00
Chris Lattner
02aeb50571 Fix one more broken testcase
llvm-svn: 32631
2006-12-16 20:27:43 +00:00
Chris Lattner
e223919df1 Apply B. Scott Michel's patch for PR1054, thanks!
llvm-svn: 32630
2006-12-16 20:23:42 +00:00
Evan Cheng
7775b33a32 Cannot combine an indexed load / store any further.
llvm-svn: 32629
2006-12-16 06:25:23 +00:00
Evan Cheng
70700ba459 Typo.
llvm-svn: 32628
2006-12-16 06:21:55 +00:00
Chris Lattner
be9b063230 Fix borken testcase
llvm-svn: 32627
2006-12-16 02:30:24 +00:00
Chris Lattner
8ef8f5d01c fix buggy testcase
llvm-svn: 32626
2006-12-16 02:29:22 +00:00
Chris Lattner
47233817d3 testcases for PR1042
llvm-svn: 32625
2006-12-16 02:26:57 +00:00
Chris Lattner
f511077490 Fix PR1042, by tightening up the subtle rules with invoke value use.
llvm-svn: 32624
2006-12-16 02:25:35 +00:00
Evan Cheng
a966bf47ec Expand FP undef
llvm-svn: 32623
2006-12-16 02:20:50 +00:00
Jeff Cohen
c396e18e8e The best unbreakage yet, addressing Bill's concerns.
llvm-svn: 32622
2006-12-16 02:15:42 +00:00
Evan Cheng
d4fd650c5f Allow promoted FP_TO_UINT / FP_TO_SINT to expand operand.
llvm-svn: 32621
2006-12-16 02:10:30 +00:00
Devang Patel
d29f6ec89c Add getNumContainedPasses() and getContainedPass() inteface and use
it instead of passVectorBegin/End().

llvm-svn: 32620
2006-12-16 00:56:26 +00:00
Evan Cheng
b0292a750a Expand fabs / fneg to and / xor.
llvm-svn: 32619
2006-12-16 00:52:40 +00:00