History log of /llvm-project/clang/lib/CodeGen/CodeGenModule.cpp (Results 1076 – 1100 of 2157)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
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 ...


1...<<41424344454647484950>>...87