[all-commits] [llvm/llvm-project] dbe8c2: Use-after-return sanitizer binary metadata

Dmitry Vyukov via All-commits all-commits at lists.llvm.org
Mon Dec 5 05:40:44 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: dbe8c2c316c40b25a0a37b91f1a1a02a55182378
      https://github.com/llvm/llvm-project/commit/dbe8c2c316c40b25a0a37b91f1a1a02a55182378
  Author: Dmitry Vyukov <dvyukov at google.com>
  Date:   2022-12-05 (Mon, 05 Dec 2022)

  Changed paths:
    M clang/include/clang/Basic/CodeGenOptions.def
    M clang/include/clang/Basic/CodeGenOptions.h
    M clang/include/clang/Driver/Options.td
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/Driver/SanitizerArgs.cpp
    M compiler-rt/test/CMakeLists.txt
    A compiler-rt/test/metadata/CMakeLists.txt
    A compiler-rt/test/metadata/common.h
    A compiler-rt/test/metadata/covered.cpp
    A compiler-rt/test/metadata/lit.cfg.py
    A compiler-rt/test/metadata/lit.site.cfg.py.in
    A compiler-rt/test/metadata/uar.cpp
    M llvm/include/llvm/CodeGen/CodeGenPassBuilder.h
    M llvm/include/llvm/CodeGen/MachinePassRegistry.def
    M llvm/include/llvm/CodeGen/Passes.h
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/Transforms/Instrumentation.h
    M llvm/include/llvm/Transforms/Instrumentation/SanitizerBinaryMetadata.h
    M llvm/lib/CodeGen/CMakeLists.txt
    M llvm/lib/CodeGen/CodeGen.cpp
    A llvm/lib/CodeGen/SanitizerBinaryMetadata.cpp
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/lib/Transforms/Instrumentation/SanitizerBinaryMetadata.cpp
    M llvm/test/CodeGen/AArch64/O0-pipeline.ll
    M llvm/test/CodeGen/AArch64/O3-pipeline.ll
    M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
    M llvm/test/CodeGen/ARM/O3-pipeline.ll
    M llvm/test/CodeGen/M68k/pipeline.ll
    M llvm/test/CodeGen/PowerPC/O3-pipeline.ll
    M llvm/test/CodeGen/RISCV/O0-pipeline.ll
    M llvm/test/CodeGen/RISCV/O3-pipeline.ll
    M llvm/test/CodeGen/X86/O0-pipeline.ll
    M llvm/test/CodeGen/X86/opt-pipeline.ll

  Log Message:
  -----------
  Use-after-return sanitizer binary metadata

Currently per-function metadata consists of:
(start-pc, size, features)

This adds a new UAR feature and if it's set an additional element:
(start-pc, size, features, stack-args-size)

Reviewed By: melver

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




More information about the All-commits mailing list