summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
...
* add radar #Chris Lattner2010-08-261-0/+1
| | | | llvm-svn: 112212
* fix 2xi16 to pass as i32 instead of <2 x i16>. The former passes inChris Lattner2010-08-262-1/+26
| | | | | | | memory (as required) the later now passes in an xmm register. This fixes gcc.dg/compat/vector_1 on x86-32. llvm-svn: 112211
* clang.xcodeproj updated.Fariborz Jahanian2010-08-261-10/+6
| | | | llvm-svn: 112209
* vector of long and ulong are also classified as INTEGER in x86-64 abi,Chris Lattner2010-08-262-1/+9
| | | | | | | this fixes rdar://8358475 a failure of the gcc.dg/compat/vector_1 abi test. llvm-svn: 112205
* 1 x ulonglong needs to be classified as INTEGER, just like 1 x longlong,Chris Lattner2010-08-262-1/+7
| | | | | | this fixes a miscompilation on the included testcase, rdar://8359248 llvm-svn: 112201
* ...I forgot to check my new test after adding it, and lo, there's slightly ↵John McCall2010-08-261-1/+1
| | | | | | | | different behavior in C than in C++ (which is what the original test case was). llvm-svn: 112199
* Make sure we clear TypeSpecOwned when setting TypeSpecType to something whenJohn McCall2010-08-262-0/+9
| | | | | | it might previously have been a tag TST. llvm-svn: 112196
* Tweak the @selector completion to collapse multiple informative andDouglas Gregor2010-08-262-11/+14
| | | | | | typed-text blocks into one of each. llvm-svn: 112194
* When code-completing a potential call to a C++ non-static memberDouglas Gregor2010-08-265-6/+141
| | | | | | | | | function, take into account the qualifiers on the object argument (e.g., what will become "this"), filtering around uncallable member functions and giving a slight priority boost to those with exactly-matching qualifiers. llvm-svn: 112193
* Work around a gcc warning.John McCall2010-08-261-0/+1
| | | | llvm-svn: 112192
* Fix miscompilation. The cookie was not used when new'ing arrays with ↵Argyrios Kyrtzidis2010-08-262-5/+20
| | | | | | multiple dimensions. llvm-svn: 112188
* clang-interpreter: libFrontend depends on libSerialization. Fix linux build ↵Benjamin Kramer2010-08-262-2/+2
| | | | | | by changing the link order. llvm-svn: 112187
* Implement code completion for @selector expressionsDouglas Gregor2010-08-268-13/+124
| | | | llvm-svn: 112186
* More ordering tweaks in this silly, silly testDouglas Gregor2010-08-261-3/+0
| | | | llvm-svn: 112184
* mark boost's tracking bug as fixedGabor Greif2010-08-261-1/+1
| | | | llvm-svn: 112183
* Tweak wording in an assertion, from dawn@burble.org.Douglas Gregor2010-08-261-1/+1
| | | | llvm-svn: 112182
* Update clang-interpreter for recent DiagnosticClient ownership changes.Benjamin Kramer2010-08-261-2/+3
| | | | llvm-svn: 112181
* Move the sorting of code-completion results out of the main path andDouglas Gregor2010-08-269-12/+82
| | | | | | | | | | | into the clients, e.g., the printing code-completion consumer and c-index-test. Clients may want to re-sort the results anyway. Provide a libclang function that sorts the results. 3rd try. How embarrassing. llvm-svn: 112180
* Missed a couple.John McCall2010-08-261-2/+2
| | | | llvm-svn: 112179
* Apparently gcc doesn't always get injected class names right.John McCall2010-08-261-6/+10
| | | | llvm-svn: 112178
* Move things around so that Sema.h no longer depends on even DeclBase.h.John McCall2010-08-265-33/+66
| | | | | | It still depends on Type because DeclarationName.h does. llvm-svn: 112177
* tame an assertion, fixing rdar://8357396Chris Lattner2010-08-262-1/+10
| | | | llvm-svn: 112174
* CGValue: Increase width of allowed alignment. We could switch to log2, but weDaniel Dunbar2010-08-261-1/+1
| | | | | | don't currently need the bits anyway. llvm-svn: 112173
* Revert r112149, "Move the sorting of code-completion results out of the mainDaniel Dunbar2010-08-268-82/+7
| | | | | | path and ...", it is failing tests. llvm-svn: 112161
* Revert r112154, "Fix thinko in sorting operation", it depends on r112149 whichDaniel Dunbar2010-08-261-2/+2
| | | | | | doth lay upon the chopping block. llvm-svn: 112160
* Tweak test to avoid checking for a specific ordering where none existsDouglas Gregor2010-08-261-1/+0
| | | | llvm-svn: 112159
* De-memberify the VarDecl and FunctionDecl StorageClass enums.John McCall2010-08-2624-249/+285
| | | | | | This lets us remove Sema.h's dependency on Expr.h and Decl.h. llvm-svn: 112156
* Fix thinko in sorting operationDouglas Gregor2010-08-261-2/+2
| | | | llvm-svn: 112154
* Fix a typo.Dan Gohman2010-08-261-1/+1
| | | | llvm-svn: 112151
* Move the sorting of code-completion results out of the main path andDouglas Gregor2010-08-268-7/+82
| | | | | | | | | into the clients, e.g., the printing code-completion consumer and c-index-test. Clients may want to re-sort the results anyway. Provide a libclang function that sorts the results. llvm-svn: 112149
* Restore r112114 now that SmallVector<...,0> is safe.John McCall2010-08-266-144/+193
| | | | llvm-svn: 112148
* Move some type defines from smmintrin.h to emmintrin.h to match whereEric Christopher2010-08-262-4/+3
| | | | | | gcc defines them. llvm-svn: 112146
* Add libclang API hook "clang_getIBOutletCollectionType" to query the ↵Ted Kremenek2010-08-2611-8/+97
| | | | | | collection type for iboutletcollection attributes. llvm-svn: 112139
* Driver/Darwin: Switch back to old toolchain, looks like new one isn't quiteDaniel Dunbar2010-08-261-2/+6
| | | | | | ready yet. llvm-svn: 112138
* zap dead ctorChris Lattner2010-08-261-1/+0
| | | | llvm-svn: 112132
* IRgen/NEON: Fix codegen of vzip and vzipq.Daniel Dunbar2010-08-261-2/+2
| | | | | | - Will be adding an executable test case to test-suite repo. llvm-svn: 112126
* Driver: Fix thinko where I switched to always using the old toolchain, insteadDaniel Dunbar2010-08-261-1/+1
| | | | | | of always using the new toolchain. llvm-svn: 112125
* Driver/Darwin: Pass the right arch specific dir for ARM, when linking.Daniel Dunbar2010-08-261-3/+10
| | | | llvm-svn: 112124
* Revert r112114, "Pull DelayedDiagnostic and AccessedEntity out into their ownDaniel Dunbar2010-08-266-193/+144
| | | | | | header.", it is teh broken. llvm-svn: 112123
* With lax vector conversions (the default) make sure we convert between twoEric Christopher2010-08-264-9/+25
| | | | | | | | | vectors that are the same size. Fix up testcases accordingly and add a new one to make sure we still error if lax vector conversions are disabled. Fixes rdar://8328190 llvm-svn: 112122
* Revert "Move the sorting of code-completion results out of the main path andDouglas Gregor2010-08-268-116/+24
| | | | | | | into the clients", because the C standard library sucks. Where's my stable sort, huh? llvm-svn: 112121
* Add DelayedDiagnostic.h to xcode project file.Fariborz Jahanian2010-08-261-0/+2
| | | | llvm-svn: 112119
* More update of clang.xcodeproj for recent changes.Fariborz Jahanian2010-08-261-0/+28
| | | | llvm-svn: 112117
* Update clang.xcodeproj for recent refactorings.Fariborz Jahanian2010-08-261-42/+146
| | | | llvm-svn: 112116
* Fix typo in error message and testcase.Eric Christopher2010-08-252-7/+7
| | | | llvm-svn: 112115
* Pull DelayedDiagnostic and AccessedEntity out into their own header.John McCall2010-08-256-144/+193
| | | | | | | | This works courtesy of the new SmallVector<..., 0> specialization that doesn't require a complete type. Note that you'll need to pull at least SmallVector.h from LLVM to compile successfully. llvm-svn: 112114
* Revert r112043, static volatiles are removed by the optimizer. Thanks Chris!Argyrios Kyrtzidis2010-08-252-10/+1
| | | | llvm-svn: 112112
* Finally pass "two floats in a 64-bit unit" as a <2 x float> instead ofChris Lattner2010-08-252-9/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | as a double in the x86-64 ABI. This allows us to generate much better code for certain things, e.g.: _Complex float f32(_Complex float A, _Complex float B) { return A+B; } Used to compile into (look at the integer silliness!): _f32: ## @f32 ## BB#0: ## %entry movd %xmm1, %rax movd %eax, %xmm1 movd %xmm0, %rcx movd %ecx, %xmm0 addss %xmm1, %xmm0 movd %xmm0, %edx shrq $32, %rax movd %eax, %xmm0 shrq $32, %rcx movd %ecx, %xmm1 addss %xmm0, %xmm1 movd %xmm1, %eax shlq $32, %rax addq %rdx, %rax movd %rax, %xmm0 ret Now we get: _f32: ## @f32 movdqa %xmm0, %xmm2 addss %xmm1, %xmm2 pshufd $16, %xmm2, %xmm2 pshufd $1, %xmm1, %xmm1 pshufd $1, %xmm0, %xmm0 addss %xmm1, %xmm0 pshufd $16, %xmm0, %xmm1 movdqa %xmm2, %xmm0 unpcklps %xmm1, %xmm0 ret and compile stuff like: extern float _Complex ccoshf( float _Complex ) ; float _Complex ccosf ( float _Complex z ) { float _Complex iz; (__real__ iz) = -(__imag__ z); (__imag__ iz) = (__real__ z); return ccoshf(iz); } into: _ccosf: ## @ccosf ## BB#0: ## %entry pshufd $1, %xmm0, %xmm1 xorps LCPI4_0(%rip), %xmm1 unpcklps %xmm0, %xmm1 movaps %xmm1, %xmm0 jmp _ccoshf ## TAILCALL instead of: _ccosf: ## @ccosf ## BB#0: ## %entry movd %xmm0, %rax movq %rax, %rcx shlq $32, %rcx shrq $32, %rax xorl $-2147483648, %eax ## imm = 0xFFFFFFFF80000000 addq %rcx, %rax movd %rax, %xmm0 jmp _ccoshf ## TAILCALL There is still "stuff to be done" here for the struct case, but this resolves rdar://6379669 - [x86-64 ABI] Pass and return _Complex float / double efficiently llvm-svn: 112111
* Fix miscompilation. The custom new[]/delete[] methods were not getting ↵Argyrios Kyrtzidis2010-08-252-5/+19
| | | | | | called for arrays with more than 1 dimension. llvm-svn: 112107
* Add missing null checks in PseudoConstantAnalysisTom Care2010-08-251-1/+4
| | | | llvm-svn: 112100
OpenPOWER on IntegriCloud