- Apr 09, 2009
-
-
Douglas Gregor authored
No functionality change (really). llvm-svn: 68726
-
- Mar 17, 2009
-
-
Sebastian Redl authored
Almost complete implementation of rvalue references. One bug, and a few unclear areas. Maybe Doug can shed some light on some of the fixmes. llvm-svn: 67059
-
- Mar 13, 2009
-
-
Chris Lattner authored
etc and make freestanding imply it. llvm-svn: 66972
-
- Feb 27, 2009
-
-
Douglas Gregor authored
giving them rough classifications (normal types, never-canonical types, always-dependent types, abstract type representations) and making it far easier to make sure that we've hit all of the cases when decoding types. Switched some switch() statements on the type class over to using this mechanism, and filtering out those things we don't care about. For example, CodeGen should never see always-dependent or non-canonical types, while debug info generation should never see always-dependent types. More switch() statements on the type class need to be moved over to using this approach, so that we'll get warnings when we add a new type then fail to account for it somewhere in the compiler. As part of this, some types have been renamed: TypeOfExpr -> TypeOfExprType FunctionTypeProto -> FunctionProtoType FunctionTypeNoProto -> FunctionNoProtoType There shouldn't be any functionality change... llvm-svn: 65591
-
- Feb 19, 2009
-
-
Chris Lattner authored
llvm-svn: 65024
-
- Feb 16, 2009
-
-
Douglas Gregor authored
llvm-svn: 64676
-
- Feb 15, 2009
-
-
Daniel Dunbar authored
llvm-svn: 64595
-
- Feb 14, 2009
-
-
Douglas Gregor authored
Add -ffreestanding to suppress the implicit declaration of library builtins like printf and malloc. Fixes PR3586 llvm-svn: 64566
-
Cedric Venet authored
llvm-svn: 64556
-
Douglas Gregor authored
we can define builtins such as fprintf, vfprintf, and __builtin___fprintf_chk. Give a nice error message when we need to implicitly declare a function like fprintf. llvm-svn: 64526
-
Douglas Gregor authored
printf-like functions, both builtin functions and those in the C library. The function-call checker now queries this attribute do determine if we have a printf-like function, rather than scanning through the list of "known functions IDs". However, there are 5 functions they are not yet "builtins", so the function-call checker handles them specifically still: - fprintf and vfprintf: the builtins mechanism cannot (yet) express FILE* arguments, so these can't be encoded. - NSLog: the builtins mechanism cannot (yet) express NSString* arguments, so this (and NSLogv) can't be encoded. - asprintf and vasprintf: these aren't part of the C99 standard library, so we really shouldn't be defining them as builtins in the general case (and we don't seem to have the machinery to make them builtins only on certain targets and depending on whether extensions are enabled). llvm-svn: 64512
-
- Jan 20, 2009
-
-
Eli Friedman authored
builtins. Also, a minor tweak to va_copy for consistency. llvm-svn: 62574
-
- Oct 26, 2008
-
-
Argyrios Kyrtzidis authored
Don't give a default argument to ASTContext::getFunctionType for the TypeQuals parameter, it causes subtle bugs where TypeQuals, while necessary, are omitted from the call. -Remove the default argument. -Update all call sites of ASTContext::getFunctionType. llvm-svn: 58187
-
- Oct 18, 2008
-
-
Mon P Wang authored
llvm-svn: 57751
-
- Sep 30, 2008
-
-
Chris Lattner authored
fixes problems handling references of va_list, which happens on x86_64. This fixes PR2841 and rdar://6252231 llvm-svn: 56809
-
- Sep 28, 2008
-
-
rdar://6252231Chris Lattner authored
by decaying __builtin_va_list's type when forming builtins. On x86-64 (and other targets) __builtin_va_list is a typedef for an array. llvm-svn: 56768
-
- Aug 11, 2008
-
-
Daniel Dunbar authored
- Drop Expr.h,RecordLayout.h from ASTContext.h (for DeclBase.h and SourceLocation.h) - Move ASTContext constructor into implementation llvm-svn: 54627
-
- Mar 16, 2008
-
-
Chris Lattner authored
lib dir and move all the libraries into it. This follows the main llvm tree, and allows the libraries to be built in parallel. The top level now enforces that all the libs are built before Driver, but we don't care what order the libs are built in. This speeds up parallel builds, particularly incremental ones. llvm-svn: 48402
-
- Mar 05, 2008
-
-
Chris Lattner authored
theoretically useful, but not useful in practice. It adds a bunch of complexity, and not much value. It's best to nuke it. One big advantage is that it means the target interfaces will soon lose their SLoc arguments and target queries can never emit diagnostics anymore (yay). Removing this also simplifies some of the core preprocessor which should make it slightly faster. Ted, I didn't simplify TripleProcessor, which can now have at most one triple, and can probably just be removed. Please poke at it when you have time. llvm-svn: 47930
-
- Dec 29, 2007
-
-
Chris Lattner authored
discussion of this change. llvm-svn: 45410
-
- Nov 28, 2007
-
-
Anders Carlsson authored
Add more intrinsics. We can now correctly parse both Carbon.h and Cocoa.h without having to do -arch ppc. llvm-svn: 44392
-
- Nov 27, 2007
-
-
Anders Carlsson authored
Add builtin type signature support for vector types. Add correct type signatures for a bunch of MMX builtins. We now parse all the intrinsics in mmintrin.h llvm-svn: 44357
-
- Oct 29, 2007
-
-
Chris Lattner authored
PR1750 llvm-svn: 43435
-
- Oct 13, 2007
-
-
Anders Carlsson authored
llvm-svn: 42939
-
- Oct 11, 2007
-
-
Anders Carlsson authored
Add __builtin_va_start to the list of builtins, make __builtin_va_list available to builtin functions. llvm-svn: 42857
-
Chris Lattner authored
llvm-svn: 42849
-
- Oct 07, 2007
-
-
Chris Lattner authored
llvm-svn: 42730
-
- Aug 17, 2007
-
-
Anders Carlsson authored
llvm-svn: 41136
-
- Aug 08, 2007
-
-
Steve Naroff authored
it is used by "tgmath.h" (so we need to support it). It might also come in handy when developing the overloaded function macros for OpenCU. Next check-in will make this an integer constant expression... llvm-svn: 40930
-
- Jun 16, 2007
-
-
Chris Lattner authored
out of the llvm namespace. This makes the clang namespace be a sibling of llvm instead of being a child. The good thing about this is that it makes many things unambiguous. The bad things is that many things in the llvm namespace (notably data structures like smallvector) now require an llvm:: qualifier. IMO, libsystem and libsupport should be split out of llvm into their own namespace in the future, which will fix this issue. llvm-svn: 39659
-
- Apr 06, 2007
-
-
Steve Naroff authored
Submitted by: Reviewed by: -Changed the name of TypeRef to QualType. Many diffs. -Changed the QualType constructor to require Quals be passed. This makes the code a bit more verbose, however will make the code easier to work on. Given the complexity of types, this should help spot bogosities. -Changed the Expr constructor to require a QualType. Same motivation. llvm-svn: 39395
-
- Mar 16, 2007
-
-
Steve Naroff authored
Submitted by: Reviewed by: Down to 0 warning/errors for Carbon.h. Also made a couple trivial name changes... llvm-svn: 39358
-
- Jan 29, 2007
-
-
Chris Lattner authored
of source code. For example: $ clang INPUTS/carbon_h.c -arch i386 -arch ppc prints: ... /usr/lib/gcc/i686-apple-darwin8/4.0.1/include/mmintrin.h:51:3: note: use of a target-specific builtin function, source is not 'portable' __builtin_ia32_emms (); ^ because carbon.h pulls in xmmintrin.h, and __builtin_ia32_emms isn't a builtin on ppc. Though clang now supports target-specific builtins, the full table isn't implemented yet. llvm-svn: 39328
-
- Jan 28, 2007
-
-
Chris Lattner authored
whose decl objects are lazily created the first time they are referenced. Builtin functions are described by the clang/AST/Builtins.def file, which makes it easy to add new ones. This is missing two important pieces: 1. Support for the rest of the gcc builtins. 2. Support for target-specific builtins (e.g. __builtin_ia32_emms). Just adding this builtins reduces the number of implicit function definitions by 6, reducing the # diagnostics from 550 to 544 when parsing carbon.h. I need to add all the i386-specific ones to eliminate several hundred more. ugh. llvm-svn: 39327
-