Nick Lewycky
39519f5c41
Use maximal intersection algorithm exclusively. Fixes miscompile bug.
...
llvm-svn: 39852
2007-07-14 04:28:04 +00:00
Nick Lewycky
61b4a265ee
Add alternate ConstantRange intersection algorithm.
...
llvm-svn: 39851
2007-07-14 02:51:34 +00:00
Chris Lattner
4481b428db
A significant refactoring of the type size stuff to also
...
compute type alignment. This info is needed for struct layout.
llvm-svn: 39850
2007-07-14 01:29:45 +00:00
Chris Lattner
9d3b0e0001
Implement trivial integer initializers, like 'int X = 4;' for global
...
vars. Approach suggested by Keith.
llvm-svn: 39849
2007-07-14 00:23:28 +00:00
Chris Lattner
6ee31f5df8
In "int X,Y;", compile both X and Y.
...
llvm-svn: 39848
2007-07-14 00:16:50 +00:00
Chris Lattner
027f21dd72
add a fixme
...
llvm-svn: 39847
2007-07-14 00:01:01 +00:00
Chris Lattner
666115c848
Improve char literal pretty printing, patch by Keith Bauer!
...
llvm-svn: 39846
2007-07-13 23:58:20 +00:00
Evan Cheng
07bc082891
Added test case from PR1540.
...
llvm-svn: 39845
2007-07-13 23:57:33 +00:00
Devang Patel
4cd1413f15
Make LCSSA a loop pass.
...
llvm-svn: 39844
2007-07-13 23:57:11 +00:00
Evan Cheng
1fae1cd3e1
Fix for PR1540: Specify F0, F1 are sub-registers of D0, etc.
...
llvm-svn: 39843
2007-07-13 23:55:50 +00:00
Gabor Greif
03a0073b36
fix type of main, use !=
...
llvm-svn: 39842
2007-07-13 23:40:27 +00:00
Gabor Greif
d4606aa36e
implement _Complex * == and !=
...
llvm-svn: 39841
2007-07-13 23:33:18 +00:00
Steve Naroff
b8ea4fb8db
More changes related to implementing ImplicitCastExpr.
...
- Fixed a recent regression discovered by Keith Bauer (thanks!).
The fix involved adding (back) two arguments to UsualArithmeticConversions.
Without the reference arguments, no unary conversions were being passed back
to the caller. This had the effect of turning off the UsualUnaryConversions.
- Refactored CheckAssignmentConstraints into 3 functions. CheckAssignmentConstraints,
CheckSingleAssignmentConstraints, and CheckCompoundAssignmentConstraints.
- Changed the argument type of DefaultFunctionArrayConversion from QualType->Expr*&.
- Removed a bunch of casts in routines I was working on (cleanup).
- Fixed the visitor for ImplicitCastExpr (oops).
llvm-svn: 39840
2007-07-13 23:32:42 +00:00
Owen Anderson
d975efab16
Handle GEPs with all-zero indices in the same way we handle pointer-pointer bitcasts. Also, fix a potentia infinite loop.
...
This brings FastDSE to parity with old DSE on 175.vpr.
llvm-svn: 39839
2007-07-13 22:50:48 +00:00
Chris Lattner
355332d3f3
Use target info to decide the sizes of basic types.
...
llvm-svn: 39838
2007-07-13 22:27:08 +00:00
Chris Lattner
0523dc94c8
Add missing citation.
...
llvm-svn: 39837
2007-07-13 22:16:13 +00:00
Gabor Greif
f7b1f667d4
a simple _Complex testcase
...
llvm-svn: 39836
2007-07-13 22:15:44 +00:00
Chris Lattner
983a8bbbb2
Move getSize() out of type, into ASTContext, where it has target info, and
...
where ASTContext can manage caches for struct layout, etc.
llvm-svn: 39835
2007-07-13 22:13:22 +00:00
Devang Patel
29ccf8ba52
Disable claims to preserve analysis until open issues are resolved.
...
llvm-svn: 39834
2007-07-13 21:53:42 +00:00
Chris Lattner
35ed92817a
Unspecified type specs default to int. This fixes a crash
...
on test/Sema/implicit-int.c
llvm-svn: 39833
2007-07-13 21:02:29 +00:00
Chris Lattner
2ce5dd4c98
remove some extraneous spaces, no functionality change.
...
llvm-svn: 39832
2007-07-13 21:01:17 +00:00
Chris Lattner
388cf760e2
implement codegen support for implicit casts.
...
llvm-svn: 39831
2007-07-13 20:25:53 +00:00
Chris Lattner
5c2f76b395
eliminate extraneous type, add accessors.
...
llvm-svn: 39830
2007-07-13 20:25:36 +00:00
Chris Lattner
91dacfec85
Check in these testcases.
...
llvm-svn: 39829
2007-07-13 20:18:44 +00:00
Dan Gohman
10835d9c67
Eliminate an unused parameter.
...
llvm-svn: 39828
2007-07-13 20:16:50 +00:00
Dan Gohman
ff72788863
Fix the comment for LegalizeOp to more accurately reflect what it does.
...
llvm-svn: 39827
2007-07-13 20:14:11 +00:00
Chris Lattner
effb7a350f
new testcase that crashes the cfe due to implicit conversion fun
...
llvm-svn: 39826
2007-07-13 20:11:01 +00:00
Chris Lattner
0946f04236
remove obsolete note
...
llvm-svn: 39825
2007-07-13 20:08:19 +00:00
Chris Lattner
a5ba0cb772
silence a bogus gcc warning.
...
llvm-svn: 39824
2007-07-13 20:07:11 +00:00
Dan Gohman
80f9f077e3
Don't call SimplifyVBinOp for non-vector operations, following earlier review
...
feedback. This theoretically makes the common (scalar) case more efficient.
llvm-svn: 39823
2007-07-13 20:03:40 +00:00
Chris Lattner
0a2d099792
fix some bugs in the manual
...
llvm-svn: 39822
2007-07-13 20:01:46 +00:00
Owen Anderson
9c9ef21432
Be more aggressive in removing dead stores, and in removing instructions trivially dead after DSE.
...
This drastically improves the effect of FastDSE on kimwitu++.
llvm-svn: 39819
2007-07-13 18:26:26 +00:00
Steve Naroff
b66fb7465b
Removed some superfluous code. The getType() method and associated
...
assert is now done in UsualUnaryConversions().
llvm-svn: 39818
2007-07-13 17:39:21 +00:00
Dale Johannesen
4dc35dbd3e
Modify previous patch per review comments.
...
llvm-svn: 39817
2007-07-13 17:31:29 +00:00
Dale Johannesen
2182f06f2d
Skeleton of post-RA scheduler; doesn't do anything yet.
...
Change name of -sched option and DEBUG_TYPE to
pre-RA-sched; adjust testcases.
llvm-svn: 39816
2007-07-13 17:13:54 +00:00
Chris Lattner
f9aba2c2b4
remove use of alloca.
...
llvm-svn: 39815
2007-07-13 17:10:38 +00:00
Steve Naroff
7a5af78270
Add (explicit) AST support for implicit casts. This should simplify the
...
code generator. Source translation tools can simply ignore this node.
- Added a new Expr node, ImplicitCastExpr.
- Changed UsualUnaryConversions/UsualArithmeticConversions to take references
to Expr *'s. This will allow these routines to instantiate the new AST node
and pass it back.
- Changed all clients of UsualUnary/UsualArithmetic (lot's of diff's).
- Changed some names in CheckConditionalOperands. Several variables where
only distinguished by their case (e.g. Cond, cond). Yuck (what was I thinking).
- Removed an old/crufty constructor in CastExpr (cleanup).
This check-in does not actually create the new AST node. I wanted to separate
the mechanical changes from the semantic changes. In addition, I need to
coordinate with Chris, since the semantic change will break the code generator.
llvm-svn: 39814
2007-07-13 16:58:59 +00:00
Chris Lattner
2b4d9b684f
Fix CodeGen/Generic/print-arith-fp.ll on sparc (PR1551)
...
llvm-svn: 39813
2007-07-13 16:24:10 +00:00
Chris Lattner
7c9c5362ef
check in the basic llvm license
...
llvm-svn: 39812
2007-07-13 15:47:47 +00:00
Gabor Greif
42d12da712
these tests do not need a triple on Solaris. Thanks sabre!
...
llvm-svn: 39803
2007-07-13 10:08:18 +00:00
Reid Spencer
df523644c9
Regenerate to pick up Gabor's changes.
...
llvm-svn: 39802
2007-07-13 10:05:30 +00:00
Reid Spencer
8167778d87
Set the mime-type of this file to text/plain because (silly) SVN
...
doesn't know that application/x-sh is text.
llvm-svn: 39801
2007-07-13 10:02:45 +00:00
Gabor Greif
f307d942ec
* llvm.spec.in: update blurb
...
* autoconf/AutoRegen.sh: use variables for autofoo versions
* autoconf/configure.ac: test for some more functions
that are not guaranteed on solaris
Note: the svn:mime-type of autoconf/AutoRegen.sh
should be set to something that allows for
text compares using svn diff
llvm-svn: 39800
2007-07-13 09:48:29 +00:00
Gabor Greif
441b3d47be
Solaris needs an included header for alloca
...
llvm-svn: 39797
2007-07-13 08:21:39 +00:00
Chris Lattner
6e9d9b350e
"Codegen for Character Literals and Conditional Operator
...
Both in one patch, and the test case that Chris didn't commit last
time is in there too...
I'll split the patch up if somebody wants it split."
Patch by Keith Bauer.
llvm-svn: 39796
2007-07-13 05:18:11 +00:00
Chris Lattner
d14bfa94a6
implement support for basic codegen of global variables with no initializers.
...
llvm-svn: 39795
2007-07-13 05:13:43 +00:00
Chris Lattner
fc7634f2ab
"Someone typed "PtrToInt" where they meant "IntToPtr".
...
I've added a tests/CodeGen directory, and a test for this case that
used to fail and now passes."
Patch by Keith Bauer
llvm-svn: 39794
2007-07-13 03:25:53 +00:00
Chris Lattner
d2b88ab313
Implement codegen for + and - with pointers. Patch contributed by
...
Keith Bauer.
llvm-svn: 39793
2007-07-13 03:05:23 +00:00
Anton Korobeynikov
b6719478b9
Workaround gcc 3.4.x bug
...
llvm-svn: 39792
2007-07-13 00:48:55 +00:00
Steve Naroff
1c8b7d36e6
Two changes...
...
- Teach all the integer/float predicates on Type about Vectors.
- Disallow bitwise compliment on float vectors. For example...
typedef float __attribute__(( vector_size(16) )) float4;
float4 float4_return()
{
float4 xx;
return ~xx;
}
...now emits the following diagnostic...
[administrators-powerbook59:~/llvm/tools/clang] admin% ../../Debug/bin/clang bug.c
bug.c:8:12: error: invalid argument type to unary expression 'float4'
return ~xx;
^
1 diagnostic generated.
llvm-svn: 39791
2007-07-12 21:46:55 +00:00