<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in asan-globals.cpp</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>70455193 - Add missing sanitizer metadata plumbing from CFE.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp#70455193</link>
        <description>Add missing sanitizer metadata plumbing from CFE.clang misses attaching sanitizer metadata for external globals.Reviewed By: eugenisDifferential Revision: https://reviews.llvm.org/D129492

            List of files:
            /llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp</description>
        <pubDate>Wed, 13 Jul 2022 15:39:31 +0000</pubDate>
        <dc:creator>Mitch Phillips &lt;31459023+hctim@users.noreply.github.com&gt;</dc:creator>
    </item>
<item>
        <title>a2095d1a - Allow mangled names in sanitizer clang IR gen tests.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp#a2095d1a</link>
        <description>Allow mangled names in sanitizer clang IR gen tests.Looks like with https://reviews.llvm.org/D127911, Windows emits moreglobals with mangled names into the IR. Relax the tests in order toallow these mangled names.

            List of files:
            /llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp</description>
        <pubDate>Tue, 28 Jun 2022 16:26:36 +0000</pubDate>
        <dc:creator>Mitch Phillips &lt;31459023+hctim@users.noreply.github.com&gt;</dc:creator>
    </item>
<item>
        <title>dacfa24f - Delete &apos;llvm.asan.globals&apos; for global metadata.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp#dacfa24f</link>
        <description>Delete &apos;llvm.asan.globals&apos; for global metadata.Now that we have the sanitizer metadata that is actually on the globalvariable, and now that we use debuginfo in order to do symbolization ofglobals, we can delete the &apos;llvm.asan.globals&apos; IR synthesis.This patch deletes the &apos;location&apos; part of the __asan_global that&apos;sembedded in the binary as well, because it&apos;s unnecessary. This savesabout ~1.7% of the optimised non-debug with-asserts clang binary.Reviewed By: vitalybukaDifferential Revision: https://reviews.llvm.org/D127911

            List of files:
            /llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp</description>
        <pubDate>Mon, 27 Jun 2022 21:40:03 +0000</pubDate>
        <dc:creator>Mitch Phillips &lt;31459023+hctim@users.noreply.github.com&gt;</dc:creator>
    </item>
<item>
        <title>77475ffd - Reland &quot;Add sanitizer metadata attributes to clang IR gen.&quot;</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp#77475ffd</link>
        <description>Reland &quot;Add sanitizer metadata attributes to clang IR gen.&quot;RE-LAND (reverts a revert):This reverts commit 8e1f47b596b28fbc88cf32e8f46eb2fecb145fb2.This patch adds generation of sanitizer metadata attributes (which wereadded in D126100) to the clang frontend.We still currently generate the llvm.asan.globals that&apos;s consumed bythe IR pass, but the plan is to eventually migrate off of that ontopurely debuginfo and these IR attributes.Reviewed By: vitalybuka, kstoimenovDifferential Revision: https://reviews.llvm.org/D126929

            List of files:
            /llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp</description>
        <pubDate>Mon, 13 Jun 2022 19:12:31 +0000</pubDate>
        <dc:creator>Mitch Phillips &lt;31459023+hctim@users.noreply.github.com&gt;</dc:creator>
    </item>
<item>
        <title>8e1f47b5 - Revert &quot;Add sanitizer metadata attributes to clang IR gen.&quot;</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp#8e1f47b5</link>
        <description>Revert &quot;Add sanitizer metadata attributes to clang IR gen.&quot;This reverts commit e7766972a6790e25dbb4ce3481f57e9792b49269.Broke the Windows buildbots.

            List of files:
            /llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp</description>
        <pubDate>Mon, 13 Jun 2022 19:10:40 +0000</pubDate>
        <dc:creator>Mitch Phillips &lt;31459023+hctim@users.noreply.github.com&gt;</dc:creator>
    </item>
<item>
        <title>e7766972 - Add sanitizer metadata attributes to clang IR gen.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp#e7766972</link>
        <description>Add sanitizer metadata attributes to clang IR gen.This patch adds generation of sanitizer metadata attributes (which wereadded in D126100) to the clang frontend.We still currently generate the `llvm.asan.globals` that&apos;s consumed bythe IR pass, but the plan is to eventually migrate off of that ontopurely debuginfo and these IR attributes.Reviewed By: vitalybuka, kstoimenovDifferential Revision: https://reviews.llvm.org/D126929

            List of files:
            /llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp</description>
        <pubDate>Mon, 13 Jun 2022 18:18:55 +0000</pubDate>
        <dc:creator>Mitch Phillips &lt;31459023+hctim@users.noreply.github.com&gt;</dc:creator>
    </item>
<item>
        <title>c85a2645 - [asan] Add support for disable_sanitizer_instrumentation attribute</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp#c85a2645</link>
        <description>[asan] Add support for disable_sanitizer_instrumentation attributeFor ASan this will effectively serve as a synonym for__attribute__((no_sanitize(&quot;address&quot;))).Adding the disable_sanitizer_instrumentation to functions will drop thesanitize_XXX attributes on the IR level.This is the third reland of https://reviews.llvm.org/D114421.Now that TSan test is fixed (https://reviews.llvm.org/D120050) thereshould be no deadlocks.Differential Revision: https://reviews.llvm.org/D120055

            List of files:
            /llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp</description>
        <pubDate>Thu, 17 Feb 2022 14:48:35 +0000</pubDate>
        <dc:creator>Alexander Potapenko &lt;glider@google.com&gt;</dc:creator>
    </item>
<item>
        <title>05ee1f4a - Revert &quot;[asan] Add support for disable_sanitizer_instrumentation attribute&quot;</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp#05ee1f4a</link>
        <description>Revert &quot;[asan] Add support for disable_sanitizer_instrumentation attribute&quot;This reverts commit dd145f953db3dafbc019f1d3783bb4f09a28af92.https://reviews.llvm.org/D119726, like https://reviews.llvm.org/D114421,still causes TSan to fail, see https://lab.llvm.org/buildbot/#/builders/70/builds/18020Differential Revision: https://reviews.llvm.org/D119838

            List of files:
            /llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp</description>
        <pubDate>Tue, 15 Feb 2022 13:57:28 +0000</pubDate>
        <dc:creator>Alexander Potapenko &lt;glider@google.com&gt;</dc:creator>
    </item>
<item>
        <title>dd145f95 - [asan] Add support for disable_sanitizer_instrumentation attribute</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp#dd145f95</link>
        <description>[asan] Add support for disable_sanitizer_instrumentation attributeFor ASan this will effectively serve as a synonym for__attribute__((no_sanitize(&quot;address&quot;)))This is a reland of https://reviews.llvm.org/D114421Reviewed By: melver, eugenisDifferential Revision: https://reviews.llvm.org/D119726

            List of files:
            /llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp</description>
        <pubDate>Tue, 23 Nov 2021 09:32:35 +0000</pubDate>
        <dc:creator>Alexander Potapenko &lt;glider@google.com&gt;</dc:creator>
    </item>
<item>
        <title>6398903a - Extend the `uwtable` attribute with unwind table kind</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp#6398903a</link>
        <description>Extend the `uwtable` attribute with unwind table kindWe have the `clang -cc1` command-line option `-funwind-tables=1|2` andthe codegen option `VALUE_CODEGENOPT(UnwindTables, 2, 0) ///&lt; Unwindtables (1) or asynchronous unwind tables (2)`. However, this isencoded in LLVM IR by the presence or the absence of the `uwtable`attribute, i.e.  we lose the information whether to generate want justsome unwind tables or asynchronous unwind tables.Asynchronous unwind tables take more space in the runtime image, I&apos;destimate something like 80-90% more, as the difference is addingroughly the same number of CFI directives as for prologues, only a bitsimpler (e.g. `.cfi_offset reg, off` vs. `.cfi_restore reg`). Or evenmore, if you consider tail duplication of epilogue blocks.Asynchronous unwind tables could also restrict code generation tohaving only a finite number of frame pointer adjustments (an exampleof *not* having a finite number of `SP` adjustments is on AArch64 whenuntagging the stack (MTE) in some cases the compiler can modify `SP`in a loop).Having the CFI precise up to an instruction generally also means onecannot bundle together CFI instructions once the prologue is done,they need to be interspersed with ordinary instructions, which meansextra `DW_CFA_advance_loc` commands, further increasing the unwindtables size.That is to say, async unwind tables impose a non-negligible overhead,yet for the most common use cases (like C++ exceptions), they are noteven needed.This patch extends the `uwtable` attribute with an optionalvalue:      -  `uwtable` (default to `async`)      -  `uwtable(sync)`, synchronous unwind tables      -  `uwtable(async)`, asynchronous (instruction precise) unwind tablesReviewed By: MaskRayDifferential Revision: https://reviews.llvm.org/D114543

            List of files:
            /llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp</description>
        <pubDate>Mon, 14 Feb 2022 13:41:34 +0000</pubDate>
        <dc:creator>Momchil Velikov &lt;momchil.velikov@arm.com&gt;</dc:creator>
    </item>
<item>
        <title>7c004c2b - Revert &quot;[asan] Add support for disable_sanitizer_instrumentation attribute&quot;</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp#7c004c2b</link>
        <description>Revert &quot;[asan] Add support for disable_sanitizer_instrumentation attribute&quot;This reverts commit 2b554920f11c8b763cd9ed9003f4e19b919b8e1f.This change causes tsan test timeout on x86_64-linux-autoconf.The timeout can be reproduced by:  git clone https://github.com/llvm/llvm-zorg.git  BUILDBOT_CLOBBER= BUILDBOT_REVISION=eef8f3f85679c5b1ae725bade1c23ab7bb6b924f llvm-zorg/zorg/buildbot/builders/sanitizers/buildbot_standard.sh

            List of files:
            /llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp</description>
        <pubDate>Fri, 10 Dec 2021 22:28:36 +0000</pubDate>
        <dc:creator>Andrew Browne &lt;browneee@google.com&gt;</dc:creator>
    </item>
<item>
        <title>2b554920 - [asan] Add support for disable_sanitizer_instrumentation attribute</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp#2b554920</link>
        <description>[asan] Add support for disable_sanitizer_instrumentation attributeFor ASan this will effectively serve as a synonym for__attribute__((no_sanitize(&quot;address&quot;)))Differential Revision: https://reviews.llvm.org/D114421

            List of files:
            /llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp</description>
        <pubDate>Tue, 23 Nov 2021 09:32:35 +0000</pubDate>
        <dc:creator>Alexander Potapenko &lt;glider@google.com&gt;</dc:creator>
    </item>
<item>
        <title>8924ba3b - [NFC][clang] Inclusive terms: replace uses of blacklist in clang/test/</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp#8924ba3b</link>
        <description>[NFC][clang] Inclusive terms: replace uses of blacklist in clang/test/Replace filenames, variable names, check prefixes uses of blacklist with ignore list.Reviewed By: jkorousDifferential Revision: https://reviews.llvm.org/D113211

            List of files:
            /llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp</description>
        <pubDate>Wed, 17 Nov 2021 12:40:55 +0000</pubDate>
        <dc:creator>Zarko Todorovski &lt;zarko@ca.ibm.com&gt;</dc:creator>
    </item>
<item>
        <title>7647a841 - Fix -fno-unwind-tables -fasynchronous-unwind-tables to emit unwind tables</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp#7647a841</link>
        <description>Fix -fno-unwind-tables -fasynchronous-unwind-tables to emit unwind tablesThis matches GCC.Change the CC1 option to encode the unwind table level (1: needed by exceptions,2: asynchronous) so that we can support two modes in the future.

            List of files:
            /llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp</description>
        <pubDate>Thu, 23 Sep 2021 23:15:40 +0000</pubDate>
        <dc:creator>Fangrui Song &lt;i@maskray.me&gt;</dc:creator>
    </item>
<item>
        <title>dbc641de - [sanitizer] Reduce redzone size for small size global objects</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp#dbc641de</link>
        <description>[sanitizer] Reduce redzone size for small size global objectsCurrently 1 byte global object has a ridiculous 63 bytes redzone.This patch reduces the redzone size to be less than 32 if the size of global object is less than or equal to half of 32 (the minimal size of redzone).A 12 bytes object has a 20 bytes redzone, a 20 bytes object has a 44 bytes redzone.Reviewed By: MaskRay, #sanitizers, vitalybukaDifferential Revision: https://reviews.llvm.org/D102469

            List of files:
            /llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp</description>
        <pubDate>Thu, 20 May 2021 02:18:49 +0000</pubDate>
        <dc:creator>Zhiwei Chen &lt;chenzhiwei03@kuaishou.com&gt;</dc:creator>
    </item>
<item>
        <title>775a9483 - [IR][sanitizer] Set nounwind on module ctor/dtor, additionally set uwtable if -fasynchronous-unwind-tables</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp#775a9483</link>
        <description>[IR][sanitizer] Set nounwind on module ctor/dtor, additionally set uwtable if -fasynchronous-unwind-tablesOn ELF targets, if a function has uwtable or personality, or does not havenounwind (`needsUnwindTableEntry`), it marks that `.eh_frame` is needed in the module.Then, a function gets `.eh_frame` if `needsUnwindTableEntry` or `-g[123]` is specified.(i.e. If -g[123], every function gets `.eh_frame`.This behavior is strange but that is the status quo on GCC and Clang.)Let&apos;s take asan as an example. Other sanitizers are similar.`asan.module_[cd]tor` has no attribute. `needsUnwindTableEntry` returns true,so every function gets `.eh_frame` if `-g[123]` is specified.This is the root cause that`-fno-exceptions -fno-asynchronous-unwind-tables -g` produces .debug_framewhile`-fno-exceptions -fno-asynchronous-unwind-tables -g -fsanitize=address` produces .eh_frame.This patch* sets the nounwind attribute on sanitizer module ctor/dtor.* let Clang emit a module flag metadata &quot;uwtable&quot; for -fasynchronous-unwind-tables. If &quot;uwtable&quot; is set, sanitizer module ctor/dtor additionally get the uwtable attribute.The &quot;uwtable&quot; mechanism is generic: synthesized functions not cloned/specializedfrom existing ones should consider `Function::createWithDefaultAttr` instead of`Function::create` if they want to get some default attributes whichhave more of module semantics.Other candidates: &quot;frame-pointer&quot; (https://github.com/ClangBuiltLinux/linux/issues/955https://github.com/ClangBuiltLinux/linux/issues/1238), dso_local, etc.Differential Revision: https://reviews.llvm.org/D100251

            List of files:
            /llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp</description>
        <pubDate>Wed, 21 Apr 2021 22:58:20 +0000</pubDate>
        <dc:creator>Fangrui Song &lt;i@maskray.me&gt;</dc:creator>
    </item>
<item>
        <title>52cae05e - [ASan][Test] Fix expected strings for globals test</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp#52cae05e</link>
        <description>[ASan][Test] Fix expected strings for globals testThe expected strings would previously not catch bugs when redzones wereadded when they were not actually expected. Fix by adding &quot;global &quot;before the type.

            List of files:
            /llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp</description>
        <pubDate>Wed, 10 Jun 2020 18:20:23 +0000</pubDate>
        <dc:creator>Marco Elver &lt;elver@google.com&gt;</dc:creator>
    </item>
<item>
        <title>0f04f104 - [ASan][Test] Split out global alias test</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp#0f04f104</link>
        <description>[ASan][Test] Split out global alias testSome platforms do not support aliases. Split the test, and pass explicittriple to avoid test failure.Reviewed By: thakisTags: #clangDifferential Revision: https://reviews.llvm.org/D81591

            List of files:
            /llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp</description>
        <pubDate>Wed, 10 Jun 2020 17:55:51 +0000</pubDate>
        <dc:creator>Marco Elver &lt;elver@google.com&gt;</dc:creator>
    </item>
<item>
        <title>d3f89314 - [KernelAddressSanitizer] Make globals constructors compatible with kernel [v2]</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp#d3f89314</link>
        <description>[KernelAddressSanitizer] Make globals constructors compatible with kernel [v2][ v1 was reverted by c6ec352a6bde1995794c523adc2ebab802ccdf0a due to  modpost failing; v2 fixes this. More info:  https://github.com/ClangBuiltLinux/linux/issues/1045#issuecomment-640381783 ]This makes -fsanitize=kernel-address emit the correct globalsconstructors for the kernel. We had to do the following:* Disable generation of constructors that rely on linker features such  as dead-global elimination.* Only instrument globals *not* in explicit sections. The kernel uses  sections for special globals, which we should not touch.* Do not instrument globals that are prefixed with &quot;__&quot; nor that are  aliased by a symbol that is prefixed with &quot;__&quot;. For example, modpost  relies on specially named aliases to find globals and checks their  contents. Unfortunately modpost relies on size stored as ELF debug info  and any padding of globals currently causes the debug info to cause size  reported to be *with* redzone which throws modpost off.Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=203493Tested:* With &apos;clang/test/CodeGen/asan-globals.cpp&apos;.* With test_kasan.ko, we can see:  	BUG: KASAN: global-out-of-bounds in kasan_global_oob+0xb3/0xba [test_kasan]* allyesconfig, allmodconfig (x86_64)Reviewed By: gliderTags: #clang, #llvmDifferential Revision: https://reviews.llvm.org/D81390

            List of files:
            /llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp</description>
        <pubDate>Wed, 10 Jun 2020 13:01:40 +0000</pubDate>
        <dc:creator>Marco Elver &lt;elver@google.com&gt;</dc:creator>
    </item>
<item>
        <title>c6ec352a - Revert &quot;[KernelAddressSanitizer] Make globals constructors compatible with kernel&quot;</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp#c6ec352a</link>
        <description>Revert &quot;[KernelAddressSanitizer] Make globals constructors compatible with kernel&quot;This reverts commit 866ee2353f7d0224644799d0d1faed53c7f3a06d.Building the kernel results in modpost failures due to modpost relyingon debug info and inspecting kernel modules&apos; globals:https://github.com/ClangBuiltLinux/linux/issues/1045#issuecomment-640381783

            List of files:
            /llvm-project-15.0.7/clang/test/CodeGen/asan-globals.cpp</description>
        <pubDate>Mon, 08 Jun 2020 08:30:50 +0000</pubDate>
        <dc:creator>Marco Elver &lt;elver@google.com&gt;</dc:creator>
    </item>
</channel>
</rss>
