[all-commits] [llvm/llvm-project] c6b5a2: [dfsan] Replace dfs$ prefix with .dfsan suffix

George Balatsouras via All-commits all-commits at lists.llvm.org
Thu Jun 17 22:45:24 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: c6b5a25eeb336bb1e6abcba8131b946552432ac0
      https://github.com/llvm/llvm-project/commit/c6b5a25eeb336bb1e6abcba8131b946552432ac0
  Author: George Balatsouras <gbalats at google.com>
  Date:   2021-06-17 (Thu, 17 Jun 2021)

  Changed paths:
    M clang/docs/DataFlowSanitizerDesign.rst
    M compiler-rt/test/dfsan/origin_memcpy.c
    M compiler-rt/test/dfsan/origin_memmove.c
    M compiler-rt/test/dfsan/origin_stack_trace.c
    M compiler-rt/test/dfsan/origin_track_ld.c
    M compiler-rt/test/dfsan/origin_unaligned_memtrans.c
    M compiler-rt/test/dfsan/origin_with_sigactions.c
    M compiler-rt/test/dfsan/origin_with_signals.cpp
    M compiler-rt/test/dfsan/pthread.c
    M compiler-rt/test/dfsan/stack_trace.c
    M llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
    M llvm/test/Instrumentation/DataFlowSanitizer/abilist.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/abilist_aggregate.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/args-unreachable-bb.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/arith.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/array.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/atomics.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/basic.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/call.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/custom_fun_callback_attributes.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/custom_fun_varargs_attributes.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/debug-nonzero-labels.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/dont_combine_offset_labels_on_gep.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/external_mask.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/load.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/memset.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/musttailcall.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/origin_abilist.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/origin_cached_shadows.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/origin_call.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/origin_load.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/origin_mem_intrinsic.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/origin_other_ops.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/origin_phi.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/origin_select.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/origin_store.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/origin_store_threshold.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/origin_track_load.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/prefix-rename.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/select.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/shadow-args-zext.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/store.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/struct.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/union.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/unordered_atomic_mem_intrins.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/vector.ll

  Log Message:
  -----------
  [dfsan] Replace dfs$ prefix with .dfsan suffix

The current naming scheme adds the `dfs$` prefix to all
DFSan-instrumented functions.  This breaks mangling and prevents stack
trace printers and other tools from automatically demangling function
names.

This new naming scheme is mangling-compatible, with the `.dfsan`
suffix being a vendor-specific suffix:
https://itanium-cxx-abi.github.io/cxx-abi/abi.html#mangling-structure

With this fix, demangling utils would work out-of-the-box.

Reviewed By: stephan.yichao.zhao

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




More information about the All-commits mailing list