- Oct 22, 2008
-
-
Argyrios Kyrtzidis authored
-Bring in int64_t for TableGen/Record.h and TableGen/TGLexer.h -Define strtoull llvm-svn: 57970
-
Duncan Sands authored
llvm-svn: 57969
-
Duncan Sands authored
may return i8, which can result in SELECT nodes for which the type of the condition is i8, but there are no patterns for select with i8 condition. Tweak the LegalizeTypes logic to avoid this as much as possible. This isn't a real fix because it is still perfectly possible to end up with such select nodes - CellSPU needs to be fixed IMHO. llvm-svn: 57968
-
Duncan Sands authored
ADDC/ADDE/SUBC/SUBE if the target supports it. llvm-svn: 57967
-
Duncan Sands authored
that is not of type MVT::i1 in SELECT and SETCC nodes. Relax the LegalizeTypes SELECT condition promotion sanity checks to allow other condition types than i1. llvm-svn: 57966
-
Duncan Sands authored
to have a different type to the vector element type. This should be fairly harmless because in the past guys like this were being built all over the place (and were cleaned up when I added this check). The reason for relaxing this check is that it helps LegalizeTypes legalize vector shuffles: the mask is a BUILD_VECTOR that it is *not always possible* to legalize while keeping it a BUILD_VECTOR (vector_shuffle requires the mask to be a BUILD_VECTOR, as opposed to a vector with the right vector type). With this check it is even harder to legalize the mask - turning the check off means that LegalizeTypes manages to legalize almost all vector shuffles encountered in practice. The correct solution is to change vector_shuffle to be a variadic node with the mask built into it as operands. While waiting for that change, this hack stops the problem with vector_shuffle from blocking the turning on of LegalizeTypes. llvm-svn: 57965
-
Zhongxing Xu authored
llvm-svn: 57964
-
Zhongxing Xu authored
llvm-svn: 57963
-
Chris Lattner authored
are their operands. llvm-svn: 57956
-
Douglas Gregor authored
llvm-svn: 57951
-
Chris Lattner authored
1. Remove a bogus assertion, clients other than sema can return a null pointer from actions that result in ParseTypeName returning null. 2. Remove dead RParenLoc variable. 3. Simplify control flow handling error conditions. 4. On a major failure, we should skip until ')' not until '}'. llvm-svn: 57949
-
Daniel Dunbar authored
- Stop playing fast and loose with the std stream. llvm-svn: 57948
-
Daniel Dunbar authored
llvm-svn: 57946
-
Oscar Fuentes authored
llvm-svn: 57945
-
Oscar Fuentes authored
llvm-svn: 57944
-
Oscar Fuentes authored
names of LLVMCore and ARMCodeGen. llvm-svn: 57943
-
Douglas Gregor authored
Fix a thinko in the qualification-conversion check when the qualificaitons are disjoint, and add some overloading-based tests of qualification conversions llvm-svn: 57942
-
Douglas Gregor authored
llvm-svn: 57941
-
Dale Johannesen authored
llvm-svn: 57940
-
Bill Wendling authored
llvm-svn: 57939
-
Daniel Dunbar authored
llvm-svn: 57938
-
Oscar Fuentes authored
llvm-svn: 57937
-
Daniel Dunbar authored
- Split backend related consumer out into Backend.cpp, replaces LLVMCodeGenWriter. - Structure follows llvm-gcc to some extent. - Still need to implement all the options which impact code generation and the optimization passes which llvm-gcc uses at various levels. llvm-svn: 57936
-
Douglas Gregor authored
Changes: - Sema::IsQualificationConversion determines whether we have a qualification conversion. - Sema::CheckSingleAssignment constraints now follows the C++ rules in C++, performing an implicit conversion from the right-hand side to the type of the left-hand side rather than checking based on the C notion of "compatibility". We now rely on the implicit-conversion code to determine whether the conversion can happen or not. Sema::TryCopyInitialization has an ugly reference-related hack to cope with the initialization of references, for now. - When building DeclRefExprs, strip away the reference type, since there are no expressions whose type is a reference. We'll need to do this throughout Sema. - Expr::isLvalue now permits functions to be lvalues in C++ (but not in C). llvm-svn: 57935
-
Daniel Dunbar authored
createPrintModulePass and createPrintFunctionPass. - So clients who compile w/o RTTI can use them. llvm-svn: 57933
-
Dale Johannesen authored
well, sort of. (Algorithm by Ian Ollmann.) llvm-svn: 57932
-
- Oct 21, 2008
-
-
Ted Kremenek authored
llvm-svn: 57931
-
Daniel Dunbar authored
previous commit. llvm-svn: 57930
-
Daniel Dunbar authored
llvm-svn: 57927
-
Dale Johannesen authored
The same one Apple gcc uses, faster. Also gets the extreme case in gcc.c-torture/execute/ieee/rbug.c correct which we weren't before; this is not sufficient to get the test to pass though, there is another bug. llvm-svn: 57926
-
Dan Gohman authored
handle first-class aggregate values. Also, fix a bug in the Ret handling for empty aggregates. llvm-svn: 57925
-
Daniel Dunbar authored
llvm-svn: 57924
-
Daniel Dunbar authored
documentation. Add C++ header marker. llvm-svn: 57923
-
Dan Gohman authored
llvm-svn: 57920
-
Ted Kremenek authored
When conjuring symbols for compound assignments, use the promoted type to determine if the symbolic value as a "loc::" or "nonloc::" value. llvm-svn: 57917
-
Dan Gohman authored
llvm-svn: 57915
-
rdar://problem/6257645Steve Naroff authored
ASTContext::isObjCObjectPointerType() needs to consider blocks as objects. Note: My previous commit was done in the test directory...as a result, this commit was necessary. llvm-svn: 57914
-
rdar://problem/6257645Steve Naroff authored
ASTContext::isObjCObjectPointerType() needs to consider blocks as objects. llvm-svn: 57913
-
Torok Edwin authored
llvm-svn: 57912
-
Jim Grosbach authored
llvm-svn: 57911
-