summaryrefslogtreecommitdiffstats
path: root/clang/test
Commit message (Collapse)AuthorAgeFilesLines
* When a builtin that requires a constant is given a type- orDouglas Gregor2012-06-291-1/+18
| | | | | | | value-dependent expression, don't complain that it wasn't the constant we wanted. Fixes <rdar://problem/11688587> and PR11074. llvm-svn: 159404
* X86: add more GATHER intrinsics in ClangManman Ren2012-06-291-3/+50
| | | | | | | | | | | | | | | Corrected type for index of _mm256_mask_i32gather_pd from 256-bit to 128-bit Corrected types for src|dst|mask of _mm256_mask_i64gather_ps from 256-bit to 128-bit Support the following intrinsics: _mm_mask_i32gather_epi64, _mm256_mask_i32gather_epi64, _mm_mask_i64gather_epi64, _mm256_mask_i64gather_epi64, _mm_mask_i32gather_epi32, _mm256_mask_i32gather_epi32, _mm_mask_i64gather_epi32, _mm256_mask_i64gather_epi32 llvm-svn: 159403
* Teach the __is_trivially_assignable and __is_trivially_constructibleDouglas Gregor2012-06-291-1/+80
| | | | | | | type traits that assignment to/construction of a lifetime-qualified object under ARC is *not* trivial. Fixes <rdar://problem/11738725>. llvm-svn: 159401
* Switch Clang's CMake lit.site.cfg generation over to use the commonChandler Carruth2012-06-291-14/+5
| | | | | | helpers rather than its own special-rolled code. llvm-svn: 159398
* [analyzer] Add a test that we are, in fact, doing a DFS on the ExplodedGraph.Jordan Rose2012-06-291-0/+97
| | | | | | | | | | | | | | | | | | | | Previously: ...the comment said DFS... ...the WorkList being instantiated said BFS... ...and the implementation was actually DFS... ...due to an unintentional change in 2010... ...and everything kept working anyway. This fixes our std::deque implementation of BFS, but switches back to a SmallVector-based implementation of DFS. We should probably still investigate the ramifications of DFS vs. BFS, especially for large functions (and especially when we hit our block path limit), since this might completely change our memory use. It can also mask some bugs and reveal others depending on when we halt analysis. But at least we will not have this kind of little mistake creep in again. llvm-svn: 159397
* Warn on self-assignment to member variables. PR13104.Nico Weber2012-06-282-1/+67
| | | | llvm-svn: 159394
* Thread safety analysis: support release() function on scopedDeLesley Hutchins2012-06-281-1/+47
| | | | | | lockable objects. llvm-svn: 159387
* Fix template type diffing coloring (r159216) when forcing color output to a ↵David Blaikie2012-06-281-0/+8
| | | | | | | | file (not a terminal) Reviewed (over the shoulder) by Richard Trieu. llvm-svn: 159381
* Support the use of "=delete" and "=default" with delayed templateDouglas Gregor2012-06-281-1/+12
| | | | | | parsing. Fixes <rdar://problem/11700604>. llvm-svn: 159380
* Only print a semicolon after "no known conversion for Nth argument" if thereMatt Beaumont-Gay2012-06-282-53/+53
| | | | | | is a following clause. llvm-svn: 159369
* Support MIPS DSP Rev1 intrinsics. Simon Atanasyan2012-06-281-0/+227
| | | | | | This patch was reviewed in the llvm-commits list by Jim Grosbach. llvm-svn: 159366
* Warn on weak properties declared in protocols as well.Jordan Rose2012-06-281-0/+12
| | | | | | Previously this caused a crash, since protocols are not interfaces. llvm-svn: 159357
* Disable devirtualization when we have covariant returns. I will open a bugRafael Espindola2012-06-281-0/+34
| | | | | | for tracking this. llvm-svn: 159351
* Don't devirtualize calls when we don't have the correct type of the this pointerRafael Espindola2012-06-281-1/+20
| | | | | | | | | handy. It can be done, but we would have to build a derived-to-base cast during codegen to compute the correct this pointer. I will handle covariant returns next. llvm-svn: 159350
* Add -ftls-model command-line flag.Hans Wennborg2012-06-281-0/+28
| | | | | | This allows for setting the default TLS model. (PR9788) llvm-svn: 159336
* Add warning flag -Winvalid-pp-token for preprocessing-tokens which haveRichard Smith2012-06-282-4/+2
| | | | | | | | undefined behaviour, and move the diagnostic for '' from an Error into an ExtWarn in this group. This is important for some users of the preprocessor, and is necessary for gcc compatibility. llvm-svn: 159335
* Fix another issue with devirtualizing calls to final methods by passing themRafael Espindola2012-06-281-0/+26
| | | | | | | | the correct this pointer. There is some potential for sharing a bit more code with canDevirtualizeMemberFunctionCalls, but that can be done in an independent patch. llvm-svn: 159326
* Cleanup \brief comment. Since it is a single paragraph, no need to save ↵Dmitri Gribenko2012-06-282-5/+5
| | | | | | newlines there. llvm-svn: 159325
* Teach \brief parser about commands that start a new paragraph implicitlyDmitri Gribenko2012-06-281-0/+6
| | | | llvm-svn: 159309
* Attaching documentation comments to declarations: don't attach a comment to ↵Dmitri Gribenko2012-06-271-0/+4
| | | | | | a declaration if there is a preprocessor directive between them. llvm-svn: 159305
* Two more tests for PR13207 - wrong mangling of templates with back ↵Timur Iskhodzhanov2012-06-271-4/+14
| | | | | | references [-cxx-abi microsoft] llvm-svn: 159296
* Propagate lvalue alignment into bitfields. Per report on cfe-dev.Eli Friedman2012-06-271-0/+18
| | | | llvm-svn: 159295
* objective-c mrc: Issue warning for mrc, as is done for arc, whenFariborz Jahanian2012-06-271-0/+2
| | | | | | | property retains a block object as it could be on the stack. // rdar://11761511 llvm-svn: 159293
* Check for non-POD vararg argument type after default argument promotion, notRichard Smith2012-06-271-1/+7
| | | | | | before, so we don't incorrectly think arguments of function type are non-POD. llvm-svn: 159290
* patch to suggest 'static' function should be 'static inline' Fariborz Jahanian2012-06-272-0/+15
| | | | | | | when it appears to be unused and occurs in a header. // rdar://11202617 llvm-svn: 159282
* Fix a crash I introduced in r159212.Rafael Espindola2012-06-271-0/+12
| | | | llvm-svn: 159279
* Add a test for unterminated /* comments.Dmitri Gribenko2012-06-271-0/+13
| | | | llvm-svn: 159267
* Remove a completely unused and remarkably inaccurate list of testChandler Carruth2012-06-271-28/+0
| | | | | | | | | directories from the cmake file. Dunno what the history is here, but we're not using it. More refactorings to come here. llvm-svn: 159261
* Update the Clang CMake build to reflect the name change in LLVM r159258.Chandler Carruth2012-06-271-1/+1
| | | | llvm-svn: 159260
* Introduce __has_feature(attribute_unused_on_fields) to determine whetherDaniel Jasper2012-06-271-0/+7
| | | | | | | the current version of clang understands __attribute__((unused)) on fields. llvm-svn: 159252
* Add a few (currently failing) tests for the PR13207 (template mangling in ↵Timur Iskhodzhanov2012-06-271-0/+27
| | | | | | | | | | | | | the presence of back references). I've added an extra FileCheck pass for that with an extra "CURRENT" prefix. I've carefully chosed the CURRENT/CORRECT prefixes so they a) are self-descriptive b) have the same length so the mangling between the current and the correct version is obvious Feel free to ask me to change the prefixes if you know a better alternative. llvm-svn: 159250
* Add a few more test cases for the -cxx-abi microsoft mangler. Some of them ↵Timur Iskhodzhanov2012-06-271-2/+14
| | | | | | were broken recently llvm-svn: 159248
* [Windows] Improve mangling of templates when back references are presentTimur Iskhodzhanov2012-06-261-2/+63
| | | | llvm-svn: 159234
* preprocessing: gcc supports #line 0. So, treat thisFariborz Jahanian2012-06-261-2/+5
| | | | | | | | as a gcc supported extension with usual treatment with -pedantic (warn) and -pedantic-errors (error). // rdar://11550996 llvm-svn: 159226
* unit test tweakAndrew Trick2012-06-261-8/+8
| | | | llvm-svn: 159225
* Implement a lexer for structured comments.Dmitri Gribenko2012-06-261-2/+37
| | | | llvm-svn: 159223
* X86: add GATHER intrinsics (AVX2) in ClangManman Ren2012-06-261-0/+43
| | | | | | | | | Support the following intrinsics: _mm_mask_i32gather_pd, _mm256_mask_i32gather_pd, _mm_mask_i64gather_pd _mm256_mask_i64gather_pd, _mm_mask_i32gather_ps, _mm256_mask_i32gather_ps _mm_mask_i64gather_ps, _mm256_mask_i64gather_ps llvm-svn: 159222
* Fix a bug in my previous patch: If we are not doing a virtual call becauseRafael Espindola2012-06-261-0/+18
| | | | | | | the member expression is qualified, call the method specified in the code, not the most derived one we can find. llvm-svn: 159219
* Add template type diffing to Clang. This feature will provide a betterRichard Trieu2012-06-262-21/+433
| | | | | | | | | | | | comparison between two templated types when they both appear in a diagnostic. Type elision will remove indentical template arguments, which can be disabled with -fno-elide-type. Cyan highlighting is applied to the differing types. For more formatting, -fdiagnostic-show-template-tree will output the template type as an indented text tree, with differences appearing inline. Template tree works with or without type elision. llvm-svn: 159216
* MachineBlockPlacement would prefer that clang lay out blocks in source order.Andrew Trick2012-06-261-0/+40
| | | | llvm-svn: 159215
* objc: adds diagnostic group to several old objc warnings.Fariborz Jahanian2012-06-261-7/+1
| | | | | | // rdar://11741435 pr13184 llvm-svn: 159213
* During codegen of a virtual call we would extract any casts in the expressionRafael Espindola2012-06-261-1/+59
| | | | | | | | to see if we had an underlying final class or method, but we would then use the cast type to do the call, resulting in a direct call to the wrong method. llvm-svn: 159212
* [driver] Make -serialize-diagnostics (one dash) and alias forChad Rosier2012-06-261-0/+5
| | | | | | | --serialize-diagnostics. rdar://11734800 llvm-svn: 159208
* block literal irgen: several improvements on naming blockFariborz Jahanian2012-06-2615-39/+66
| | | | | | | | | | | | literal helper functions. All helper functions (global and locals) use block_invoke as their prefix. Local literal helper names are prefixed by their enclosing mangled function names. Blocks in non-local initializers (e.g. a global variable or a C++11 field) are prefixed by their mangled variable name. The descriminator number added to end of the name starts off with blank (for first block) and _<N> (for the N+2-th block). llvm-svn: 159206
* [asan] add missing asan instrumentation in generated global init functionsKostya Serebryany2012-06-261-0/+6
| | | | llvm-svn: 159191
* Fix lifetime issue for backing APValue of OpaqueValueExpr in recursiveRichard Smith2012-06-261-0/+11
| | | | | | | | | | constexpr function evaluation, and corresponding ASan / valgrind issue in tests, by storing the corresponding value with the relevant stack frame. This also prevents re-evaluation of the source of the underlying OpaqueValueExpr, which makes a major performance difference for certain contrived code (see testcase update). llvm-svn: 159189
* Give L__FUNCTION__ the right type in templates. PR13206.Nico Weber2012-06-251-0/+16
| | | | llvm-svn: 159171
* Add tests that I wrote for r159060 but forgot to `svn add`.Nico Weber2012-06-252-0/+29
| | | | llvm-svn: 159170
* PR12937: Explicitly deleting an explicit template specialization.David Blaikie2012-06-252-0/+16
| | | | | | | | | | | | | | | This works around a quirk in the way that explicit template specializations are handled in Clang. We generate an implicit declaration from the original template which the explicit specialization is considered to redeclare. This trips up the explicit delete logic. This change only works around that strange representation. At some point it'd be nice to remove those extra declarations to make the AST more accurately reflect the C++ semantics. Review by Doug Gregor. llvm-svn: 159167
* Extend the "expected ';' after struct" logic to also apply to enums, and toRichard Smith2012-06-253-1/+23
| | | | | | struct and enum forward-declarations. llvm-svn: 159164
OpenPOWER on IntegriCloud