[PATCH] D51036: clang-format: Fix formatting C++ namespaces with preceding 'inline' or 'export' specifier

2018-08-21 Thread Marco Elver via Phabricator via cfe-commits
melver created this revision. Herald added a subscriber: cfe-commits. This fixes formatting namespaces with preceding 'inline' and 'export' (Modules TS) specifiers. This change fixes namespaces not being identified as such with preceding 'inline' or 'export' specifiers. Motivation: I was exper

[PATCH] D51036: clang-format: Fix formatting C++ namespaces with preceding 'inline' or 'export' specifier

2018-08-22 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 161960. melver marked 8 inline comments as done. melver added a comment. Many thanks for the suggestions! PTAL. Repository: rC Clang https://reviews.llvm.org/D51036 Files: lib/Format/Format.cpp lib/Format/FormatToken.h lib/Format/NamespaceEndCommen

[PATCH] D51036: clang-format: Fix formatting C++ namespaces with preceding 'inline' or 'export' specifier

2018-08-27 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 162653. melver marked 4 inline comments as done. melver added a comment. Many thanks! PTAL. Repository: rC Clang https://reviews.llvm.org/D51036 Files: lib/Format/Format.cpp lib/Format/FormatToken.h lib/Format/NamespaceEndCommentsFixer.cpp lib/For

[PATCH] D51036: clang-format: Fix formatting C++ namespaces with preceding 'inline' or 'export' specifier

2018-08-27 Thread Marco Elver via Phabricator via cfe-commits
melver added inline comments. Comment at: lib/Format/Format.cpp:1312 auto &Line = *AnnotatedLines[i]; if (Line.startsWith(tok::kw_namespace) || + Line.startsWith(tok::kw_inline, tok::kw_namespace) || owenpan wrote: > sammccall wrote: > > th

[PATCH] D51036: clang-format: Fix formatting C++ namespaces with preceding 'inline' or 'export' specifier

2018-09-04 Thread Marco Elver via Phabricator via cfe-commits
melver added a comment. Awaiting remaining reviewer acceptance. FYI: I do not have commit commit access -- what is the procedure to commit once diff is accepted? Many thanks! Repository: rC Clang https://reviews.llvm.org/D51036 ___ cfe-commits

[PATCH] D51036: clang-format: Fix formatting C++ namespaces with preceding 'inline' or 'export' specifier

2018-09-05 Thread Marco Elver via Phabricator via cfe-commits
melver added a comment. In https://reviews.llvm.org/D51036#1223254, @sammccall wrote: > In https://reviews.llvm.org/D51036#1223230, @melver wrote: > > > Awaiting remaining reviewer acceptance. > > > > FYI: I do not have commit commit access -- what is the procedure to commit > > once diff is acc

[PATCH] D56935: [NewPM] Add support for new-PM plugins to clang

2019-01-22 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 182974. melver marked 2 inline comments as done. melver added a comment. - Use SmallVector in CodeGenOptions.h CHANGES SINCE LAST ACTION https://reviews.llvm.org/D56935/new/ https://reviews.llvm.org/D56935 Files: clang/include/clang/Basic/CodeGenOptions

[PATCH] D56935: [NewPM] Add support for new-PM plugins to clang

2019-01-22 Thread Marco Elver via Phabricator via cfe-commits
melver added a comment. Thanks! In D56935#1366756 , @philip.pfaffe wrote: > This generally looks sane. What will happen on windows though? Will it > silently fail? AFAIK PassPlugin::Load uses sys::DynamicLibrary::getPermanentLibrary, which uses Dynam

[PATCH] D56935: [NewPM] Add support for new-PM plugins to clang

2019-01-22 Thread Marco Elver via Phabricator via cfe-commits
melver added a comment. >> This generally looks sane. What will happen on windows though? Will it >> silently fa > > AFAIK PassPlugin::Load uses sys::DynamicLibrary::getPermanentLibrary, which > uses DynamicLibrary::HandleSet::AddLibrary which works for Windows as well. > (The story is similar

[PATCH] D56935: [NewPM] Add support for new-PM plugins to clang

2019-01-23 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 183140. melver added a comment. - Revert use of SmallVector CHANGES SINCE LAST ACTION https://reviews.llvm.org/D56935/new/ https://reviews.llvm.org/D56935 Files: clang/include/clang/Basic/CodeGenOptions.h clang/include/clang/Driver/Options.td clang/

[PATCH] D56935: [NewPM] Add support for new-PM plugins to clang

2019-01-23 Thread Marco Elver via Phabricator via cfe-commits
melver added a comment. Thanks! In D56935#1367545 , @philip.pfaffe wrote: > I'm not sure what the current state of plugins on windows is. They were > broken and disabled last time I worked on this, but that might've changed in > the meantime! Worth che

[PATCH] D56935: [NewPM] Add support for new-PM plugins to clang

2019-01-26 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 183715. melver added a comment. - Improve error reporting. While testing on Windows, noticed that Clang wants the error to be checked otherwise crashed quite verbosely. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D56935/new/ https://reviews.llvm.or

[PATCH] D56935: [NewPM] Add support for new-PM plugins to clang

2019-01-26 Thread Marco Elver via Phabricator via cfe-commits
melver added a comment. In D56935#1370861 , @philip.pfaffe wrote: > It would be good to check, since the bots won't! Otherwise this looks good. Thanks! I attempted to test on Windows, but noticed that for a shared library CMake already reports "Loadab

[PATCH] D56935: [NewPM] Add support for new-PM plugins to clang

2019-01-30 Thread Marco Elver via Phabricator via cfe-commits
melver added a comment. Gentle ping. Need someone to land this on my behalf, as I do not have commit access. Many thanks! CHANGES SINCE LAST ACTION https://reviews.llvm.org/D56935/new/ https://reviews.llvm.org/D56935 ___ cfe-commits mailing list

[PATCH] D56935: [NewPM] Add support for new-PM plugins to clang

2019-02-04 Thread Marco Elver via Phabricator via cfe-commits
melver added a comment. In D56935#1382156 , @philip.pfaffe wrote: > Landed it for you in r352972. Thanks! Great, thanks! Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D56935/new/ https://reviews.llvm.org/D56935 _

[PATCH] D80428: [clang] Optimize getFileIDLocal

2020-05-22 Thread Marco Elver via Phabricator via cfe-commits
melver created this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. - Avoid bit operations to compute Offset by removing bitfields. On 64-bit architectures, SLocEntry's size is unchanged. - Provide branch-prediction hints to compiler to generate better code. Re

[PATCH] D80428: [clang] Optimize getFileIDLocal

2020-05-22 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 265717. melver added a comment. Extra unlikely hint. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D80428/new/ https://reviews.llvm.org/D80428 Files: clang/include/clang/Basic/SourceManager.h clang/lib/Basic

[PATCH] D80428: [clang] Optimize SourceManager::getFileIDLocal [WIP]

2020-05-22 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 265780. melver retitled this revision from "[clang] Optimize getFileIDLocal [WIP]" to "[clang] Optimize SourceManager::getFileIDLocal [WIP]". melver edited the summary of this revision. melver added a comment. Improve code-gen further -- another ~5%. Reposit

[PATCH] D79628: [Clang][Driver] Add Bounds and Thread to SupportsCoverage list

2020-05-25 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 266048. melver added a comment. Herald added a project: Sanitizers. Herald added a subscriber: Sanitizers. Address failing tests: - Set -triple for test. - Some existing tests now pass under TSAN, and can be enabled. Repository: rG LLVM Github Monorepo CH

[PATCH] D79628: [Clang][Driver] Add Bounds and Thread to SupportsCoverage list

2020-05-25 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 266054. melver added a comment. -triple -> -target Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D79628/new/ https://reviews.llvm.org/D79628 Files: clang/lib/Driver/SanitizerArgs.cpp clang/test/CodeGen/sanit

[PATCH] D79628: [Clang][Driver] Add Bounds and Thread to SupportsCoverage list

2020-05-25 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 266057. melver added a comment. Add missing -target to sanitize-coverage-bounds test. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D79628/new/ https://reviews.llvm.org/D79628 Files: clang/lib/Driver/Sanitizer

[PATCH] D80428: [clang] Optimize SourceManager::getFileIDLocal [WIP]

2020-05-26 Thread Marco Elver via Phabricator via cfe-commits
melver abandoned this revision. melver added a comment. More background: https://github.com/ClangBuiltLinux/linux/issues/1032 This approach likely doesn't yield too much benefit. Too much variability is observed when compiling Clang with either Clang or GCC. Since Nick has a better proposal at

[PATCH] D79628: [Clang][Driver] Add Bounds and Thread to SupportsCoverage list

2020-05-27 Thread Marco Elver via Phabricator via cfe-commits
melver added a comment. In D79628#2058404 , @vvereschaka wrote: > the Clang sanitize-coverage.c test gets crashed on Windows platform for armv7 > target: > > - FAIL: Clang::sanitize-coverage.c > > ``` > - command stderr: Pass 'Run-time bounds checking'

[PATCH] D80668: [Clang][Sanitizers] Expect test failure on {arm,thumb}v7

2020-05-27 Thread Marco Elver via Phabricator via cfe-commits
melver created this revision. melver added a reviewer: vitalybuka. Herald added subscribers: cfe-commits, danielkiss, kristof.beyls. Herald added a project: clang. melver added a comment. Example of failing test: http://lab.llvm.org:8011/builders/clang-cmake-armv7-full/builds/10689 So this defini

[PATCH] D80668: [Clang][Sanitizers] Expect test failure on {arm,thumb}v7

2020-05-27 Thread Marco Elver via Phabricator via cfe-commits
melver added a comment. Example of failing test: http://lab.llvm.org:8011/builders/clang-cmake-armv7-full/builds/10689 So this definitely can't be -target, because we set that. So it seems that some version of LLVM compiled for armv7 is somehow broken? Vitaly, I wasn't able to test this since I

[PATCH] D80668: [Clang][Sanitizers] Expect test failure on {arm,thumb}v7

2020-05-28 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 266773. melver added a comment. Add link to bug. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D80668/new/ https://reviews.llvm.org/D80668 Files: clang/test/CodeGen/sanitize-coverage.c Index: clang/test/Code

[PATCH] D80668: [Clang][Sanitizers] Expect test failure on {arm,thumb}v7

2020-05-28 Thread Marco Elver via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG69935d86aed1: [Clang][Sanitizers] Expect test failure on {arm,thumb}v7 (authored by melver). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D80668/new/ https:

[PATCH] D80197: [DebugInfo] Upgrade DISubrange to support Fortran dynamic arrays

2020-05-28 Thread Marco Elver via Phabricator via cfe-commits
melver added inline comments. Comment at: llvm/lib/Bitcode/Writer/BitcodeWriter.cpp:1522 static uint64_t rotateSign(int64_t I) { uint64_t U = I; rotateSign() is no longer used in this file. If there are no plans to use it again, please remove it. Thanks!

[PATCH] D79628: [Clang][Driver] Add Bounds and Thread to SupportsCoverage list

2020-05-28 Thread Marco Elver via Phabricator via cfe-commits
melver added a comment. In D79628#2060254 , @alanphipps wrote: > clang/test/CodeGen/sanitize-coverage.c is also failing our downstream > embedded ARMv7 validations. https://reviews.llvm.org/D80668 has been submitted. It would be good if someone with ac

[PATCH] D80805: [KernelAddressSanitizer] Make globals constructors compatible with kernel

2020-06-05 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 268796. melver added a comment. Herald added a project: clang. Herald added a subscriber: cfe-commits. Update IR test. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D80805/new/ https://reviews.llvm.org/D80805 Fi

[PATCH] D80805: [KernelAddressSanitizer] Make globals constructors compatible with kernel

2020-06-05 Thread Marco Elver via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG866ee2353f7d: [KernelAddressSanitizer] Make globals constructors compatible with kernel (authored by melver). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D8

[PATCH] D81306: [ASan][Test] Fix globals test for Mach-O

2020-06-05 Thread Marco Elver via Phabricator via cfe-commits
melver created this revision. melver added reviewers: nickdesaulniers, thakis. Herald added a project: clang. Herald added a subscriber: cfe-commits. Use a portable section name, as for the test's purpose any name will do. Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D81306 F

[PATCH] D80805: [KernelAddressSanitizer] Make globals constructors compatible with kernel

2020-06-05 Thread Marco Elver via Phabricator via cfe-commits
melver added a comment. In D80805#2077396 , @thakis wrote: > Hi, this broke check-clang on mac: http://45.33.8.238/mac/14998/step_7.txt > > Please take a look, and if it takes a while to fix please revert while you > investigate. Sent https://reviews.ll

[PATCH] D81306: [ASan][Test] Fix globals test for Mach-O

2020-06-05 Thread Marco Elver via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG2dd83a923046: [ASan][Test] Fix globals test for Mach-O (authored by melver). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D81306/new/ https://reviews.llvm.o

[PATCH] D81346: [KernelAddressSanitizer] Ensure global array size remains multiple of type-size

2020-06-07 Thread Marco Elver via Phabricator via cfe-commits
melver created this revision. melver added reviewers: nathanchance, glider, andreyknvl. Herald added subscribers: llvm-commits, cfe-commits, hiraditya. Herald added a reviewer: aaron.ballman. Herald added projects: clang, LLVM. The kernel expects certain global arrays' size to remain a multiple of

[PATCH] D81346: [KernelAddressSanitizer] Ensure global array size remains multiple of type-size

2020-06-07 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 269078. melver added a comment. Add 0-size array to test to check redzone calculation does not divide by 0. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D81346/new/ https://reviews.llvm.org/D81346 Files: clan

[PATCH] D81346: [KernelAddressSanitizer] Ensure global array size remains multiple of type-size

2020-06-08 Thread Marco Elver via Phabricator via cfe-commits
melver abandoned this revision. melver added a comment. With an allmodconfig, mostpost still isn't happy because it expects the device_id info to be a certain size. Revert everything while we figure out how to make modpost happy. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D81390: [KernelAddressSanitizer] Make globals constructors compatible with kernel

2020-06-08 Thread Marco Elver via Phabricator via cfe-commits
melver created this revision. melver added a reviewer: glider. Herald added subscribers: llvm-commits, cfe-commits, hiraditya, aprantl. Herald added a reviewer: aaron.ballman. Herald added projects: clang, LLVM. [ The first version of this feature was reverted due to modpost causing failures. T

[PATCH] D81390: [KernelAddressSanitizer] Make globals constructors compatible with kernel

2020-06-08 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 269229. melver added a comment. Also ignore non-alias globals prefixed by __. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D81390/new/ https://reviews.llvm.org/D81390 Files: clang/test/CodeGen/asan-globals.cp

[PATCH] D81390: [KernelAddressSanitizer] Make globals constructors compatible with kernel [v2]

2020-06-09 Thread Marco Elver via Phabricator via cfe-commits
melver added a comment. In D81390#2081067 , @nathanchance wrote: > I do not know enough about KASAN enough to review this patch but I can say > that against mainline at > https://git.kernel.org/linus/af7b4801030c07637840191c69eb666917e4135d, there > ap

[PATCH] D81390: [KernelAddressSanitizer] Make globals constructors compatible with kernel [v2]

2020-06-09 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 269578. melver marked 6 inline comments as done. melver added a comment. Address comments. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D81390/new/ https://reviews.llvm.org/D81390 Files: clang/test/CodeGen/as

[PATCH] D81390: [KernelAddressSanitizer] Make globals constructors compatible with kernel [v2]

2020-06-09 Thread Marco Elver via Phabricator via cfe-commits
melver added a comment. Thanks! PTAL. Comment at: llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp:759 // do globals-gc. -UseCtorComdat(UseGlobalsGC && ClWithComdat) { -this->Recover = ClRecover.getNumOccurrences() > 0 ? ClRecover : Recover; -th

[PATCH] D81390: [KernelAddressSanitizer] Make globals constructors compatible with kernel [v2]

2020-06-09 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 269582. melver added a comment. Fix test broken by linter. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D81390/new/ https://reviews.llvm.org/D81390 Files: clang/test/CodeGen/asan-globals.cpp llvm/include/ll

[PATCH] D81390: [KernelAddressSanitizer] Make globals constructors compatible with kernel [v2]

2020-06-10 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 269751. melver added a comment. Fix typos. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D81390/new/ https://reviews.llvm.org/D81390 Files: clang/test/CodeGen/asan-globals.cpp llvm/include/llvm/Transforms/Ut

[PATCH] D81390: [KernelAddressSanitizer] Make globals constructors compatible with kernel [v2]

2020-06-10 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 269780. melver added a comment. Fix test on windows. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D81390/new/ https://reviews.llvm.org/D81390 Files: clang/test/CodeGen/asan-globals.cpp llvm/include/llvm/Tra

[PATCH] D81390: [KernelAddressSanitizer] Make globals constructors compatible with kernel [v2]

2020-06-10 Thread Marco Elver via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGd3f89314ff20: [KernelAddressSanitizer] Make globals constructors compatible with kernel [v2] (authored by melver). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.o

[PATCH] D81591: [ASan][Test] Split out global alias test

2020-06-10 Thread Marco Elver via Phabricator via cfe-commits
melver created this revision. melver added a reviewer: thakis. Herald added subscribers: cfe-commits, aaron.ballman. Herald added a project: clang. Some platforms do not support aliases. Split the test, and pass explicit triple to avoid test failure. Repository: rG LLVM Github Monorepo https:

[PATCH] D81591: [ASan][Test] Split out global alias test

2020-06-10 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 269898. melver added a comment. Comment. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D81591/new/ https://reviews.llvm.org/D81591 Files: clang/test/CodeGen/asan-globals-alias.c clang/test/CodeGen/asan-globa

[PATCH] D81591: [ASan][Test] Split out global alias test

2020-06-10 Thread Marco Elver via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG0f04f104537b: [ASan][Test] Split out global alias test (authored by melver). Changed prior to commit: https://reviews.llvm.org/D81591?vs=269898&id=269911#toc Repository: rG LLVM Github Monorepo CHAN

[PATCH] D73543: [clang] Add support for __builtin_memcpy_inline

2020-06-17 Thread Marco Elver via Phabricator via cfe-commits
melver added inline comments. Comment at: clang/test/Sema/builtins-memcpy-inline.c:7 +#warning defined as expected +// expected-warning@-1 {{defined as expected}} +#endif It appears that the expected-warning check here is guarded by the #if as well. Moving it af

[PATCH] D81346: [KernelAddressSanitizer] Ensure global array size remains multiple of type-size

2020-07-31 Thread Marco Elver via Phabricator via cfe-commits
melver added a comment. Note: We landed globals support for KASAN with https://reviews.llvm.org/rGd3f89314ff20ce1612bd5e09f9f90ff5dd5205a7 Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D81346/new/ https://reviews.llvm.org/D81346 __

[PATCH] D79628: [Clang][Driver] Add Bounds and Thread to SupportsCoverage list

2020-05-08 Thread Marco Elver via Phabricator via cfe-commits
melver created this revision. melver added a reviewer: vitalybuka. Herald added a project: clang. Herald added a subscriber: cfe-commits. This permits combining -fsanitize-coverage with -fsanitize=bounds or -fsanitize=thread. Note that, GCC already supports combining these. Bugzilla: https://bugs

[PATCH] D79628: [Clang][Driver] Add Bounds and Thread to SupportsCoverage list

2020-05-14 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 264109. melver added a comment. Add tests checking that when passing the combination of the sanitizer flags to Clang, we generate instrumentation for all enabled sanitizers. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.l

[PATCH] D79628: [Clang][Driver] Add Bounds and Thread to SupportsCoverage list

2020-05-14 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 264112. melver added a comment. Fix formatting. PTAL. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D79628/new/ https://reviews.llvm.org/D79628 Files: clang/lib/Driver/SanitizerArgs.cpp clang/test/CodeGen/s

[PATCH] D78162: [CodeGen] Mark inline definitions of builtins as nobuiltin only if we plan to emit them.

2020-05-19 Thread Marco Elver via Phabricator via cfe-commits
melver added a comment. This seems to be causing problems for the Linux kernel with ASan instrumentation enabled: https://lkml.kernel.org/r/20200518180513.ga114...@google.com Still investigating if it's the kernel, KASAN, or Clang that's doing something wrong. Any pointers welcome. Many thank

[PATCH] D130888: [Clang] Introduce -fexperimental-sanitize-metadata=

2022-08-30 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 456608. melver added a comment. Rebase. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D130888/new/ https://reviews.llvm.org/D130888 Files: clang/include/clang/Basic/CodeGenOptions.def clang/include/clang/Bas

[PATCH] D130888: [Clang] Introduce -fexperimental-sanitize-metadata=

2022-09-02 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 457543. melver added a comment. Add CodeGen test. PTAL. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D130888/new/ https://reviews.llvm.org/D130888 Files: clang/include/clang/Basic/CodeGenOptions.def clang/

[PATCH] D130888: [Clang] Introduce -fexperimental-sanitize-metadata=

2022-09-02 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 457637. melver added a comment. Don't split RUN lines. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D130888/new/ https://reviews.llvm.org/D130888 Files: clang/include/clang/Basic/CodeGenOptions.def clang/in

[PATCH] D130888: [Clang] Introduce -fexperimental-sanitize-metadata=

2022-09-03 Thread Marco Elver via Phabricator via cfe-commits
melver added inline comments. Comment at: clang/test/Driver/fsanitize-metadata.c:1 +// RUN: %clang --target=x86_64-linux-gnu -fexperimental-sanitize-metadata=all -fno-experimental-sanitize-metadata=all %s -### 2>&1 | FileCheck %s +// CHECK-NOT: -fexperimental-sanitize-metadata -

[PATCH] D130888: [Clang] Introduce -fexperimental-sanitize-metadata=

2022-09-03 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 457779. melver marked 3 inline comments as done. melver added a comment. - Options.td: s/f_clang_Group/f_Group/, remove NoXarchOption - Driver test: also test -fexperimental-sanitize-metadata=all -fno-experimental-metadata= Repository: rG LLVM Github Monor

[PATCH] D130888: [Clang] Introduce -fexperimental-sanitize-metadata=

2022-09-07 Thread Marco Elver via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGc4842bb2e98e: [Clang] Introduce -fexperimental-sanitize-metadata= (authored by melver). Changed prior to commit: https://reviews.llvm.org/D130888?

[PATCH] D130888: [Clang] Introduce -fexperimental-sanitize-metadata=

2022-08-01 Thread Marco Elver via Phabricator via cfe-commits
melver created this revision. Herald added a subscriber: ormris. Herald added a project: All. melver requested review of this revision. Herald added subscribers: cfe-commits, MaskRay. Herald added a project: clang. Introduces the frontend flag -fexperimental-sanitize-metadata=, which enables Sanit

[PATCH] D130888: [Clang] Introduce -fexperimental-sanitize-metadata=

2022-08-03 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 449671. melver marked 4 inline comments as done. melver added a comment. Address comments. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D130888/new/ https://reviews.llvm.org/D130888 Files: clang/include/clang

[PATCH] D130888: [Clang] Introduce -fexperimental-sanitize-metadata=

2022-08-03 Thread Marco Elver via Phabricator via cfe-commits
melver added inline comments. Comment at: clang/lib/Driver/SanitizerArgs.cpp:839 + // Parse -f(no-)?sanitize-metadata. + for (const auto *Arg : Args) { +if (Arg->getOption().matches( MaskRay wrote: > Use `Args.getLastArg(...)` This won't work if someone doe

[PATCH] D130888: [Clang] Introduce -fexperimental-sanitize-metadata=

2022-08-04 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 450043. melver added a comment. Rebase. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D130888/new/ https://reviews.llvm.org/D130888 Files: clang/include/clang/Basic/CodeGenOptions.def clang/include/clang/Bas

[PATCH] D114421: [asan] Add support for disable_sanitizer_instrumentation attribute

2022-02-14 Thread Marco Elver via Phabricator via cfe-commits
melver added a comment. I think we dropped the ball on this - was it ever re-reverted? Is it still worth trying to land this? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D114421/new/ https://reviews.llvm.org/D114421 __

[PATCH] D92846: [KernelAddressSanitizer] Fix globals exclusion for indirect aliases

2020-12-09 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 310488. melver added a comment. Herald added a project: clang. Herald added a subscriber: cfe-commits. Add test Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D92846/new/ https://reviews.llvm.org/D92846 Files:

[PATCH] D92846: [KernelAddressSanitizer] Fix globals exclusion for indirect aliases

2020-12-09 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 310492. melver added a comment. Simplify using stripPointerCastsAndAliases() Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D92846/new/ https://reviews.llvm.org/D92846 Files: clang/test/CodeGen/asan-globals-ali

[PATCH] D92846: [KernelAddressSanitizer] Fix globals exclusion for indirect aliases

2020-12-09 Thread Marco Elver via Phabricator via cfe-commits
melver added a comment. In D92846#2440118 , @dvyukov wrote: > Have you checked if there is already a function that does this? Frequently > there is :) > Some functions that look similar based on names: > stripPointerCasts > stripPointerCastsAndOffsets > s

[PATCH] D92846: [KernelAddressSanitizer] Fix globals exclusion for indirect aliases

2020-12-09 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 310494. melver added a comment. Style Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D92846/new/ https://reviews.llvm.org/D92846 Files: clang/test/CodeGen/asan-globals-alias.cpp llvm/lib/Transforms/Instrument

[PATCH] D92846: [KernelAddressSanitizer] Fix globals exclusion for indirect aliases

2020-12-09 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 310495. melver added a comment. Revert unnecessary reformat Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D92846/new/ https://reviews.llvm.org/D92846 Files: clang/test/CodeGen/asan-globals-alias.cpp llvm/lib

[PATCH] D92846: [KernelAddressSanitizer] Fix globals exclusion for indirect aliases

2020-12-09 Thread Marco Elver via Phabricator via cfe-commits
melver added a comment. In D92846#2442447 , @dvyukov wrote: > The code looks reasonable to me. I see it only affects kernel, so assuming > you booted kernel, we should be fine. > I can rubber-stamp it, but if you want more meaningful review, please wait

[PATCH] D92846: [KernelAddressSanitizer] Fix globals exclusion for indirect aliases

2020-12-10 Thread Marco Elver via Phabricator via cfe-commits
melver added inline comments. Comment at: clang/test/CodeGen/asan-globals-alias.cpp:30 +// KASAN: @aliased_global_2{{.*}} global i32 +// KASAN: @joydev_ids{{.*}} global [1 x {{.*}}i64 1234 }], align 16 nickdesaulniers wrote: > Do we want to add checks for the a

[PATCH] D92846: [KernelAddressSanitizer] Fix globals exclusion for indirect aliases

2020-12-11 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 311157. melver added a comment. Check aliases exist in test Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D92846/new/ https://reviews.llvm.org/D92846 Files: clang/test/CodeGen/asan-globals-alias.cpp llvm/lib

[PATCH] D92846: [KernelAddressSanitizer] Fix globals exclusion for indirect aliases

2020-12-11 Thread Marco Elver via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGc28b18af1962: [KernelAddressSanitizer] Fix globals exclusion for indirect aliases (authored by melver). Repository: rG LLVM Github Monorepo CHANG

[PATCH] D102772: [SanitizeCoverage] Add support for NoSanitizeCoverage function attribute

2021-05-19 Thread Marco Elver via Phabricator via cfe-commits
melver created this revision. melver added reviewers: vitalybuka, morehouse, glider, dvyukov. Herald added subscribers: dexonsmith, jdoerfert, pengfei, hiraditya. Herald added a reviewer: aaron.ballman. melver requested review of this revision. Herald added projects: clang, LLVM. Herald added subsc

[PATCH] D102772: [SanitizeCoverage] Add support for NoSanitizeCoverage function attribute

2021-05-19 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 346452. melver marked 2 inline comments as done. melver added a comment. Address Aaron's comments Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D102772/new/ https://reviews.llvm.org/D102772 Files: clang/docs/S

[PATCH] D102772: [SanitizeCoverage] Add support for NoSanitizeCoverage function attribute

2021-05-19 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 346484. melver added a comment. Test that always_inline works as expected with no_sanitize("coverage") Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D102772/new/ https://reviews.llvm.org/D102772 Files: clang/d

[PATCH] D102772: [SanitizeCoverage] Add support for NoSanitizeCoverage function attribute

2021-05-19 Thread Marco Elver via Phabricator via cfe-commits
melver added inline comments. Comment at: clang/lib/Sema/SemaDeclAttr.cpp:7276-7278 if (parseSanitizerValue(SanitizerName, /*AllowGroups=*/true) == -SanitizerMask()) +SanitizerMask() && +SanitizerName != "coverage") aaron.ballman

[PATCH] D102772: [SanitizeCoverage] Add support for NoSanitizeCoverage function attribute

2021-05-19 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 346577. melver added a comment. Herald added a subscriber: steven_wu. Rest of long-tail of IR changes related to introducing a new attributes... Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D102772/new/ https://

[PATCH] D102772: [SanitizeCoverage] Add support for NoSanitizeCoverage function attribute

2021-05-21 Thread Marco Elver via Phabricator via cfe-commits
melver added inline comments. Comment at: clang/test/CodeGen/sanitize-coverage.c:23-87 +static inline __attribute__((__always_inline__)) void always_inlined_fn(int n) { + if (n) +x[n] = 42; +} +// CHECK-LABEL: define dso_local void @test_always_inline( +void test_always_inl

[PATCH] D102927: [NFC][CodeGenOptions] Refactor checking SanitizeCoverage options

2021-05-21 Thread Marco Elver via Phabricator via cfe-commits
melver created this revision. melver added a reviewer: vitalybuka. Herald added a subscriber: dexonsmith. melver requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Refactor checking SanitizeCoverage options into CodeGenOptions::hasSanitizeCove

[PATCH] D102929: [NFC][SanitizeCoverage] Test always_inline functions work

2021-05-21 Thread Marco Elver via Phabricator via cfe-commits
melver created this revision. melver added a reviewer: vitalybuka. melver requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Test that always_inline functions are instrumented as expected. Repository: rG LLVM Github Monorepo https://revie

[PATCH] D102772: [SanitizeCoverage] Add support for NoSanitizeCoverage function attribute

2021-05-21 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 347062. melver marked 3 inline comments as done. melver added a comment. - Refactor test and SanitizeCoverage* checking. - s/no_sanitize_coverage/nosanitize_coverage/ Thanks! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.

[PATCH] D102772: [SanitizeCoverage] Add support for NoSanitizeCoverage function attribute

2021-05-21 Thread Marco Elver via Phabricator via cfe-commits
melver added inline comments. Comment at: clang/lib/CodeGen/CodeGenFunction.cpp:757-760 +bool HaveSanitizeCoverage = +CGM.getCodeGenOpts().SanitizeCoverageType || +CGM.getCodeGenOpts().SanitizeCoverageIndirectCalls || +CGM.getCodeGenOpts().SanitizeCove

[PATCH] D102772: [SanitizeCoverage] Add support for NoSanitizeCoverage function attribute

2021-05-21 Thread Marco Elver via Phabricator via cfe-commits
melver added a comment. Please have a look at the other 2 patches which are now a dependency for this. Once you're happy with all 3 I'll push them all together. Thanks! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D102772/new/ https://reviews.llvm

[PATCH] D102927: [NFC][CodeGenOptions] Refactor checking SanitizeCoverage options

2021-05-25 Thread Marco Elver via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGca6df734069a: [NFC][CodeGenOptions] Refactor checking SanitizeCoverage options (authored by melver). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D102927/new

[PATCH] D102929: [NFC][SanitizeCoverage] Test always_inline functions work

2021-05-25 Thread Marco Elver via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG85feebf5a340: [NFC][SanitizeCoverage] Test always_inline functions work (authored by melver). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D102929/new/ http

[PATCH] D102772: [SanitizeCoverage] Add support for NoSanitizeCoverage function attribute

2021-05-25 Thread Marco Elver via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG280333021e95: [SanitizeCoverage] Add support for NoSanitizeCoverage function attribute (authored by melver). Repository: rG LLVM Github Monorepo

[PATCH] D103159: [Clang] Enable __has_feature(coverage_sanitizer)

2021-05-26 Thread Marco Elver via Phabricator via cfe-commits
melver created this revision. melver added reviewers: aaron.ballman, vitalybuka, morehouse, nickdesaulniers. Herald added a subscriber: dexonsmith. melver requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Like other sanitizers, enable __has_f

[PATCH] D103159: [Clang] Enable __has_feature(coverage_sanitizer)

2021-05-26 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 347936. melver added a comment. Documentation wording. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D103159/new/ https://reviews.llvm.org/D103159 Files: clang/docs/SanitizerCoverage.rst clang/include/clang/

[PATCH] D103159: [Clang] Enable __has_feature(coverage_sanitizer)

2021-05-26 Thread Marco Elver via Phabricator via cfe-commits
melver added inline comments. Comment at: clang/include/clang/Basic/Features.def:52 LangOpts.Sanitize.hasOneOf(SanitizerKind::Undefined)) +FEATURE(coverage_sanitizer, LangOpts.SanitizeCoverage) FEATURE(assume_nonnull, true) aaron.ballman wrote: > I thin

[PATCH] D103159: [Clang] Enable __has_feature(coverage_sanitizer)

2021-05-26 Thread Marco Elver via Phabricator via cfe-commits
melver updated this revision to Diff 348021. melver marked an inline comment as done. melver added a comment. s/Since/Because/ Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D103159/new/ https://reviews.llvm.org/D103159 Files: clang/docs/Sanitizer

[PATCH] D103159: [Clang] Enable __has_feature(coverage_sanitizer)

2021-05-26 Thread Marco Elver via Phabricator via cfe-commits
melver added inline comments. Comment at: clang/include/clang/Basic/Features.def:52 LangOpts.Sanitize.hasOneOf(SanitizerKind::Undefined)) +FEATURE(coverage_sanitizer, LangOpts.SanitizeCoverage) FEATURE(assume_nonnull, true) ojeda wrote: > melver wrote:

[PATCH] D103159: [Clang] Enable __has_feature(coverage_sanitizer)

2021-05-27 Thread Marco Elver via Phabricator via cfe-commits
melver marked 3 inline comments as done. melver added a comment. Ping. To reviewers: Do note the `feature` vs. `extension` discussion. Summary: We think to be consistent with other sanitizers and avoid confusion, we must make this a `feature`, too. Thanks. Repository: rG LLVM Github Monorep

[PATCH] D103159: [Clang] Enable __has_feature(coverage_sanitizer)

2021-05-27 Thread Marco Elver via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG4fbc66cd6d90: [Clang] Enable __has_feature(coverage_sanitizer) (authored by melver). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTIO

[PATCH] D103159: [Clang] Enable __has_feature(coverage_sanitizer)

2021-05-27 Thread Marco Elver via Phabricator via cfe-commits
melver added a comment. In D103159#2784926 , @aaron.ballman wrote: > In D103159#2784845 , @melver wrote: > >> Ping. > > FWIW, the usual practice is to ping after no activity on the review for about > a week. > >

[PATCH] D103958: [WIP] Support MustControl conditional control attribute

2021-06-09 Thread Marco Elver via Phabricator via cfe-commits
melver created this revision. Herald added subscribers: dexonsmith, jfb, hiraditya. Herald added a reviewer: aaron.ballman. melver requested review of this revision. Herald added subscribers: llvm-commits, cfe-commits, jdoerfert. Herald added projects: clang, LLVM. [ WIP, only high-level comments

[PATCH] D103958: [WIP] Support MustControl conditional control attribute

2021-06-09 Thread Marco Elver via Phabricator via cfe-commits
melver added a comment. In D103958#2807811 , @lebedev.ri wrote: > This is missing langref changes, and a RFC to llvm-dev. We're not there yet, but will send something. Having real code helped me understand what out the myriad of options that were discu

[PATCH] D103958: [WIP] Support MustControl conditional control attribute

2021-06-09 Thread Marco Elver via Phabricator via cfe-commits
melver added a comment. In D103958#2808861 , @efriedma wrote: > I don't like using metadata like this. Dropping metadata should generally > preserve the semantics of the code. Anything better for this without introducing new instructions? Would an arg

  1   2   >