| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
| |
llvm-svn: 213261
|
| |
|
|
|
|
|
|
|
|
|
| |
This commit is missing tests and there are a few points that need to be
addressed before a new user-facing option can be added:
http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20140714/110198.html
This reverts commit r213112.
llvm-svn: 213260
|
| |
|
|
|
|
| |
properly generated.
llvm-svn: 213259
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before:
aaaaaa = aaaaaaaaaaaa ? aaaaaaaaaa ? aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
: aaaaaaaaaaaaaaaaaaaaaa
: aaaaaaaaaaaaaaaaaaaaaaaaaaaa;
After:
aaaaaa = aaaaaaaaaaaa
? aaaaaaaaaa ? aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
: aaaaaaaaaaaaaaaaaaaaaa
: aaaaaaaaaaaaaaaaaaaaaaaaaaaa;
llvm-svn: 213258
|
| |
|
|
| |
llvm-svn: 213257
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
I'm planning on upstreaming some test cases for the inline assembly
usage in the Mozilla code base. A lot of these test cases test the
recent fixes to this code.
Reviewers: rnk
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D4508
llvm-svn: 213255
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Memory barrier __builtin_arm_[dmb, dsb, isb] intrinsics are required to
implement their corresponding ACLE and MSVC intrinsics.
This patch ports ARM dmb, dsb, isb intrinsic to AArch64.
Requires LLVM r213247.
Differential Revision: http://reviews.llvm.org/D4521
llvm-svn: 213250
|
| |
|
|
|
|
| |
There should be no change in semantics at this stage.
llvm-svn: 213249
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
arguments.
Summary:
With this patch (and a corresponding LLVM patch), assembling an empty file with
GCC and Clang -fintegrated-as produce near identical objects. The remaining
differences are:
* GCC/GAS produce objects have a .pdr section
* GCC/GAS produce objects have a .gnu.attributes section
Other differences are insignificant such as precise file offsets and the order
of strings in the string table.
Differential Revision: http://reviews.llvm.org/D4531
llvm-svn: 213241
|
| |
|
|
| |
llvm-svn: 213237
|
| |
|
|
| |
llvm-svn: 213236
|
| |
|
|
|
|
|
|
|
|
| |
longer exists
Experienced with Thunderbird build
Patch by Matti Niemenmaa
llvm-svn: 213235
|
| |
|
|
| |
llvm-svn: 213232
|
| |
|
|
|
|
|
|
|
|
|
|
| |
-- a constructor list initialization that unpacked an initializer list into
constructor arguments and
-- a list initialization that created as std::initializer_list and passed it
as the first argument to a constructor
in the AST. Use this flag while instantiating templates to provide the right
semantics for the resulting initialization.
llvm-svn: 213224
|
| |
|
|
|
|
| |
declarations that don't start with 'friend' keyword. Add more unittests.
llvm-svn: 213220
|
| |
|
|
|
|
| |
Only alignment is changed, not required alignment.
llvm-svn: 213217
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
to fix debug info emission in the presence of plugins.
When plugins are used the Multiplex(AST)Consumer is employed to dispatch
to both the plugin ASTConsumers and the IRGen ASTConsumer. It wasn't
dispatching a critical call for debug info, resulting in plugin users
having a negative debugging experience.
While I'm here, forward a bunch of other missing calls through the
consumer that seem like they should be there.
To test this, use the example plugin (requires plugins and examples) and
split the test case up so that the plugin testing can be done under that
requirement while the non-plugin testing will execute even in builds
that don't include plugin support or examples.
llvm-svn: 213213
|
| |
|
|
|
|
|
|
| |
This reverts commit r213210.
Accidental commit.
llvm-svn: 213212
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
path is tested.
By having the two variables 'a' and 'b' in this test in a namespace, the
type was required to be complete before any debug info was ever emitted
(the entire namespace is parsed before the variables were emitted), this
meant that the codepath in which a declaration is emitted, then later on
the type is required to be complete and the debug info must be upgraded
to a definition was not used.
Moving the variables outside a namespace fixes this test coverage bug.
(interestingly, code coverage didn't help here -
HandleTagDeclRequireDefinition is fully covered because it's called even
in cases where the type hasn't been emitted for debug info at all
(further down in CGDebugInfo this no-ops) - so CC wouldn't've helped
catch this test coverage problem)
llvm-svn: 213211
|
| |
|
|
| |
llvm-svn: 213210
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Clang supports __assume, at least at the semantic level, when MS extensions are
enabled. Unfortunately, trying to actually compile code using __assume would
result in this error:
error: cannot compile this builtin function yet
__assume is an optimizer hint, and can be ignored at the IR level. Until LLVM
supports assumptions at the IR level, a noop lowering is valid, and that is
what is done here.
llvm-svn: 213206
|
| |
|
|
|
|
|
|
|
| |
constructor (and pass it an implicitly-generated std::initializer_list object),
be sure to mark the resulting construction as list-initialization. This fixes
an assert in template instantiation where we previously thought we'd got direct
non-list initialization without any parentheses.
llvm-svn: 213201
|
| |
|
|
|
|
|
|
| |
however certain sloppy Makefiles pass -z options directly to
the compiler. This patch enables clang to recognize these
options (because -z is not used by clang itself).
llvm-svn: 213198
|
| |
|
|
|
|
|
|
| |
instead of having to enter it manually as part of the attribute subject list. This only affects attributes appertaining to ObjC interfaces and protocols.
No new tests required as this is covered by existing tests.
llvm-svn: 213193
|
| |
|
|
|
|
| |
attribute.
llvm-svn: 213192
|
| |
|
|
|
|
| |
scope and syntax information for attributes with custom parsing. It turns out not to matter too much because the FIXME wasn't quite true -- none of these attributes have a C++11 spelling. However, it's still a good change (for instance, we may add an attribute with a type arg in the future for which this code now behaves properly).
llvm-svn: 213191
|
| |
|
|
|
|
| |
for my last patch. // rdar://17631257
llvm-svn: 213185
|
| |
|
|
| |
llvm-svn: 213184
|
| |
|
|
| |
llvm-svn: 213182
|
| |
|
|
| |
llvm-svn: 213180
|
| |
|
|
|
|
|
| |
It's already tested in cl-x86-flags.c, and can only be used
when targeting X86.
llvm-svn: 213179
|
| |
|
|
|
|
|
| |
With this change the memory of buffer in NestedNameSpecifierLocBuilder
is allocated in one place. It also prevents from allocation of tiny blocks.
llvm-svn: 213178
|
| |
|
|
|
|
| |
multilibs from the FSFS toolchain corresponding to the mips32r2/mips64r2 CPUs.
llvm-svn: 213175
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The rewrite facility's footprint is small so it's not worth going to these
lengths to support disabling at configure time, particularly since key compiler
features now depend on it.
Meanwhile the Objective-C rewriters have been moved under the
ENABLE_CLANG_ARCMT umbrella for now as they're comparatively heavy and still
potentially worth excluding from lightweight builds.
Tests are now passing with any combination of feature flags. The flags
historically haven't been tested by LLVM's build servers so caveat emptor.
llvm-svn: 213171
|
| |
|
|
| |
llvm-svn: 213170
|
| |
|
|
|
|
|
|
|
| |
to be applied to class or protocols. This will direct IRGen
for Objective-C metadata to use the new name in various places
where class and protocol names are needed.
rdar:// 17631257
llvm-svn: 213167
|
| |
|
|
| |
llvm-svn: 213165
|
| |
|
|
|
|
| |
The CoreOption flag got lost in the changes.
llvm-svn: 213164
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
-frewrite-includes. [PR20321]"
We've decided to make the core rewriter class and PP rewriters mandatory.
They're only a few hundred lines of code in total and not worth supporting as a
distinct build configuration, especially since doing so disables key compiler
features.
This reverts commit r213150.
Revert "clang/test: Introduce the feature "rewriter" for --enable-clang-rewriter."
This reverts commit r213148.
Revert "Move clang/test/Frontend/rewrite-*.c to clang/test/Frontend/Rewriter/"
This reverts commit r213146.
llvm-svn: 213159
|
| |
|
|
|
|
|
|
| |
This matches 'using namespace' declarations.
Differential Revision: http://reviews.llvm.org/D4517
llvm-svn: 213152
|
| |
|
|
|
|
| |
-frewrite-includes. [PR20321]
llvm-svn: 213150
|
| |
|
|
| |
llvm-svn: 213148
|
| |
|
|
| |
llvm-svn: 213146
|
| |
|
|
| |
llvm-svn: 213145
|
| |
|
|
|
|
|
|
| |
getMipsCPUAndABI() to get MIPS ABI name during multi-library selection.
No functional changes.
llvm-svn: 213143
|
| |
|
|
|
|
| |
No functional changes.
llvm-svn: 213142
|
| |
|
|
|
|
| |
Use the tools::mips::isNaN2008() routine instead.
llvm-svn: 213141
|
| |
|
|
|
|
| |
--enable-clang-static-analyzer.
llvm-svn: 213140
|
| |
|
|
| |
llvm-svn: 213139
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
As a result of this patch, assembling an empty file with GCC and Clang (using
GAS as the assembler) now produces identical objects.
-mfp32/-mfpxx/-mfp64 now form a trinity of options. -mfpxx is the default
when the triple vendor is 'img' or 'mti', the ABI is O32, and the CPU is
between mips2 and mips32r2/mips64r2 (inclusive).
-mno-shared is always given to the assembler to match the effect of
-mabicalls (currently unimplemented but Clang acts as if it is given).
Similarly, -call_nonpic is always given to match the effect of -mplt (also
unimplemented and acts as if given) except when the ABI is 64 in which case
-mplt has no effect so -KPIC is given instead.
-mhard-float/-msoft-float are now passed on.
-modd-spreg/-mno-odd-spreg are now passed on.
-mno-mips16 is correctly passed on. The assembler option is -no-mips16 not
-mno-mips16
Differential Revision: http://reviews.llvm.org/D4515
llvm-svn: 213138
|