History log of /llvm-project/llvm/lib/Transforms/Instrumentation/SanitizerCoverage.cpp (Results 1 – 25 of 242)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6
# 4646cabf 09-Dec-2024 Alexander Richardson <alexrichardson@google.com>

[SanitizerCoverage] Avoid unnecessary inttoptr

We are indexing into an array here, so we can use
CreateConstInBoundsGEP2_64 instead of the manual arithmetic.

Reviewed By: vitalybuka

Pull Request:

[SanitizerCoverage] Avoid unnecessary inttoptr

We are indexing into an array here, so we can use
CreateConstInBoundsGEP2_64 instead of the manual arithmetic.

Reviewed By: vitalybuka

Pull Request: https://github.com/llvm/llvm-project/pull/119097

show more ...


Revision tags: llvmorg-19.1.5
# 7800d59f 25-Nov-2024 thetruestblue <bblueconway@gmail.com>

[SanitizerCoverage] Add gated tracing callbacks support to trace-cmp (#113227)

The option -sanitizer-coverage-gated-trace-callbacks gates the
invocation of the trace-pc-guard callbacks based on the

[SanitizerCoverage] Add gated tracing callbacks support to trace-cmp (#113227)

The option -sanitizer-coverage-gated-trace-callbacks gates the
invocation of the trace-pc-guard callbacks based on the value of a
global variable, which is stored in a specific section.
In this commit, we extend this feature to trace-cmp and gate the cmp
callbacks to the same variable used for trace-pc-guard.

Update SanitizerCoverage doc with this flag.

rdar://135404160

Patch by: Andrea Fioraldi

show more ...


# 215f3dd5 24-Nov-2024 Vitaly Buka <vitalybuka@google.com>

[nfc][sancov] Remove unnecessary default argument (#117464)


# ae01e3a7 24-Nov-2024 Vitaly Buka <vitalybuka@google.com>

[nfc][sancov] Remove unnecessary default argument (#117463)


# f082782c 22-Nov-2024 thetruestblue <bblueconway@gmail.com>

[NFC][Fuzzer] Extract CreateGateBranch method. (#117236)

A Pre-commit for use in adding gated tracing callbacks support to
trace-cmp
[#113227](https://github.com/llvm/llvm-project/pull/113227/comm

[NFC][Fuzzer] Extract CreateGateBranch method. (#117236)

A Pre-commit for use in adding gated tracing callbacks support to
trace-cmp
[#113227](https://github.com/llvm/llvm-project/pull/113227/commits/53b316d74683064f2db88ec401f6c3018ee6896a)

rdar://135404160

Patch by: Andrea Fioraldi

show more ...


Revision tags: llvmorg-19.1.4
# 4d12a143 06-Nov-2024 Kazu Hirata <kazu@google.com>

[Instrumentation] Remove unused includes (NFC) (#115117)

Identified with misc-include-cleaner.


Revision tags: llvmorg-19.1.3
# 85c17e40 17-Oct-2024 Jay Foad <jay.foad@amd.com>

[LLVM] Make more use of IRBuilder::CreateIntrinsic. NFC. (#112706)

Convert many instances of:
Fn = Intrinsic::getOrInsertDeclaration(...);
CreateCall(Fn, ...)
to the equivalent CreateIntrinsi

[LLVM] Make more use of IRBuilder::CreateIntrinsic. NFC. (#112706)

Convert many instances of:
Fn = Intrinsic::getOrInsertDeclaration(...);
CreateCall(Fn, ...)
to the equivalent CreateIntrinsic call.

show more ...


# 927af63f 17-Oct-2024 thetruestblue <92476612+thetruestblue@users.noreply.github.com>

[SanitizerCoverage] Add an option to gate the invocation of the tracing callbacks (#108328)

Implement -sanitizer-coverage-gated-trace-callbacks to gate the
invocation of the tracing callbacks based

[SanitizerCoverage] Add an option to gate the invocation of the tracing callbacks (#108328)

Implement -sanitizer-coverage-gated-trace-callbacks to gate the
invocation of the tracing callbacks based on the value of a global
variable, which is stored in a specific section.
When this option is enabled, the instrumentation will not call into the
runtime-provided callbacks for tracing, thus only incurring in a trivial
branch without going through a function call. It is up to the runtime to
toggle the value of the global variable in order to enable tracing.

This option is only supported for trace-pc-guard.

Note: will add additional support for trace-cmp in a follow up PR.

Patch by Filippo Bigarella

rdar://101626834

show more ...


Revision tags: llvmorg-19.1.2
# fa789dff 11-Oct-2024 Rahul Joshi <rjoshi@nvidia.com>

[NFC] Rename `Intrinsic::getDeclaration` to `getOrInsertDeclaration` (#111752)

Rename the function to reflect its correct behavior and to be consistent
with `Module::getOrInsertFunction`. This is a

[NFC] Rename `Intrinsic::getDeclaration` to `getOrInsertDeclaration` (#111752)

Rename the function to reflect its correct behavior and to be consistent
with `Module::getOrInsertFunction`. This is also in preparation of
adding a new `Intrinsic::getDeclaration` that will have behavior similar
to `Module::getFunction` (i.e, just lookup, no creation).

show more ...


Revision tags: llvmorg-19.1.1, llvmorg-19.1.0
# 942e872d 17-Sep-2024 Antonio Frighetto <me@antoniofrighetto.com>

[Instrumentation] Do not request sanitizers for naked functions

Sanitizers instrumentation may be incompatible with naked functions,
which lack of standard prologue/epilogue.


Revision tags: llvmorg-19.1.0-rc4, llvmorg-19.1.0-rc3, llvmorg-19.1.0-rc2, llvmorg-19.1.0-rc1, llvmorg-20-init, llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6
# 45726c1a 15-May-2024 Daniel Kiss <daniel.kiss@arm.com>

[LLVM] Make sanitizers respect the disable_santizer_instrumentation attribute. (#91732)

`disable_sanitizer_instrumetation` is attached to functions that shall
not be instrumented e.g. ifunc resolve

[LLVM] Make sanitizers respect the disable_santizer_instrumentation attribute. (#91732)

`disable_sanitizer_instrumetation` is attached to functions that shall
not be instrumented e.g. ifunc resolver because those run before
everything is initialised.
Some sanitizer already handles this attribute, this patch adds it to
DataFLow and Coverage too.

show more ...


Revision tags: llvmorg-18.1.5
# 6fedc18c 20-Apr-2024 Vitaly Buka <vitalybuka@google.com>

[NFC][SanCov] Re-format long line


# 30257dd4 20-Apr-2024 Vitaly Buka <vitalybuka@google.com>

[NFC][SanCov] Move Module and analysis callbacks into ModuleSanitizerCoverage class

Avoid passing them around.


# b0fe4d4a 20-Apr-2024 Vitaly Buka <vitalybuka@google.com>

[NFCI][SanCov] Remove redundant copt<> defaults


# 905f34ee 20-Apr-2024 Vitaly Buka <vitalybuka@google.com>

[NFCI][SanCov] Remove unused default arguments


# 91c2e9c2 20-Apr-2024 Vitaly Buka <vitalybuka@google.com>

[NFC][SanCov] Pass DomTrees as const references

They are not optional.


# c60aa430 20-Apr-2024 Vitaly Buka <vitalybuka@google.com>

[NFCI][sanitizers][metadata] Exctract create{Unlikely,Likely}BranchWeights (#89464)

We have a lot of repeated code with random constants.
Particular values are not important, the one just needs to

[NFCI][sanitizers][metadata] Exctract create{Unlikely,Likely}BranchWeights (#89464)

We have a lot of repeated code with random constants.
Particular values are not important, the one just needs to be
bigger then another.

UR_NONTAKEN_WEIGHT is selected as it's the most common one.

show more ...


# f3587d41 20-Apr-2024 Vitaly Buka <vitalybuka@google.com>

[sancov] Apply branch weights when checking counters (#89458)

It reduces instrumentation overhead by ~50%.


Revision tags: llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init
# 6c2fbc3a 12-Jan-2024 Nikita Popov <npopov@redhat.com>

[IRBuilder] Add CreatePtrAdd() method (NFC) (#77582)

This abstracts over the common pattern of creating a gep with i8 element
type.


# 1daf2994 24-Dec-2023 Kazu Hirata <kazu@google.com>

[llvm] Use StringRef::contains (NFC)


# f92d970c 11-Dec-2023 Youngsuk Kim <youngsuk.kim@hpe.com>

[llvm][SanitizerCoverage] Remove no-op 'ptr addrspace(0)' to 'ptr addrspace(0)' pointercast (NFC)

Opaque ptr cleanup effort.


Revision tags: llvmorg-17.0.6, llvmorg-17.0.5
# 3ca4fe80 06-Nov-2023 Simon Pilgrim <llvm-dev@redking.me.uk>

[Transforms] Use StringRef::starts_with/ends_with instead of startswith/endswith. NFC.

startswith/endswith wrap starts_with/ends_with and will eventually go away (to more closely match string_view)


Revision tags: llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2
# 86dea5aa 29-Sep-2023 Nikita Popov <npopov@redhat.com>

[SanitizerCoverage] Avoid use of ConstantExpr::getCast() (NFC)

Work on APInt instead.


Revision tags: llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3, llvmorg-17.0.0-rc2
# 4ce7c4a9 01-Aug-2023 Bjorn Pettersson <bjorn.a.pettersson@ericsson.com>

[llvm] Drop some typed pointer handling/bitcasts

Differential Revision: https://reviews.llvm.org/D157016


Revision tags: llvmorg-17.0.0-rc1, llvmorg-18-init
# 913f7e93 17-Jul-2023 Jakob Koschel <jakobkoschel@gmail.com>

[SanitizerCoverage] Add fallback DebugLocation for instrumented calls

When building the kernel with LTO, KCOV & debug information enabled,
multiple inlinable SanitizerCoverage functions require debu

[SanitizerCoverage] Add fallback DebugLocation for instrumented calls

When building the kernel with LTO, KCOV & debug information enabled,
multiple inlinable SanitizerCoverage functions require debug information
present.

In such cases we repurpose the InstrumentationIRBuilder that ensures
the necessary debug information is added if necessary.

This has been done analogous to the work for the ThreadSanitizer
in D124937.

Bug: https://github.com/ClangBuiltLinux/linux/issues/1721

Reviewed By: melver

Differential Revision: https://reviews.llvm.org/D155377

show more ...


12345678910