summaryrefslogtreecommitdiffstats
path: root/clang/lib
Commit message (Collapse)AuthorAgeFilesLines
* Implementation of __builtin_shufflevector, a portable builtin capable of Eli Friedman2008-05-146-10/+127
| | | | | | | | | expressing the full flexibility of the LLVM shufflevector instruction. The expected immediate usage is in *mmintrin.h, so that they don't depend on the mess of gcc-inherited (and not completely implemented) shuffle builtins. llvm-svn: 51113
* Change CRLF line endings to LF.Argyrios Kyrtzidis2008-05-141-6/+6
| | | | llvm-svn: 51103
* An array of VLAs is a VLA. Shouldn't make any significant difference at Eli Friedman2008-05-141-2/+4
| | | | | | | the moment, but it what you'd expect in the AST from reading the standard, and it should make VLA codegen a bit more strightforward. llvm-svn: 51086
* Add codegen support for block-level compound literals.Eli Friedman2008-05-133-4/+23
| | | | llvm-svn: 51081
* Add support for init lists for complex variables.Eli Friedman2008-05-131-0/+13
| | | | llvm-svn: 51080
* Remove AST dependency on VMCore by switching ExtVectorElementExpr off Constant.Nate Begeman2008-05-132-25/+33
| | | | llvm-svn: 51068
* Both operands to && have to be scalars, not just one.Eli Friedman2008-05-131-1/+1
| | | | llvm-svn: 51065
* Detabify.Eli Friedman2008-05-131-7/+7
| | | | llvm-svn: 51042
* Fix <rdar://problem/5924576> clang -fsyntax-only generates "redefinition" ↵Steve Naroff2008-05-121-1/+4
| | | | | | | | errors when parsing AppKit that gcc does not. Teach Sema::MergeVarDecl() about __private_extern__. llvm-svn: 51005
* Fix <rdar://problem/5928590> clang -fsyntax-only: "incompatible operand ↵Steve Naroff2008-05-121-2/+9
| | | | | | types ('int' and 'void')" on input that 'gcc -fsyntax-only' eats llvm-svn: 51002
* Unbreak build.Ted Kremenek2008-05-121-1/+1
| | | | llvm-svn: 50980
* Support StringLiteralVal when comparing LVal types.Ted Kremenek2008-05-121-0/+2
| | | | llvm-svn: 50979
* Grammar cleanup in comment.Ted Kremenek2008-05-121-3/+2
| | | | | | Remove redundant assignment. llvm-svn: 50978
* When reading in the DeclCtx during deserialization, register the DeclCtx of theTed Kremenek2008-05-121-3/+4
| | | | | | | | | ScopedDecl with the backpatcher, and *not* a local variable on the stack. The value of DeclCtx gets filled in *later* by the backpatcher. This fixes: http://llvm.org/bugs/show_bug.cgi?id=2308 llvm-svn: 50976
* Emit basic block for switch body; fixes PR2307.Eli Friedman2008-05-121-0/+3
| | | | llvm-svn: 50968
* Don't try to take the address of a bitfield; fixes PR2310.Eli Friedman2008-05-121-5/+4
| | | | llvm-svn: 50966
* fix free/delete mismatch problem in add/mergeProperties (found by valgrind)Nuno Lopes2008-05-101-4/+2
| | | | llvm-svn: 50945
* Rename IsPointerType to LVal::IsLValType, and update CFRefCount::EvalSummary ↵Ted Kremenek2008-05-093-17/+17
| | | | | | to use IsLValType when conjuring symbols for return values (this fixes a bug with an assertion firing in the analyzer when two qualified objective-c types were compared). llvm-svn: 50924
* -Implement proper name lookup for namespaces.Argyrios Kyrtzidis2008-05-095-174/+454
| | | | | | | -identifierResolver exposes an iterator interface to get all decls through the scope chain. -The semantic staff (checking IdentifierNamespace and Doug's checking for shadowed tags were moved out of IdentifierResolver and back into Sema. IdentifierResolver just gives an iterator for all reachable decls of an identifier. llvm-svn: 50923
* Added support to generate some atomic operators (add, sub, and, or etc..)Mon P Wang2008-05-091-0/+39
| | | | llvm-svn: 50919
* DO NOT pre-defined __OBJC2__. The __OBJC2__ macro should only be defined ↵Steve Naroff2008-05-091-2/+0
| | | | | | when targeting the new, Apple 2.0 *runtime ABI*. It is not intended to be used to #ifdef ObjC 2.0 langauge features. This is unfortunate (given it's name). In a perfect world, this defined would be named __OBJC2_RUNTIME_ABI__. Oh well. llvm-svn: 50913
* Add attribute "format" support for typedefs of function pointers.Ted Kremenek2008-05-091-0/+2
| | | | llvm-svn: 50906
* Handle all attributes on a parameterNate Begeman2008-05-091-1/+2
| | | | llvm-svn: 50903
* Extend vector member references to include {.hi, .lo, .e, .o} which return aNate Begeman2008-05-094-50/+103
| | | | | | | | | | | | | vector of the same element type and half the width, with the high, low, even, and odd elements respectively. Allow member references to member references, so that .hi.hi gives you the high quarter of a vector. This is fairly convenient syntax for some insert/extract operations. Remove some unnecessary methods/types in the ExtVectorElementExpr class. llvm-svn: 50892
* set long/pointers to 64-bits on ppc64/x86-64Chris Lattner2008-05-091-2/+6
| | | | llvm-svn: 50891
* parameterize pointer size/align better without doing virtual method calls in ↵Chris Lattner2008-05-092-4/+3
| | | | | | normal case. llvm-svn: 50890
* simplify some code, don't assume that sizeof(long) < sizeof(long long).Chris Lattner2008-05-091-11/+12
| | | | llvm-svn: 50888
* parameterize long long.Chris Lattner2008-05-091-1/+2
| | | | llvm-svn: 50887
* correctly parameterize long, patch by Nate.Chris Lattner2008-05-091-0/+1
| | | | llvm-svn: 50886
* Fix rdar://5921025 a crash on the included testcase.Chris Lattner2008-05-091-1/+2
| | | | llvm-svn: 50885
* Don't call into objc front-end when not parsing objc code. This avoidsChris Lattner2008-05-091-1/+3
| | | | | | crashes because objc types aren't set up right. llvm-svn: 50884
* Added initial support for supporting __NSString__ in attribute "format".Ted Kremenek2008-05-081-8/+58
| | | | | | | Still need to iron out some of the semantics (fixmes are present). This addresses <rdar://problem/5916348> llvm-svn: 50866
* Added -g command line options to clang for generating source level debug ↵Sanjiv Gupta2008-05-086-11/+309
| | | | | | information. This patch currently enables generation of line number debug information (stoppoints) and region begin/end debug information. The new files CGDebugInfo.h and CGDebugInfo.cpp implements the debug info manager class CGDebugInfo. llvm-svn: 50848
* Add basic support for the pic-* target triples and add support forChris Lattner2008-05-084-12/+73
| | | | | | | | | targets that do not support recursion (and thus codegen stack variables as globals). Patch contributed by Alireza Moshtaghi! llvm-svn: 50844
* The awesome GNU "comma elision extension" works with both the standardChris Lattner2008-05-081-3/+6
| | | | | | | __VA_ARGS__ syntax as well as with the amazingly awesome GNU "named variadic macro" extension. Allow it with the GNU syntax as well. llvm-svn: 50843
* Fix rdar://5919567: assertion failure: split didn't occur before erase!Chris Lattner2008-05-081-1/+3
| | | | llvm-svn: 50839
* Begin handling union bitfields.Devang Patel2008-05-071-3/+8
| | | | | | Note, this is just beginning. llvm-svn: 50835
* Added support for "drain".Ted Kremenek2008-05-071-0/+4
| | | | llvm-svn: 50831
* Synthesized getter/setter method declarations need not haveFariborz Jahanian2008-05-072-3/+5
| | | | | | | an implementation. This fixes couple of failing prperty tests caused by my previous patch. llvm-svn: 50830
* Expand the CF retain checker to allow the Create/Get rule to apply to anyTed Kremenek2008-05-071-52/+57
| | | | | | | | | | | | function that returns a CFxxxRef, not just functions whose name begins with CF. This implements <rdar://problem/5917879>. Added test case for this feature. Updated calls to CStrInCStrNoCase to swap their arguments, per compatibility with strcasestr. llvm-svn: 50829
* Flip order of arguments to CStrInStrNoCase.Ted Kremenek2008-05-071-2/+2
| | | | llvm-svn: 50824
* Use llvm::CStrInCStrNoCase instead of strcasestr, since the latter is not ↵Ted Kremenek2008-05-071-2/+4
| | | | | | | | portable. Correctly check if the result of CStrInCStrNoCase is NULL to generate summaries; before we were inverting the condition. llvm-svn: 50822
* This patch introduces declaration of getter methods for ObjC2'sFariborz Jahanian2008-05-073-10/+50
| | | | | | | properties. Couple of property tests will fail with this patch. Will fix them next. llvm-svn: 50818
* copy-paste: NS types are not typedefs.Ted Kremenek2008-05-071-7/+5
| | | | llvm-svn: 50817
* Fixup InitListExpr::child_begin/end. Thanks to Ted for catching the regression.Steve Naroff2008-05-071-2/+4
| | | | llvm-svn: 50816
* Fix off-by-one error.Steve Naroff2008-05-071-1/+1
| | | | llvm-svn: 50815
* Do not treat **instance** methods "copyWithZone:" and "mutableCopyWithZone:" ↵Ted Kremenek2008-05-071-18/+1
| | | | | | from NSObject as allocators. llvm-svn: 50802
* Diagnose attempts to use C++ default arguments outside of a function declarationDouglas Gregor2008-05-074-9/+46
| | | | llvm-svn: 50799
* Be less promiscuous with generating summaries for "new", "copy", "create".Ted Kremenek2008-05-071-3/+3
| | | | llvm-svn: 50798
* Added auto-summary generation for createXXX, copyXXX, newXXX methods.Ted Kremenek2008-05-071-16/+12
| | | | llvm-svn: 50795
OpenPOWER on IntegriCloud