summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fix comment typos.Bob Wilson2010-08-263-3/+3
| | | | llvm-svn: 112202
* 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
* Fix prototypes.Devang Patel2010-08-262-4/+5
| | | | llvm-svn: 112200
* ...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 JumpThreading smart enough to properly thread StrSwitch when it's ↵Owen Anderson2010-08-262-17/+239
| | | | | | compiled with clang++. llvm-svn: 112198
* MCELF: Compensate for the addend on i386. Patch by Roman Divacky, with some ↵Benjamin Kramer2010-08-261-14/+7
| | | | | | cleanups. llvm-svn: 112197
* 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
* Restrict the register to tGPR to make sure the str instruction will beJim Grosbach2010-08-261-4/+4
| | | | | | encodable as a 16-bit wide instruction. llvm-svn: 112195
* 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
* Revert r112176; it broke test/CodeGen/Thumb2/thumb2-cmn.ll.Dan Gohman2010-08-261-50/+8
| | | | llvm-svn: 112191
* Reapply r112091 and r111922, support for metadata linking, with aDan Gohman2010-08-2612-61/+154
| | | | | | | | | | | | | | fix: add a flag to MapValue and friends which indicates whether any module-level mappings are being made. In the common case of inlining, no module-level mappings are needed, so MapValue doesn't need to examine non-function-local metadata, which can be very expensive in the case of a large module with really deep metadata (e.g. a large C++ program compiled with -g). This flag is a little awkward; perhaps eventually it can be moved into the ClonedCodeInfo class. llvm-svn: 112190
* StringRef::compare_numeric also differed from StringRef::compare for ↵Benjamin Kramer2010-08-262-1/+2
| | | | | | characters > 127. llvm-svn: 112189
* 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
* Do unsigned char comparisons in StringRef::compare_lower to be more ↵Benjamin Kramer2010-08-262-4/+12
| | | | | | consistent with compare in corner cases. llvm-svn: 112185
* 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
* There seems to be a (potential) hardware bug with the CMN instruction andBill Wendling2010-08-261-8/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | comparison with 0. These two pieces of code should give identical results: rsbs r1, r1, 0 cmp r0, r1 mov r0, #0 it ls mov r0, #1 and: cmn r0, r1 mov r0, #0 it ls mov r0, #1 However, the CMN gives the *opposite* result when r1 is 0. This is because the carry flag is set in the CMP case but not in the CMN case. In short, the CMP instruction doesn't perform a truncate of the (logical) NOT of 0 plus the value of r0 and the carry bit (because the "carry bit" parameter to AddWithCarry is defined as 1 in this case, the carry flag will always be set when r0 >= 0). The CMN instruction doesn't perform a NOT of 0 so there is never a "carry" when this AddWithCarry is performed (because the "carry bit" parameter to AddWithCarry is defined as 0). The AddWithCarry in the CMP case seems to be relying upon the identity: ~x + 1 = -x However when x is 0 and unsigned, this doesn't hold: x = 0 ~x = 0xFFFF FFFF ~x + 1 = 0x1 0000 0000 (-x = 0) != (0x1 0000 0000 = ~x + 1) Therefore, we should disable *all* versions of CMN, especially when comparing against zero, until we can limit when the CMN instruction is used (when we know that the RHS is not 0) or when we have a hardware fix for this. (See the ARM docs for the "AddWithCarry" pseudo-code.) This is related to <rdar://problem/7569620>. llvm-svn: 112176
* Add a hackaround for PR7993 which is causing failures on x86 builders that ↵Chris Lattner2010-08-263-2/+11
| | | | | | lack sse2. llvm-svn: 112175
* 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
* I think enough general codegen bugs are fixed to allow this to workChris Lattner2010-08-261-4/+2
| | | | | | on random hosts, lets see! llvm-svn: 112172
* implement SplitVecOp_CONCAT_VECTORS, fixing the included testcase with SSE1.Chris Lattner2010-08-264-68/+100
| | | | llvm-svn: 112171
* Use pseudo instructions for VST1d64Q.Bob Wilson2010-08-264-4/+9
| | | | llvm-svn: 112170
* Make sure this forces the x86 targetsChris Lattner2010-08-261-1/+2
| | | | llvm-svn: 112169
* fix sse1 only codegen in x86-64 mode, which is something weChris Lattner2010-08-262-6/+18
| | | | | | apparently try to support. llvm-svn: 112168
* 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
* Revert r111922, "MapValue support for MDNodes. This is similar to r109117,Daniel Dunbar2010-08-261-27/+8
| | | | | | | except ...", it is causing *massive* performance regressions when building Clang with itself (-O3 -g). llvm-svn: 112158
* Revert r112091, "Remap metadata attached to instructions when remappingDaniel Dunbar2010-08-265-55/+17
| | | | | | individual ...", which depends on r111922, which I am reverting. llvm-svn: 112157
* 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
* zap dead code.Chris Lattner2010-08-262-37/+0
| | | | llvm-svn: 112155
* Fix thinko in sorting operationDouglas Gregor2010-08-261-2/+2
| | | | llvm-svn: 112154
* Updated CMake library dependencies. Removed unnecessary component nameOscar Fuentes2010-08-262-2/+2
| | | | | | from llvm-link/CMakeLists.txt llvm-svn: 112153
* Cleaned up the inline stack frame code one more time to prepare for inlinedGreg Clayton2010-08-268-238/+239
| | | | | | | | | | code stepping. Also we now store the stack frames for the current and previous stops in the thread in std::auto_ptr objects. When we create a thread stack frame list we pass the previous frame into it so it can re-use the frames and maintain will allow for variable changes to be detected. I will implement the stack frame reuse next. llvm-svn: 112152
* 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
* SmallVector's growth policies don't like starting from zero capacity.John McCall2010-08-261-1/+9
| | | | | | | | | | | I think there are good reasons to change this, but in the interests of short-term stability, make SmallVector<...,0> reserve non-zero capacity in its constructors. This means that SmallVector<...,0> uses more memory than SmallVector<...,1> and should really only be used (unless/until this workaround is removed) by clients that care about using SmallVector with an incomplete type. llvm-svn: 112147
* Move some type defines from smmintrin.h to emmintrin.h to match whereEric Christopher2010-08-262-4/+3
| | | | | | gcc defines them. llvm-svn: 112146
OpenPOWER on IntegriCloud