summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
...
* Pull out cpu string -> enum parsing for x86 as a separate function,Eric Christopher2015-08-261-66/+70
| | | | | | this is going to see use shortly in unifying feature set construction. llvm-svn: 246122
* [Static Analyzer] Checks to catch nullability related issues.Gabor Horvath2015-08-265-0/+1137
| | | | | | Differential Revision: http://reviews.llvm.org/D11468 llvm-svn: 246105
* DI: Update DISubprogram testcases after LLVM r246098Duncan P. N. Exon Smith2015-08-2610-24/+24
| | | | llvm-svn: 246099
* DI: Clarify meaning of createTempFunctionFwdDecl() arg, NFCDuncan P. N. Exon Smith2015-08-261-1/+1
| | | | | | | | I stared at `false /*declaration*/` for quite some time before giving up and checking the actual function to see what it meant. Replacing with `/* isDefinition = */ false` to save myself effort later. llvm-svn: 246095
* [ARM] Mark mcr/mrc builtin operands as required-immediate.Ahmed Bougacha2015-08-263-6/+78
| | | | | | An early error message is better than the "cannot select" alternative. llvm-svn: 246094
* Corrected 3 typos. NFCCharles Li2015-08-261-3/+3
| | | | llvm-svn: 246093
* [ms-inline-asm] Add field access to MS inline asm identifier lookupReid Kleckner2015-08-266-10/+182
| | | | | | | | | | | | | | Now we can parse code like this: struct A { int field; }; int f(A o) { __asm mov eax, o.field } Fixes PR19117. llvm-svn: 246088
* [X86][SSE] Add _mm_undefined_* intrinsicsSimon Pilgrim2015-08-269-0/+130
| | | | | | | | | | | | | | | | Added missing SSE/AVX 'undefined' intrinsics (PR24040): _mm_undefined_pd, _mm_undefined_ps + _mm_undefined_si128 _mm256_undefined_pd, _mm256_undefined_ps + _mm256_undefined_si256 _mm512_undefined, _mm512_undefined_ps, _mm512_undefined_pd + _mm512_undefined_epi32 Added builtin intrinsicss: __builtin_ia32_undef128, __builtin_ia32_undef256 + __builtin_ia32_undef512 Differential Revision: http://reviews.llvm.org/D12052 llvm-svn: 246083
* [ARM] Error out if float-ab=hard and abi=apcs-gnu on macho platforms.Akira Hatanaka2015-08-262-4/+21
| | | | | | | | | | | | | | | | Error out if -mfloat-abi=hard or -mhard-float is specified on the command line and the target ABI is APCS. Previously clang issued no warnings or errors and just passed the option to the backend, which had no effect on code generation for targets using APCS. This commit corrects the patch commited in r245866, which didn't take into account the fact that not all darwin targets use APCS. rdar://problem/22257950 http://reviews.llvm.org/D12344 llvm-svn: 246054
* Change Native Client x86 usr include and link path to match SDK expectationsDerek Schuff2015-08-262-7/+16
| | | | | | | | | | | | GNU multilib style uses x86_64-nacl/include and x86_64-nacl/usr/include but the SDK expects i686-nacl/usr/include for its files. Change the driver to use this. Fixes https://code.google.com/p/nativeclient/issues/detail?id=4108 Differential Revision: http://reviews.llvm.org/D11271 llvm-svn: 246040
* [ASTMatchers] Add type matcher for SubstTemplateTypeParmType.Samuel Benzaquen2015-08-263-0/+27
| | | | llvm-svn: 246037
* Convert a bunch of loops to ranged-for and clean up accordingly.Eric Christopher2015-08-261-170/+69
| | | | llvm-svn: 246027
* Make FileManager::getFileSystemOptions consistent with ↵Yaron Keren2015-08-262-3/+4
| | | | | | | | | | CompilerInstance::getFileSystemOpts and CompilerInvocation::getFileSystemOpts by renaming it to getFileSystemOpts, marking the const-returning access method const and adding a non-const version, making the function prototypes identical to CompilerInstance::getFileSystemOpts. llvm-svn: 246026
* Group some of the inline assembly related function prototypes nearEric Christopher2015-08-261-6/+7
| | | | | | each other. llvm-svn: 246024
* Remove dead code associated with parsing and setting ABI based onEric Christopher2015-08-263-35/+0
| | | | | | string name. llvm-svn: 246021
* Remove a TODO that isn't going to get fixed in this way.Eric Christopher2015-08-261-3/+0
| | | | llvm-svn: 246020
* [Sema] Don't assume CallExpr::getDirectCallee will succeedDavid Majnemer2015-08-262-1/+8
| | | | | | | | | | We tried to provide a very nice diagnostic when diagnosing an assignment to a const int & produced by a function call. However, we cannot always determine what function was called. This fixes PR24568. llvm-svn: 246014
* Update file comment to more accurately describe what's implemented.Eric Christopher2015-08-261-1/+1
| | | | llvm-svn: 246006
* Modify DeclaratorChuck::getFunction to be passed an Exception Specification ↵Nathan Wilson2015-08-269-17/+54
| | | | | | | | | | | | | | | | | SourceRange Summary: - Store the exception specification range's begin and end SourceLocation in DeclaratorChuck::FunctionTypeInfo. These SourceLocations can be used in a FixItHint Range. - Add diagnostic; function concept having an exception specification. Reviewers: hubert.reinterpretcast, fraggamuffin, faisalv, aaron.ballman, rsmith Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D11789 llvm-svn: 246005
* Add missing newline.Ted Kremenek2015-08-261-1/+1
| | | | llvm-svn: 246003
* [Headers] Require x86-registered for r245987 codegen tests.Ahmed Bougacha2015-08-251-0/+2
| | | | llvm-svn: 245992
* [Headers][X86] Add -O0 assembly tests for avx2 intrinsics.Ahmed Bougacha2015-08-251-0/+229
| | | | | | | | | | | | We agreed for r245605 that, as long as we don't affect -O0 codegen too much, it's OK to use native constructs rather than intrinsics. Let's test that, starting with AVX2 here. See PR24580. Differential Revision: http://reviews.llvm.org/D12212 llvm-svn: 245987
* Make sure that we evaluate __attribute__((enable_if)) on a method with no ↵Nick Lewycky2015-08-252-1/+71
| | | | | | overloads. Patch by Ettore Speziale! llvm-svn: 245985
* Clarify the error message when the reason the conversion is not viable is ↵Nick Lewycky2015-08-256-5/+7
| | | | | | because the returned value does not match the function return type. llvm-svn: 245979
* [X86] Remove unnecessary MMX declarations from Intrin.hSimon Pilgrim2015-08-252-3/+10
| | | | | | | | | | | | As discussed in PR23648 - the intrinsics _m_from_int, _m_to_int and _m_prefetch are defined in mmintrin.h and prfchwintrin.h so we don't need to in Intrin.h Added tests for _m_from_int and _m_to_int D11338 already added a test for _m_prefetch Differential Revision: http://reviews.llvm.org/D12272 llvm-svn: 245975
* Revert r245879. Speculative, might have caused crbug.com/524604Nico Weber2015-08-254-16/+33
| | | | llvm-svn: 245965
* [Sema] Handle leading and trailing __ for GNU attributesDavid Majnemer2015-08-252-8/+19
| | | | | | | | | | GNU attributes can have a leading and trailing __ appended/prepended to the attribute name. While the parser and AttributeList::getKind did the right thing, AttributeList::getAttributeSpellingListIndex did not. This fixes PR24565. llvm-svn: 245953
* [Static Analyzer] Fix tests to reflect the change in the diagnostic message.Gabor Horvath2015-08-251-70/+70
| | | | llvm-svn: 245951
* [Static Analyzer] Fixed a typo in a diagnostic message.Gabor Horvath2015-08-251-1/+1
| | | | llvm-svn: 245949
* Convert SampleProfile pass into a Module pass.Diego Novillo2015-08-251-12/+3
| | | | | | | | | | | Eventually, we will need sample profiles to be incorporated into the inliner's cost models. To do this, we need the sample profile pass to be a module pass. This patch makes no functional changes beyond the mechanical adjustments needed to run SampleProfile as a module pass. llvm-svn: 245941
* Fix possible crash on null base or type for array elements.Alexey Bataev2015-08-252-2/+5
| | | | llvm-svn: 245939
* [OPENMP 4.0] Initial support for array sections.Alexey Bataev2015-08-2539-21/+523
| | | | | | | | Adds parsing/sema analysis/serialization/deserialization for array sections in OpenMP constructs (introduced in OpenMP 4.0). Currently it is allowed to use array sections only in OpenMP clauses that accepts list of expressions. Differential Revision: http://reviews.llvm.org/D10732 llvm-svn: 245937
* Rewrite the PPC target feature handling to more resemble other targets.Eric Christopher2015-08-251-32/+42
| | | | | | | | | This involved specializing handleUserFeatures so that we could perform diagnostics on -only- user supplied features and migrating the rest of the initialization functions to set features based on enabling and disabling full feature sets. No functional change intended. llvm-svn: 245936
* Extract handling of user defined features into a function so we canEric Christopher2015-08-252-6/+18
| | | | | | specialize it on the targets. llvm-svn: 245935
* clang-format: Add space before member function reference qualifiers.Daniel Jasper2015-08-252-33/+36
| | | | | | | | | | | | Before: SomeType MemberFunction(const Deleted &)&; After: SomeType MemberFunction(const Deleted &) &; Seems to be much more common. llvm-svn: 245934
* Revert r245923 since it breaks mingw.Michael Kuperstein2015-08-253-143/+20
| | | | llvm-svn: 245929
* [X86] Expose the various _rot intrinsics on non-MS platformsMichael Kuperstein2015-08-253-20/+143
| | | | | | | | | | | | | | _rotl, _rotwl and _lrotl (and their right-shift counterparts) are official x86 intrinsics, and should be supported regardless of environment. This is in contrast to _rotl8, _rotl16, and _rotl64 which are MS-specific. Note that the MS documentation for _lrotl is different from the Intel documentation. Intel explicitly documents it as a 64-bit rotate, while for MS, since sizeof(unsigned long) for MSVC is always 4, a 32-bit rotate is implied. Differential Revision: http://reviews.llvm.org/D12271 llvm-svn: 245923
* [ARM NEON] Remove the old AArch64 vset_lane tests. NFC.Ahmed Bougacha2015-08-251-33/+0
| | | | | | They are now properly tested, since r245901. llvm-svn: 245915
* Reimplement the PPC explicit option checking to be a bit more obviousEric Christopher2015-08-251-8/+19
| | | | | | that we're looking for conflicting options and give an explanation. llvm-svn: 245914
* [clang-cl] Only respect /Oy- for x86_32David Majnemer2015-08-254-21/+28
| | | | | | | The /Oy- flag should have no effect for 64-bit X86, it has reliable unwind tables. llvm-svn: 245913
* Revert "broken test. uses system ld.gold"Derek Schuff2015-08-243-6/+0
| | | | | | We should check in a basic_nacl_tree that works and also fix --sysroot llvm-svn: 245910
* broken test. uses system ld.goldDerek Schuff2015-08-243-0/+6
| | | | llvm-svn: 245909
* Use GetLinkerPath utility function to find linker for NaCl toolchainDerek Schuff2015-08-241-1/+1
| | | | | | | | | | | | | | Summary: This is more consistent with other targets and also makes the -fuse-ld flag work. Reviewers: jvoung Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D10697 llvm-svn: 245908
* [ARM NEON] Use CGF cached Types instead of llvm::Type::get. NFC.Ahmed Bougacha2015-08-241-13/+11
| | | | llvm-svn: 245906
* [ARM NEON] Replace redundant code with a new GetFloatNeonType. NFC.Ahmed Bougacha2015-08-241-63/+22
| | | | llvm-svn: 245904
* [ARM NEON] Add missing AArch64 vget tests.Ahmed Bougacha2015-08-242-13/+348
| | | | llvm-svn: 245901
* [modules] Remove unnecessary deserialization of fully-external ↵Richard Smith2015-08-246-39/+79
| | | | | | HeaderFileInfos for all files we've seen in this compilation. llvm-svn: 245881
* [MS ABI] Don't emit stackrestore in cleanupsDavid Majnemer2015-08-244-33/+16
| | | | | | The stackrestore intrinsic isn't meaningful inside of a cleanup funclet. llvm-svn: 245879
* Revert r245866.Akira Hatanaka2015-08-242-9/+0
| | | | | | This commit was causing buildbot failures. llvm-svn: 245871
* [libclang] For convenience to clients, make sure that nullability and ↵Argyrios Kyrtzidis2015-08-243-0/+30
| | | | | | | | | | __kindof annotations do not hide the underlying type. rdar://22063577 llvm-svn: 245867
OpenPOWER on IntegriCloud