- Oct 23, 2009
-
-
Sebastian Redl authored
Apply the special enum restrictions from [over.match.oper]p3b2 in argument-dependent lookup too. This fixes PR5244. llvm-svn: 84963
-
Douglas Gregor authored
qualified reference to a declaration that is not a non-static data member or non-static member function, e.g., namespace N { int i; } int j = N::i; Instead, extend DeclRefExpr to optionally store the qualifier. Most clients won't see or care about the difference (since QualifierDeclRefExpr inherited DeclRefExpr). However, this reduces the number of top-level expression types that clients need to cope with, brings the implementation of DeclRefExpr into line with MemberExpr, and simplifies and unifies our handling of declaration references. Extended DeclRefExpr to (optionally) store explicitly-specified template arguments. This occurs when naming a declaration via a template-id (which will be stored in a TemplateIdRefExpr) that, following template argument deduction and (possibly) overload resolution, is replaced with a DeclRefExpr that refers to a template specialization but maintains the template arguments as written. llvm-svn: 84962
-
Fariborz Jahanian authored
pointer-to-member type conversion follwed by a pointer-to-member standard conversion. llvm-svn: 84955
-
Dan Gohman authored
the scale overflows pointer-sized arithmetic. This fixes PR5281. llvm-svn: 84954
-
John McCall authored
changed under the transform. llvm-svn: 84953
-
Dan Gohman authored
exact backedge taken count, when checking for infinite loops. This allows it to delete loops with multiple exit conditions. llvm-svn: 84952
-
Benjamin Kramer authored
TreeTransform.h:2333: warning: suggest parentheses around && within || llvm-svn: 84949
-
John McCall authored
llvm-svn: 84947
-
Chris Lattner authored
llvm-svn: 84943
-
Chris Lattner authored
implements something out of Target/README.txt producing: _foo: ## @foo movl 4(%esp), %eax movapd LCPI1_0, %xmm0 movapd %xmm0, (%eax) ret $4 instead of: _foo: ## @foo movl 4(%esp), %eax movapd _b, %xmm0 mulpd LCPI1_0, %xmm0 addpd _a, %xmm0 movapd %xmm0, (%eax) ret $4 llvm-svn: 84942
-
Chris Lattner authored
bytes (i256). llvm-svn: 84941
-
Chris Lattner authored
non-type-safe constant initializers. This sort of thing happens quite a bit for 4-byte loads out of string constants, unions, bitfields, and an interesting endianness check from sqlite, which is something like this: const int sqlite3one = 1; # define SQLITE_BIGENDIAN (*(char *)(&sqlite3one)==0) # define SQLITE_LITTLEENDIAN (*(char *)(&sqlite3one)==1) # define SQLITE_UTF16NATIVE (SQLITE_BIGENDIAN?SQLITE_UTF16BE:SQLITE_UTF16LE) all of these macros now constant fold away. This implements PR3152 and is based on a patch started by Eli, but heavily modified and extended. llvm-svn: 84936
-
Tanya Lattner authored
llvm-svn: 84934
-
Evan Cheng authored
llvm-svn: 84932
-
Evan Cheng authored
llvm-svn: 84931
-
Ted Kremenek authored
llvm-svn: 84930
-
Dale Johannesen authored
they don't get lost; I don't think the originator has write access. llvm-svn: 84928
-
Ted Kremenek authored
identifier. This caused a crash when reading PCH files that contained long identifier names. The issue is that 'StrLenPtr' was previously a 'const char *', meaning the byte loaded from it would be interpretted as a signed integer. If the topmost bit was set, conversion to 'unsigned' would extend that bit, causing an overflow. The solution is to make 'StrLenPtr' an 'unsigned char *', always treating the value as an unsigned integer. This fixes: <rdar://problem/7328900> llvm-svn: 84925
-
John Thompson authored
llvm-svn: 84924
-
Mike Stump authored
llvm-svn: 84923
-
Mike Stump authored
llvm-svn: 84922
-
Bill Wendling authored
llvm-svn: 84921
-
John McCall authored
one was PCH'ed without any. llvm-svn: 84920
-
Victor Hernandez authored
llvm-svn: 84919
-
Bill Wendling authored
does. llvm-svn: 84916
-
John McCall authored
Just r84734 now that some fundamental work has been completed. llvm-svn: 84914
-
John McCall authored
llvm-svn: 84913
-
David Goodwin authored
Allow the target to select the level of anti-dependence breaking that should be performed by the post-RA scheduler. The default is none. llvm-svn: 84911
-
Fariborz Jahanian authored
both scalar and aggregates. llvm-svn: 84910
-
Fariborz Jahanian authored
llvm-svn: 84909
-
John McCall authored
the DeclaratorInfo, one for semantic analysis), just build a single type whose canonical type will reflect the semantic analysis (assuming the type is well-formed, of course). To make that work, make a few changes to the type system: * allow the nominal pointee type of a reference type to be a (possibly sugared) reference type. Also, preserve the original spelling of the reference type. Both of these can be ignored on canonical reference types. * Remove ObjCProtocolListType and preserve the associated source information on the various ObjC TypeLocs. Preserve the spelling of protocol lists except in the canonical form. * Preserve some level of source type structure on parameter types, but canonicalize on the canonical function type. This is still a WIP. Drops code size, makes strides towards accurate source location representation, slight (~1.7%) progression on Cocoa.h because of complexity drop. llvm-svn: 84907
-
Ted Kremenek authored
Always emit error diagnostics when an error occurs within clang_createTranslationUnit() and clang_createTranslationUnitFromSource(). These kind of errors are ones that shouldn't be missed. llvm-svn: 84904
-
Ted Kremenek authored
Use 'waitpid' instead of 'wait'. Basing Program::Wait() on 'wait()' prevents it being correct within a multithreaded context. This address: PR 5277 (Program::Wait is unsafe to call from multiple threads). Note: If waitpid() turns out to be non-portable, we can add more autoconf magic, or look into another solution. llvm-svn: 84903
-
Jeffrey Yasskin authored
gcc-4.4. llvm-svn: 84902
-
Eric Christopher authored
llvm-svn: 84900
-
- Oct 22, 2009
-
-
Benjamin Kramer authored
llvm-svn: 84898
-
Jeffrey Yasskin authored
llvm-svn: 84895
-
Bill Wendling authored
llvm-svn: 84894
-
John Thompson authored
llvm-svn: 84893
-
Jeffrey Yasskin authored
llvm-svn: 84892
-