- Aug 10, 2015
-
-
Reid Kleckner authored
Summary: The vtable takes its DLL storage class from the class, not the key function. When they disagree, the vtable won't be exported by the DLL that defines the key function. The easiest way to ensure that importers of the class emit their own vtable is to say that the class has no key function. Reviewers: hans, majnemer Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D11913 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244488 91177308-0d34-0410-b5e6-96231b3b80d8
-
David Majnemer authored
cl uses 'CL' and '_CL_' to prepend and append command line options to the given argument vector. There is an additional quirk whereby '#' is transformed into '='. Differential Revision: http://reviews.llvm.org/D11896 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244473 91177308-0d34-0410-b5e6-96231b3b80d8
-
Chih-Hung Hsieh authored
These changes are for Android x86_64 targets to be compatible with current Android g++ and conform to AMD64 ABI. https://llvm.org/bugs/show_bug.cgi?id=23897 * Return type of long double (fp128) should be fp128, not x86_fp80. * Vararg of long double (fp128) could be in register and overflowed to memory. https://llvm.org/bugs/show_bug.cgi?id=24111 * Return value of long double (fp128) _Complex should be in memory like a structure of {fp128,fp128}. Differential Revision: http://reviews.llvm.org/D11437 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244468 91177308-0d34-0410-b5e6-96231b3b80d8
-
Mark Heffernan authored
This change adds the new unroll metadata "llvm.loop.unroll.enable" which directs the optimizer to unroll a loop fully if the trip count is known at compile time, and unroll partially if the trip count is not known at compile time. This differs from "llvm.loop.unroll.full" which explicitly does not unroll a loop if the trip count is not known at compile time With this change "#pragma unroll" generates "llvm.loop.unroll.enable" rather than "llvm.loop.unroll.full" metadata. This changes the semantics of "#pragma unroll" slightly to mean "unroll aggressively (fully or partially)" rather than "unroll fully or not at all". The motivating example for this change was some internal code with a loop marked with "#pragma unroll" which only sometimes had a compile-time trip count depending on template magic. When the trip count was a compile-time constant, everything works as expected and the loop is fully unrolled. However, when the trip count was not a compile-time constant the "#pragma unroll" explicitly disabled unrolling of the loop(!). Removing "#pragma unroll" caused the loop to be unrolled partially which was desirable from a performance perspective. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244467 91177308-0d34-0410-b5e6-96231b3b80d8
-
Roman Kashitsyn authored
Summary: Add brace style `BS_WebKit` as described on https://www.webkit.org/coding/coding-style.html: * Function definitions: place each brace on its own line. * Other braces: place the open brace on the line preceding the code block; place the close brace on its own line. Set brace style used in `getWebKitStyle()` to the newly added `BS_WebKit`. Reviewers: djasper, klimek Subscribers: klimek, cfe-commits Differential Revision: http://reviews.llvm.org/D11837 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244446 91177308-0d34-0410-b5e6-96231b3b80d8
-
John Brawn authored
-mkernel enables -fno-builtin and -fno-common by default, but allows -fbuiltin and -fcommon to override that. However "-fbuiltin -fno-builtin" is treated the same as "-fbuiltin" which is wrong, so fix that. Also fixes similar behaviour when -fno-common is default. Differential Revision: http://reviews.llvm.org/D11459 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244437 91177308-0d34-0410-b5e6-96231b3b80d8
-
Daniel Marjamaki authored
[Static Analyzer] Warn when inner and outer conditions are identical. The inner condition is always true. Reviewed in http://reviews.llvm.org/D10892. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244435 91177308-0d34-0410-b5e6-96231b3b80d8
-
Filipe Cabecinhas authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244433 91177308-0d34-0410-b5e6-96231b3b80d8
-
Alexey Bataev authored
Original class was not marked with inheritance attribute and it causes a crash on codegen. Differential Revision: http://reviews.llvm.org/D11828 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244428 91177308-0d34-0410-b5e6-96231b3b80d8
-
NAKAMURA Takumi authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244427 91177308-0d34-0410-b5e6-96231b3b80d8
-
- Aug 09, 2015
-
-
Richard Smith authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244417 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
[modules] PR22534: Load files specified by -fmodule-file= eagerly. In particular, this avoids the need to re-parse module map files when using such a module. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244416 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
in the unit test that was checking a file the test no longer creates. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244415 91177308-0d34-0410-b5e6-96231b3b80d8
-
Justin Bogner authored
This was failing tests on a bunch of bots: http://lab.llvm.org:8011/builders/clang-hexagon-elf/builds/29919/steps/check-all http://lab.llvm.org:8011/builders/clang-x86_64-debian-fast/builds/29627/steps/check-all http://lab.llvm.org:8080/green/job/clang-stage1-configure-RA_check/9959/ http://lab.llvm.org:8080/green/job/clang-stage2-configure-Rlto_check/5591/ This reverts r244412 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244414 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
current compilation, not just those from imported modules. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244413 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
build process when we implicitly build a module. Previously, we'd create the specified .d file once for each implicitly-built module and then finally overwrite it with the correct contents after the requested build completes. (This fails if you use stdout as a dependency file, which is what the provided testcase does, and is how I discovered this brokenness.) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244412 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
created, rather than creating and attaching a new listener each time we load a module file (yes, the old ones were kept around too!). No functionality change intended, but a bit more sanity. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244411 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244410 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
arguments because the reloaded form might have become non-canonical across the serialization/deserialization step (this particularly happens when the canonical form of the type involves an expression). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244409 91177308-0d34-0410-b5e6-96231b3b80d8
-
Yaron Keren authored
Implemented in MinGW::Linker::AddLibGCC since AddLibgcc is a logic puzzle even before adding one more boolean. A first step towards simplification of AddLibgcc would be to factor out the Android AddLibgcc code into its own routine. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244407 91177308-0d34-0410-b5e6-96231b3b80d8
-
- Aug 08, 2015
-
-
Ted Kremenek authored
When interposing on a compiler doing cross-compilation, scan-build does not infer the target triple needed to pass to clang for doing static analysis. The --analyzer-target option allows one to manually specify the target triple used during static analysis (and only static analysis) for such cases. Patch by Honggyu Kim! Reviewed in http://reviews.llvm.org/D10356. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244400 91177308-0d34-0410-b5e6-96231b3b80d8
-
Anna Zaks authored
This reverts commit fc885033a30b6e30ccf82398ae7c30e646727b10. Revert all localization checker commits until the proper fix is implemented. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244394 91177308-0d34-0410-b5e6-96231b3b80d8
-
Anna Zaks authored
This reverts commit 57a46a75b408245cf4154a838fe13ad702065745. Revert all localization checker commits until the proper fix is implemented. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244393 91177308-0d34-0410-b5e6-96231b3b80d8
-
Anna Zaks authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244390 91177308-0d34-0410-b5e6-96231b3b80d8
-
Anna Zaks authored
Add checkers that detect code-level localizability issues for OS X / iOS: - A path sensitive checker that warns about uses of non-localized NSStrings passed to UI methods expecting localized strings. - A syntax checker that warns against not including a comment in NSLocalizedString macros. A patch by Kulpreet Chilana! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244389 91177308-0d34-0410-b5e6-96231b3b80d8
-
Devin Coughlin authored
The ObjCSuperCallChecker issues alarms for various Objective-C APIs that require a subclass to call to its superclass's version of a method when overriding it. So, for example, it raises an alarm when the -viewDidLoad method in a subclass of UIViewController does not call [super viewDidLoad]. This patch fixes a false alarm where the analyzer erroneously required the implementation of the superclass itself (e.g., UIViewController) to call super. rdar://problem/18416944 Differential Revision: http://reviews.llvm.org/D11842 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244386 91177308-0d34-0410-b5e6-96231b3b80d8
-
Peter Collingbourne authored
Function types without prototypes can arise when mangling a function type within an overloadable function in C. We mangle these as the absence of any parameter types (not even an empty parameter list). Differential Revision: http://reviews.llvm.org/D11848 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244374 91177308-0d34-0410-b5e6-96231b3b80d8
-
James Y Knight authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244370 91177308-0d34-0410-b5e6-96231b3b80d8
-
- Aug 07, 2015
-
-
Eric Christopher authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244346 91177308-0d34-0410-b5e6-96231b3b80d8
-
Eric Christopher authored
where it belongs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244342 91177308-0d34-0410-b5e6-96231b3b80d8
-
Nico Weber authored
Last part of PR11974. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244339 91177308-0d34-0410-b5e6-96231b3b80d8
-
Yaron Keren authored
Suggestion by David Blaikie! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244326 91177308-0d34-0410-b5e6-96231b3b80d8
-
Michael Wong authored
This is committed on behalf of Kelvin Li http://reviews.llvm.org/D11469?id=31227 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244325 91177308-0d34-0410-b5e6-96231b3b80d8
-
Yaron Keren authored
‘clang::tooling::JSONAnchorDest’ defined but not used [-Wunused-variable] from gcc 5.1. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244312 91177308-0d34-0410-b5e6-96231b3b80d8
-
Craig Topper authored
Make sure the Features field of the Builtin Info struct is always initialized. Silences -Wmissing-field-initializers. While there convert 0 in the BUILTIN macros to nullptr. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244307 91177308-0d34-0410-b5e6-96231b3b80d8
-
Ben Langmuir authored
... and add aarch32 to specifically refer to the 32-bit ones. Previously, 'arm' meant only 32-bit architectures and there was no way for a module to build with both 32 and 64 bit ARM architectures. Now a module that is intended to work on both architectures can specify requires arm whereas a module only for 32-bit platforms can say requires aarch32 and just like before, 64-bit only can say requires aarch64 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244306 91177308-0d34-0410-b5e6-96231b3b80d8
-
Douglas Katzman authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244290 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244289 91177308-0d34-0410-b5e6-96231b3b80d8
-
Richard Smith authored
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244288 91177308-0d34-0410-b5e6-96231b3b80d8
-
Eric Christopher authored
so that we can populate it on a per-target basis with required features. Future commits will start using this information for warnings. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@244286 91177308-0d34-0410-b5e6-96231b3b80d8
-