Revision tags: llvmorg-3.7.0-rc2 |
|
#
203f0922 |
| 28-Jul-2015 |
Justin Bogner <mail@justinbogner.com> |
InstrProf: Fix a misuse of the FunctionDecl API when generating coverage
This was calling FD->hasBody(), meaning "Does the function that this decl refers to have a body?", rather than FD->doesThisDe
InstrProf: Fix a misuse of the FunctionDecl API when generating coverage
This was calling FD->hasBody(), meaning "Does the function that this decl refers to have a body?", rather than FD->doesThisDeclarationHaveABody(), meaning "Is this decl a non-deleted definition?".
We might want to consider renaming these APIs :/
llvm-svn: 243360
show more ...
|
#
ca3cf9e6 |
| 24-Jul-2015 |
Mehdi Amini <mehdi.amini@apple.com> |
LLVM API Change: the Module always owns the DataLayout
From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 243115
|
Revision tags: llvmorg-3.7.0-rc1 |
|
#
f8b5012d |
| 13-Jul-2015 |
Samuel Antao <sfantao@us.ibm.com> |
[OpenMP] Add TLS-based implementation for threadprivate directive.
llvm-svn: 242080
|
#
c4bb47e3 |
| 30-Jun-2015 |
Adrian Prantl <aprantl@apple.com> |
Debug Info: Emit debug info for @import declarations.
This allows a module-aware debugger such as LLDB to import the currently visible modules before dropping into the expression evaluator.
rdar://
Debug Info: Emit debug info for @import declarations.
This allows a module-aware debugger such as LLDB to import the currently visible modules before dropping into the expression evaluator.
rdar://problem/20965932
llvm-svn: 241084
show more ...
|
#
64b0bdf8 |
| 30-Jun-2015 |
David Majnemer <david.majnemer@gmail.com> |
[CodeGen] Tweak isTriviallyRecursive further
isTriviallyRecursive is a hack used to bridge a gap between the expectations that source code assumes and the semantics that LLVM IR can provide. Specif
[CodeGen] Tweak isTriviallyRecursive further
isTriviallyRecursive is a hack used to bridge a gap between the expectations that source code assumes and the semantics that LLVM IR can provide. Specifically, asm labels on functions are treated as an explicit name for a GlobalObject in Clang but treated like an output-processing step in GCC. Tweak this hack a little further to emit calls to library functions instead of emitting an incorrect definition. The definition in question would have available_externally linkage (this is OK) but result in a call to itself which will either result in an infinite loop or stack overflow.
This fixes PR23964.
llvm-svn: 241043
show more ...
|
#
e74f525b |
| 30-Jun-2015 |
Adrian Prantl <aprantl@apple.com> |
Pass HeaderSearchOptions and PreprocessorOptions into CodeGenModule. In order to produce debug info for clang modules CGDebugInfo it needs access to macros passed on the command line and the isysroot
Pass HeaderSearchOptions and PreprocessorOptions into CodeGenModule. In order to produce debug info for clang modules CGDebugInfo it needs access to macros passed on the command line and the isysroot.
llvm-svn: 241035
show more ...
|
#
41011f67 |
| 25-Jun-2015 |
David Majnemer <david.majnemer@gmail.com> |
[CodeGen] Restrict isTriviallyRecursive to predefined lib functions forwarding to lib functions
isTriviallyRecursive is only supposed to guard functions part of the implementation.
This fixes PR239
[CodeGen] Restrict isTriviallyRecursive to predefined lib functions forwarding to lib functions
isTriviallyRecursive is only supposed to guard functions part of the implementation.
This fixes PR23953.
llvm-svn: 240735
show more ...
|
#
5aecacb2 |
| 25-Jun-2015 |
Diego Novillo <dnovillo@google.com> |
Display profile file name when emitting a file not found diagnostic.
When a profile file cannot be opened, we used to display just the error message but not the name of the profile the compiler was
Display profile file name when emitting a file not found diagnostic.
When a profile file cannot be opened, we used to display just the error message but not the name of the profile the compiler was trying to open. This will become useful in the next set of patches that introduce GCC-compatible flags to specify profiles.
llvm-svn: 240715
show more ...
|
Revision tags: llvmorg-3.6.2, llvmorg-3.6.2-rc1 |
|
#
ab9db510 |
| 22-Jun-2015 |
Alexander Kornienko <alexfh@google.com> |
Revert r240270 ("Fixed/added namespace ending comments using clang-tidy").
llvm-svn: 240353
|
#
3d9d929e |
| 22-Jun-2015 |
Alexander Kornienko <alexfh@google.com> |
Fixed/added namespace ending comments using clang-tidy. NFC
The patch is generated using this command:
$ tools/extra/clang-tidy/tool/run-clang-tidy.py -fix \ -checks=-*,llvm-namespace-comme
Fixed/added namespace ending comments using clang-tidy. NFC
The patch is generated using this command:
$ tools/extra/clang-tidy/tool/run-clang-tidy.py -fix \ -checks=-*,llvm-namespace-comment -header-filter='llvm/.*|clang/.*' \ work/llvm/tools/clang
To reduce churn, not touching namespaces spanning less than 10 lines.
llvm-svn: 240270
show more ...
|
#
b9b73ef9 |
| 19-Jun-2015 |
Alexander Potapenko <glider@google.com> |
[ASan] Initial support for Kernel AddressSanitizer
This patch adds initial support for the -fsanitize=kernel-address flag to Clang. Right now it's quite restricted: only out-of-line instrumentation
[ASan] Initial support for Kernel AddressSanitizer
This patch adds initial support for the -fsanitize=kernel-address flag to Clang. Right now it's quite restricted: only out-of-line instrumentation is supported, globals are not instrumented, some GCC kasan flags are not supported. Using this patch I am able to build and boot the KASan tree with LLVMLinux patches from github.com/ramosian-glider/kasan/tree/kasan_llvmlinux. To disable KASan instrumentation for a certain function attribute((no_sanitize("kernel-address"))) can be used.
llvm-svn: 240131
show more ...
|
#
86d34a72 |
| 17-Jun-2015 |
Peter Collingbourne <peter@pcc.me.uk> |
CodeGen: Factor out some of the bitset entry creation code. NFC.
llvm-svn: 239927
|
#
b54db52a |
| 11-Jun-2015 |
Yaron Keren <yaron.keren@gmail.com> |
C++11 rangify several loops.
llvm-svn: 239528
|
#
162c91cc |
| 05-Jun-2015 |
Eric Christopher <echristo@gmail.com> |
Rename the single non-style conformant function in TargetCodeGenInfo and update all callers.
llvm-svn: 239193
|
#
3204b152 |
| 29-May-2015 |
Benjamin Kramer <benny.kra@googlemail.com> |
Replace push_back(Constructor(foo)) with emplace_back(foo) for non-trivial types
If the type isn't trivially moveable emplace can skip a potentially expensive move. It also saves a couple of charact
Replace push_back(Constructor(foo)) with emplace_back(foo) for non-trivial types
If the type isn't trivially moveable emplace can skip a potentially expensive move. It also saves a couple of characters.
Call sites were found with the ASTMatcher + some semi-automated cleanup.
memberCallExpr( argumentCountIs(1), callee(methodDecl(hasName("push_back"))), on(hasType(recordDecl(has(namedDecl(hasName("emplace_back")))))), hasArgument(0, bindTemporaryExpr( hasType(recordDecl(hasNonTrivialDestructor())), has(constructExpr()))), unless(isInTemplateInstantiation()))
No functional change intended.
llvm-svn: 238601
show more ...
|
#
bb4f962a |
| 28-May-2015 |
Hans Wennborg <hans@hanshq.net> |
Get the dll storage class right for structors of classes exported/imported via explicit instantiation (PR23667)
This is a follow-up to r238266. It turned out structors are codegened through a differ
Get the dll storage class right for structors of classes exported/imported via explicit instantiation (PR23667)
This is a follow-up to r238266. It turned out structors are codegened through a different path, and didn't get the storage class set in EmitGlobalFunctionDefinition.
llvm-svn: 238443
show more ...
|
#
2f1637ad |
| 20-May-2015 |
Pete Cooper <peter_cooper@apple.com> |
Use Intrinsic::ID instead of unsigned. NFC.
This is after LLVM r237810 which made Function::getIntrinsicID() return an Intrinsic::ID.
llvm-svn: 237811
|
#
42413141 |
| 15-May-2015 |
Richard Smith <richard-llvm@metafoo.co.uk> |
[modules] Add local submodule visibility support for declarations.
With this change, enabling -fmodules-local-submodule-visibility results in name visibility rules being applied to submodules of the
[modules] Add local submodule visibility support for declarations.
With this change, enabling -fmodules-local-submodule-visibility results in name visibility rules being applied to submodules of the current module in addition to imported modules (that is, names no longer "leak" between submodules of the same top-level module). This also makes it much safer to textually include a non-modular library into a module: each submodule that textually includes that library will get its own "copy" of that library, and so the library becomes visible no matter which including submodule you import.
llvm-svn: 237473
show more ...
|
#
915df996 |
| 15-May-2015 |
Peter Collingbourne <peter@pcc.me.uk> |
Implement no_sanitize attribute.
Differential Revision: http://reviews.llvm.org/D9631
llvm-svn: 237463
|
Revision tags: llvmorg-3.6.1, llvmorg-3.6.1-rc1 |
|
#
c7da6da5 |
| 09-May-2015 |
NAKAMURA Takumi <geek4civic@gmail.com> |
Revert r236879, "Do not emit thunks with available_externally linkage in comdats"
It broke pecoff, at least i686-cygwin.
llvm-svn: 236937
|
#
2312bd38 |
| 08-May-2015 |
Derek Schuff <dschuff@google.com> |
Do not emit thunks with available_externally linkage in comdats
Functions with available_externally linkage will not be emitted to object files (they will just be undefined symbols), so it does not
Do not emit thunks with available_externally linkage in comdats
Functions with available_externally linkage will not be emitted to object files (they will just be undefined symbols), so it does not make sense to put them in comdats.
Creates a second overload of maybeSetTrivialComdat that uses the GlobalObject instead of the Decl, and uses that in several places that had the faulty logic.
Differential Revision: http://reviews.llvm.org/D9580
llvm-svn: 236879
show more ...
|
#
52cc487b |
| 07-May-2015 |
Artem Belevich <tra@google.com> |
[cuda] Include GPU binary into host object file and generate init/deinit code.
- added -fcuda-include-gpubinary option to incorporate results of device-side compilation into host-side one. - gener
[cuda] Include GPU binary into host object file and generate init/deinit code.
- added -fcuda-include-gpubinary option to incorporate results of device-side compilation into host-side one. - generate code to register GPU binaries and associated kernels with CUDA runtime and clean-up on exit. - added test case for init/deinit code generation.
Differential Revision: http://reviews.llvm.org/D9507
llvm-svn: 236765
show more ...
|
#
d3c127e2 |
| 07-May-2015 |
David Blaikie <dblaikie@gmail.com> |
[opaque pointer type] Correctly pass the pointee type when creating a GEP constant expression
llvm-svn: 236751
|
#
881b2340 |
| 29-Apr-2015 |
David Blaikie <dblaikie@gmail.com> |
[opaque pointer type] update for LLVM API change
llvm-svn: 236161
|
#
dfddebcf |
| 29-Apr-2015 |
Bradley Smith <bradley.smith@arm.com> |
Revert code changes made under r235976.
This issue was fixed elsewhere in r235396 in a more general way, hence these changes no longer do anything. Keep the testcase however, to ensure that we don't
Revert code changes made under r235976.
This issue was fixed elsewhere in r235396 in a more general way, hence these changes no longer do anything. Keep the testcase however, to ensure that we don't regress this for ARM.
llvm-svn: 236104
show more ...
|