[all-commits] [llvm/llvm-project] 888529: [scudo] Add SCUDO_ENABLE_HOOKS to enable hooks at ...

ChiaHungDuan via All-commits all-commits at lists.llvm.org
Mon Aug 28 15:16:47 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 88852964ecae94be71e98e9881ed8ed182df8c0c
      https://github.com/llvm/llvm-project/commit/88852964ecae94be71e98e9881ed8ed182df8c0c
  Author: Chia-hung Duan <chiahungduan at google.com>
  Date:   2023-08-28 (Mon, 28 Aug 2023)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/CMakeLists.txt
    M compiler-rt/lib/scudo/standalone/platform.h
    M compiler-rt/lib/scudo/standalone/tests/CMakeLists.txt
    M compiler-rt/lib/scudo/standalone/tests/wrappers_c_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/wrappers_cpp_test.cpp
    M compiler-rt/lib/scudo/standalone/wrappers_c.cpp
    M compiler-rt/lib/scudo/standalone/wrappers_c.inc
    M compiler-rt/lib/scudo/standalone/wrappers_c_bionic.cpp
    M compiler-rt/lib/scudo/standalone/wrappers_cpp.cpp

  Log Message:
  -----------
  [scudo] Add SCUDO_ENABLE_HOOKS to enable hooks at compilation time

Accessing the PLT entries of hooks can lead a certain amount of
performance overhead. This is observed on certain tasks which will do a
bunch of malloc/free and their throughputs are impacted by the null
check of hooks.

Also add SCUDO_ENABLE_HOOKS_TESTS to select if we want to run the hook
tests. On some platforms they may have different ways to run the
wrappers tests (end-to-end tests) and test the hooks along with the
wrappers tests may not be feasible. Provide an option to turn it ON/OFF.

By default, we only verify the hook behavior in the scudo standalone
tests if SCUDO_ENABLE_HOOKS is defined or COMPILER_RT_DEBUG is true.

Reviewed By: cferris, fabio-d

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




More information about the All-commits mailing list