Duncan Sands
56689502c1
Add truncate and AssertZext result expansion.
...
llvm-svn: 46926
2008-02-10 10:08:52 +00:00
Chris Lattner
5628d24d85
remove the in progress marker.
...
llvm-svn: 46925
2008-02-10 08:19:35 +00:00
Chris Lattner
458e79fa72
validation fixes
...
llvm-svn: 46924
2008-02-10 08:18:42 +00:00
Chris Lattner
dd6acc0184
final set of major updates
...
llvm-svn: 46923
2008-02-10 08:17:19 +00:00
Bill Wendling
9c2ce9a32d
Return "(c1 + c2)" instead of yet another ADD node (which made this a
...
no-op).
llvm-svn: 46922
2008-02-10 08:10:24 +00:00
Chris Lattner
2b8a52e259
more prose, some organization improvements.
...
llvm-svn: 46921
2008-02-10 07:46:44 +00:00
Chris Lattner
a273586b53
random notes
...
llvm-svn: 46920
2008-02-10 07:04:35 +00:00
Steve Naroff
1018ea35b7
Refine bug fix to Expr::isLvalue (commit r46917).
...
llvm-svn: 46919
2008-02-10 01:39:04 +00:00
Chris Lattner
0ededbc68e
add anote
...
llvm-svn: 46918
2008-02-10 01:01:35 +00:00
Steve Naroff
43c50866f1
Change Expr::isLvalue() to allow the "void" type. This fixes bz2000 submitted by Neil Booth.
...
Neil, can you point me to the place in the C99 spec that says this is allowed? I thought Expr::isLvalue() conformed to the spec, which says "C99 6.3.2.1: an lvalue is an expression with an object type or an incomplete type other than void.". Please advise.
llvm-svn: 46917
2008-02-10 00:30:18 +00:00
Nick Lewycky
52ea27db17
Match GCC's behaviour for these sections.
...
llvm-svn: 46916
2008-02-10 00:03:54 +00:00
Nate Begeman
727c7634c7
memopv16i8 had wrong alignment requirement, would have broken pabsb
...
pabs{b,w,d} are not two address
fix extract-to-mem sse4 ops
add sse4 vector sign extend nodes
llvm-svn: 46915
2008-02-09 23:46:37 +00:00
Chris Lattner
20ed4ef554
add some more notes, still not ready for review :)
...
llvm-svn: 46914
2008-02-09 22:58:07 +00:00
Chris Lattner
56e82884db
scoped_ptr.h was removed.
...
llvm-svn: 46913
2008-02-09 22:50:06 +00:00
Gabor Greif
dd1fc981b5
explain that NumElements in alloca and malloc defaults to one
...
llvm-svn: 46912
2008-02-09 22:24:34 +00:00
Anders Carlsson
c0b0e59643
Implement __builtin_va_copy
...
llvm-svn: 46911
2008-02-09 20:26:43 +00:00
Anders Carlsson
2e64d1a50f
Behave correctly if a constraint expression is invalid.
...
llvm-svn: 46910
2008-02-09 19:57:29 +00:00
Dale Johannesen
43a2ed8611
Alignment of struct containing vectors depends on
...
whether SSE is present, on Darwin anyway. Make it
explicit.
llvm-svn: 46909
2008-02-09 19:04:25 +00:00
Wojciech Matyjewicz
784d071e16
We should check that existing cast operation has the appropriate opcode before we reuse it.
...
llvm-svn: 46908
2008-02-09 18:30:13 +00:00
Wojciech Matyjewicz
5c252865de
Add a check if the initial value of the induction variable is 0 (the method comment says it should be).
...
llvm-svn: 46907
2008-02-09 18:06:58 +00:00
Steve Naroff
4cc387212a
Fix spelling in comment.
...
llvm-svn: 46906
2008-02-09 17:25:18 +00:00
Steve Naroff
45173e0ac0
Fix <rdar://problem/5733511> clang doesn't emit error for const array.
...
llvm-svn: 46905
2008-02-09 16:59:44 +00:00
Eli Friedman
a62f3e1352
Expose the logic for field address codegen; it is needed for aggregate
...
initializers, and I don't want to duplicate the bitfield-handling code.
(I'll send a patch for aggregate initializers to the mailing
list sometime soon.)
llvm-svn: 46904
2008-02-09 08:50:58 +00:00
Evan Cheng
6aabf837fe
Remove unused hidden option.
...
llvm-svn: 46903
2008-02-09 08:36:28 +00:00
Nate Begeman
6715f755cc
Skeleton of insert and extract matching, more to come
...
llvm-svn: 46902
2008-02-09 01:38:08 +00:00
Nate Begeman
17bedbc500
Tablegen support for insert & extract element matching
...
llvm-svn: 46901
2008-02-09 01:37:05 +00:00
Chris Lattner
7f5c2553c7
check that terminators only occur at the end of a block. This catches the
...
common problem of putting two terminators in the same block. I can't write
a testcase for this because the .ll parser rejects this before the verifier
can, but this can occur when generating IR.
llvm-svn: 46900
2008-02-09 01:06:01 +00:00
Dan Gohman
65f63eba2b
Change ConstantSDNode to store an APInt instead of a uint64_t, and
...
begin adding some methods to use it this way.
llvm-svn: 46899
2008-02-08 22:59:30 +00:00
Devang Patel
26f75e2576
Fix PR 1995.
...
llvm-svn: 46898
2008-02-08 22:49:13 +00:00
Steve Naroff
a369922449
A bunch-o changes to fix <rdar://problem/5716046> incomplete implementation of ObjC class warning is incomplete
...
As part of this fix, I made a low-level change to the text diagnostics machinery (to basically avoid printing duplicate source lines/carets when you have multiple diagnostics that refer to the same exact place). For now, this only happens with we don't have a source range (could be extended to support source ranges as well).
llvm-svn: 46897
2008-02-08 22:06:17 +00:00
Evan Cheng
f2bd1387b0
Forgot these files.
...
llvm-svn: 46896
2008-02-08 22:05:27 +00:00
Evan Cheng
e460869d86
Also print alignment.
...
llvm-svn: 46895
2008-02-08 22:05:07 +00:00
Dan Gohman
168700bdf3
Add an isSignedIntN, like isIntN but for signed integer values instead of
...
unsigned.
llvm-svn: 46894
2008-02-08 21:58:15 +00:00
Evan Cheng
3b3286d4bc
It's not always safe to fold movsd into xorpd, etc. Check the alignment of the load address first to make sure it's 16 byte aligned.
...
llvm-svn: 46893
2008-02-08 21:20:40 +00:00
Ted Kremenek
b54312d5a0
Split off expression-bindings in ValueState from variable-bindings.
...
llvm-svn: 46892
2008-02-08 21:10:02 +00:00
Ted Kremenek
4142cc834b
Changed "GetValue" methods to take an
...
Expr* instead of a Stmt*, since we only
store bindings for Expr*.
llvm-svn: 46891
2008-02-08 20:29:23 +00:00
Dale Johannesen
36c2967d89
64-bit (MMX) vectors do not need restrictive alignment.
...
128-bit vectors need it only when SSE is on.
llvm-svn: 46890
2008-02-08 19:48:20 +00:00
Lauro Ramos Venancio
d74057fa87
Fix a bitfield regression. Reported by Anders Carlsson.
...
llvm-svn: 46889
2008-02-08 19:46:46 +00:00
Ted Kremenek
80ff44ff30
Moved implementation of "RemoveDeadBindings" from the main
...
GRConstants logic to ValueStateManager.
llvm-svn: 46888
2008-02-08 19:17:19 +00:00
Ted Kremenek
5d9073c776
Removed ability to create symbol bindings
...
in VarKey and VariableBindingsTy.
llvm-svn: 46887
2008-02-08 19:08:13 +00:00
Steve Naroff
8c099c3f03
Use getLogicalLineNumber() in FuzzyParseMicrosoftAsmStatement(), it's more general and simplifies the code.
...
llvm-svn: 46885
2008-02-08 18:01:27 +00:00
Ted Kremenek
09d6ba1496
Moved that clang doesn't depend on llvm-gcc above
...
the subsection of building clang with llvm.
llvm-svn: 46884
2008-02-08 07:32:26 +00:00
Ted Kremenek
fd39e73b7a
Implemented transfer functions for "<<" and ">>" when the RValues are
...
ConcreteInts.
llvm-svn: 46883
2008-02-08 07:14:58 +00:00
Ted Kremenek
6beacb1e14
Constified operator<< in APSInt.
...
llvm-svn: 46882
2008-02-08 07:14:19 +00:00
Eric Christopher
6aa87cbb63
Add instructions for building clang while building llvm.
...
llvm-svn: 46881
2008-02-08 07:10:48 +00:00
Ted Kremenek
707b07ccf9
Implemented transfer functions for Statement-Expressions and Commas.
...
Fixed bug in dispatching to the correct transfer function for |=, &=, and ^|.
llvm-svn: 46880
2008-02-08 07:05:39 +00:00
Eric Christopher
2dc30a5ac8
De-^Mify file.
...
llvm-svn: 46879
2008-02-08 06:45:49 +00:00
Steve Naroff
db5f7d7699
Support fuzzy parsing MS line-oriented __asm's that originate from a macro (a case where we can't obtain source line info). As the test case indicates, we don't currently support line-oriented asm statements that mix file/macro body tokens.
...
llvm-svn: 46878
2008-02-08 03:36:19 +00:00
Dan Gohman
7a55a94ba1
Avoid needlessly casting away const qualifiers.
...
llvm-svn: 46877
2008-02-08 03:29:40 +00:00
Dan Gohman
140a73efac
Avoid needlessly casting away const qualifiers.
...
llvm-svn: 46876
2008-02-08 03:26:46 +00:00