summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
...
* Add __builtin_amdgpu_classMatt Arsenault2015-01-063-0/+19
| | | | llvm-svn: 225314
* [PowerPC] Add support for -mcmpbHal Finkel2015-01-062-0/+8
| | | | | | | In r225106, support for the CMPB instruction was added to the PowerPC backend. This adds the associated GCC-compatible feature flag. llvm-svn: 225312
* Update for .ll syntax change.Rafael Espindola2015-01-066-19/+19
| | | | llvm-svn: 225303
* R600: Handle amdgcn tripleTom Stellard2015-01-069-12/+19
| | | | | | For now there is no difference between amdgcn and r600. llvm-svn: 225294
* Basic: fix compilation with MSVCSaleem Abdulrasool2015-01-061-2/+4
| | | | | | | | | | | | | | MSVC doesn't like the instantiation of the structure in the initializer list. Initialize it in the constructor body to repair the build. TargetInfo.h(545) : error C2143: syntax error : missing ')' before '{' TargetInfo.h(545) : error C2143: syntax error : missing ';' before '}' TargetInfo.h(545) : error C2059: syntax error : ')' TargetInfo.h(545) : error C2059: syntax error : ',' TargetInfo.h(547) : error C2143: syntax error : missing ';' before '{' TargetInfo.h(547) : error C2447: '{' : missing function header (old-style formal list?) llvm-svn: 225247
* Sema: analyze I,J,K,M,N,O constraintsSaleem Abdulrasool2015-01-066-4/+198
| | | | | | | | | | Add additional constraint checking for target specific behaviour for inline assembly constraints. We would previously silently let all arguments through for these constraints. In cases where the constraints were violated, we could end up failing to select instructions and triggering assertions or worse, silently ignoring instructions. llvm-svn: 225244
* Set the default ISA for OpenBSD/mips64 to MIPS III.Brad Smith2015-01-062-0/+12
| | | | llvm-svn: 225241
* Allow -fsanitize-coverage=N with ubsan, clang partKostya Serebryany2015-01-062-2/+9
| | | | | | | | | | | | | | | | | | | | Summary: Allow -fsanitize-coverage=N with ubsan, clang part. This simply allows the flag combination. The LLVM will work out of the box, the compile-rt part will follow as a separate patch. Test Plan: check-clang Reviewers: samsonov Reviewed By: samsonov Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D6849 llvm-svn: 225229
* Revert "Use the integrated assembler by default on 32-bit PowerPC and SPARC"Duncan P. N. Exon Smith2015-01-054-7/+31
| | | | | | | | | This reverts commit r225212. It's failing on multiple buildbots [1][2]. [1]: http://lab.llvm.org:8011/builders/clang-x86_64-debian-fast/builds/22032 [2]: http://lab.llvm.org:8080/green/view/Clang/job/clang-stage1-cmake-RA-incremental_check/2357/ llvm-svn: 225221
* Use the integrated assembler by default on 32-bit PowerPC and SPARCBrad Smith2015-01-054-31/+7
| | | | llvm-svn: 225212
* Fix lit for builds under /optFrancisco Lopes da Silva2015-01-051-2/+2
| | | | llvm-svn: 225196
* Make this test a bit stricter.Rafael Espindola2015-01-051-7/+7
| | | | | | | The first function is named __cxx_global_var_init, which is a substring of the following functions @__cxx_global_var_init(1,2,3,etc). llvm-svn: 225191
* Disable warnings in this test.Rafael Espindola2015-01-051-4/+4
| | | | | | This makes it a lot easier to read the output from FileCheck when it fails. llvm-svn: 225190
* Fix clash of gcc toolchains in driver regression tests.Samuel Antao2015-01-057-1/+156
| | | | | | For some regression tests the path to the right toolchain is specified using the -sysroot switch. However, if clang was configured with a custom gcc toolchain (either by using GCC_INSTALL_PREFIX in cmake or the equivalent configure command), the path to the custom gcc toolchain path takes precedence to the one specified by sysroot. This causes several regression tests to fail as they will be using an unexpected path. This patch fixes this issue by adding --gcc-toolchain='' to all tests that rely on that. The empty string causes the driver to pick the path from sysroot instead. llvm-svn: 225182
* Fix dangling pointer in isDerivedFrom.Samuel Benzaquen2015-01-051-3/+3
| | | | | | | | | | | | | | | | Summary: Replace usage of StringRef with std::string in AST_MATCHER* generated matchers to make sure they keep their own copy of the string. The value could be a temporary and it causes the pointer to be dangling by the time the matcher is executed. Reviewers: klimek Subscribers: klimek, cfe-commits Differential Revision: http://reviews.llvm.org/D6843 llvm-svn: 225180
* clang/CMakeLists.txt: Introduce LLVM_SHLIB_OUTPUT_INTDIR also here, or ↵NAKAMURA Takumi2015-01-051-0/+6
| | | | | | plugins tests might fail. llvm-svn: 225170
* Fix formatting. NFC.Rafael Espindola2015-01-051-6/+3
| | | | llvm-svn: 225168
* clang-format: [Java] Fix incorrect detection of cast.Daniel Jasper2015-01-052-0/+6
| | | | | | | | | | | | | | After: return (a instanceof List<?>) ? aaaaaaaaaaaaaaaaaaaaaaa( aaaaaaaaaaaaaaaaaaaaa) : aaaaaaaaaaaaaaaaaaaaaaa; After: return (a instanceof List<?>) ? aaaaaaaaaaaaaaaaaaaaaaa(aaaaaaaaaaaaaaaaaaaaa) : aaaaaaaaaaaaaaaaaaaaaaa; llvm-svn: 225161
* clang-format: [Java] Fix incorrect recognition of annonymous classes.Daniel Jasper2015-01-042-2/+8
| | | | | | | | | | | | | | | | Before: someFunction(new Runnable() { public void run() { System.out.println(42); } }); After: someFunction(new Runnable() { public void run() { System.out.println(42); } }); llvm-svn: 225142
* clang-format: [Java] Change a few flags for Google's Java style.Daniel Jasper2015-01-041-0/+4
| | | | | | No tests added as all of these are already tested separately. llvm-svn: 225141
* Remove an assert that's not true on invalid code.Nico Weber2015-01-043-2/+31
| | | | | | | | | | r185773 added an assert that checked that a CXXUnresolvedConstructExpr either has a valid rparen, or exactly one argument. This doesn't have to be true for invalid inputs. Convert the assert to an if, and add a test for this case. Found by SLi's afl bot. llvm-svn: 225140
* Fix default image name to 'a.exe' on Windows, instead 'a.out'.Yaron Keren2015-01-043-2/+4
| | | | | | This applies to mingw as clang-cl already has its own logic for the filename. llvm-svn: 225134
* clang-format: Re-enable comment re-indentation for Java/JS.Daniel Jasper2015-01-042-6/+19
| | | | | | This was broken by r224120. llvm-svn: 225130
* Fix indentation. No behavior change.Nico Weber2015-01-041-1/+1
| | | | llvm-svn: 225129
* Wrap to 80 columns, no behavior change.Nico Weber2015-01-041-4/+7
| | | | llvm-svn: 225128
* Document that GetTypeForDeclarator() cannot return a null type.Nico Weber2015-01-043-18/+13
| | | | | | | | | | | | | Also add a few asserts for this. The existing code assumes this in a bunch of places already (see e.g. the assert at the top of ParseTypedefDecl(), and there are many unchecked calls on the result of GetTypeForDeclarator()), and from looking through the code this should always be true from what I can tell. This allows removing ASTContext::getNullTypeSourceInfo() too as that's now unused. No behavior change intended. llvm-svn: 225125
* Crash less enthusiasticially on _Atomic or __restrict__ on invalid types.Nico Weber2015-01-042-4/+14
| | | | | | | | | | Many places in Sema cannot handle isNull() types. This is fine, because in most places the type building code recovers by falling back to IntTy. In GetFullTypeForDeclarator(), this is done at the end of the getNumTypeObjects() loop body. This function calls BuildQualifiedType() before this fallback is done though, so it explicitly needs to check for isNull() types. llvm-svn: 225124
* Wrap to 80 columns, no behavior change.Nico Weber2015-01-041-4/+5
| | | | llvm-svn: 225122
* AST: Remove overzealous assertion from IsModifiableDavid Majnemer2015-01-042-6/+4
| | | | | | It's reasonable to ask if an l-value with class type is modifiable. llvm-svn: 225121
* Parse: __attribute__((keyword)) shouldn't errorDavid Majnemer2015-01-033-5/+6
| | | | | | | Weird constructs like __attribute__((inline)) or __attibute__((typename)) should result in warnings, not errors. llvm-svn: 225118
* Volatile reads are side-effecting operations, but in the general case of ↵Aaron Ballman2015-01-032-3/+11
| | | | | | | | | | | access through a volatile-qualified type, we're not certain of the underlying object's side-effects on access. Treat volatile accesses as "maybe" instead of "definite" side effects for the purposes of warning on evaluations in an unevaluated context. No longer diagnose on idiomatic code like: int * volatile v; (void)sizeof(*v); llvm-svn: 225116
* Remove -Werror from test.Rafael Espindola2015-01-031-2/+2
| | | | | | | It is not needed since we FileCheck for the warning and -Werror itself can end up unused. llvm-svn: 225102
* Really don't warn about -flto/fno-lto :-(Rafael Espindola2015-01-032-8/+28
| | | | | | This should fix the last bots. llvm-svn: 225100
* Also avoid warning on -flto/-fno-lto on linux.Rafael Espindola2015-01-021-2/+7
| | | | | | | On OS X a .s file is preprocessed, it is not on linux, which is why the warning was still showing up on linux but not OS X. llvm-svn: 225095
* Don't warn on unused -fno-lto.Rafael Espindola2015-01-022-2/+6
| | | | | | | It is somewhat common for CFLAGS to be used with .s files. We were already ignoring -flto. This patch just does the same for -fno-lto. llvm-svn: 225093
* DebugInfo: Provide a less subtle way to set the debug location of simple ret ↵David Blaikie2015-01-025-17/+23
| | | | | | | | instructions un-XFAILing the test XFAIL'd in r225086 after it regressed in r225083. llvm-svn: 225090
* Driver: honour the clang-cl behaviour on ARM as wellSaleem Abdulrasool2015-01-021-3/+4
| | | | | | | | | | Unfortunately, MSVC does not indicate to the driver what target is being used. This means that we cannot correctly select the target architecture for the clang_rt component. This breaks down when targeting windows with the clang driver as opposed to the clang-cl driver. This should fix the native ARM buildbot tests. llvm-svn: 225089
* Driver: reuse getCompilerRT in place of addSanitizerRTWindowsSaleem Abdulrasool2015-01-021-16/+16
| | | | | | | | | | | The logic for addSanitizerRTWindows was performing the same logical operation as getCompilerRT, which was previously fully generalised for Linux and Windows. This avoids having a duplication of the logic for building up the name of a clang_rt component. This change does move the current limitation for Windows into getArchNameForCompilerRTLib, where it is assumed that the architecture for Windows is always i386. llvm-svn: 225087
* Temporarily XFAIL fallout from r225083 while investigating.David Blaikie2015-01-021-0/+5
| | | | | | | | | | | | Between this behavior and that fixed by r225083/r225000, I'll take the latter over the former for now, but I'm immediately working on understanding/addressing this behavior too. (the fact that the code change in r225083 caused this change in behavior is a bit troubling anyway - given that it looks & claims to be just a preformance thing) llvm-svn: 225086
* DebugInfo: Remove some now-unnecessary location handling around function ↵David Blaikie2015-01-022-11/+0
| | | | | | | | | | | | | | arguments. r225000 generalized debug info line info handling for expressions such that this code is no longer necessary. This removes the last use of CGDebugInfo::getLocation, but not all the uses of CGDebugInfo::CurLoc, which is still used internally in CGDebugInfo. I'd like to do away with all of that & might succeed after a few more patches. llvm-svn: 225085
* DebugInfo: Fix cases where location failed to be updated after r225000David Blaikie2015-01-023-15/+11
| | | | | | | | | | | | | The optimization (that appears to have been here since the earliest implementation (r50848) & has become more complicated over the years) to avoid recreating the debugloc if it would be the same was out of date because ApplyDebugLocation was not re-updating the CurLoc/PrevLoc. This optimization doesn't look terribly beneficial/necessary, so I'm removing it - if it turns up in benchmarks, I'm happy to reconsider/reimplement this with justification, but for now it just seems to add complexity/problems. llvm-svn: 225083
* Instantiation of a CXXMethodDecl may fail when the parameter type cannot be ↵Nick Lewycky2015-01-022-2/+17
| | | | | | | | | | | | instantiated. Do not crash in this case. Fixes PR22040! The FIXME in the test is caused by TemplateDeclInstantiator::VisitCXXRecordDecl returning a nullptr instead of creating an invalid decl. This is a common pattern across all of TemplateDeclInstantiator, so I'm not comfortable changing it. The reason it's not invalid in the class template is due to support for an MSVC extension, see r137573. llvm-svn: 225071
* CodeGen: Don't crash when a lambda uses a local constexpr variableDavid Majnemer2015-01-012-18/+26
| | | | | | | | | | | The DeclRefExpr might be for a variable initialized by a constant expression which hasn't been ODR used. Emit the initializer for the variable instead of trying to capture the variable itself. This fixes PR22071. llvm-svn: 225060
* XFAIL test on win32 due to missing __complex supportDavid Blaikie2014-12-311-0/+2
| | | | llvm-svn: 225051
* [analyzer] Include a couple more comments on using xcrun to query the SDK.Ted Kremenek2014-12-311-0/+4
| | | | llvm-svn: 225039
* [analyzer] Change ccc-analyzer to mimick behavior on OSX Mavericks/Yosemite ↵Ted Kremenek2014-12-311-0/+20
| | | | | | to automatically infer the SDK location. llvm-svn: 225038
* Handle PPC64 return type (signext i32 rather than plain i32) in test caseDavid Blaikie2014-12-311-1/+1
| | | | llvm-svn: 225021
* Driver: unify compiler-rt component selectionSaleem Abdulrasool2014-12-301-37/+28
| | | | | | | | | | | | | Unify the component handling for compiler-rt. The components are regularly named, built up from: ${LIBRARY_PREFIX}clang_rt.${component}-${arch}[-${environment}]${LIBRARY_SUFFIX} Unify the handling for all the various components, into a single path to link against the various components in a number of places. This reduces duplication of the clang_rt library name construction logic. llvm-svn: 225013
* Driver: whitespaceSaleem Abdulrasool2014-12-301-9/+7
| | | | | | Fixup some whitespace/style issues. NFC. llvm-svn: 225012
* Remove a comment that appears a second time 22 lines further down.Nico Weber2014-12-301-3/+0
| | | | llvm-svn: 225004
OpenPOWER on IntegriCloud