[all-commits] [llvm/llvm-project] a7c57c: tsan: don't consider debug calls as calls

Dmitry Vyukov via All-commits all-commits at lists.llvm.org
Wed Nov 17 05:42:29 PST 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: a7c57c4ec8100523e200ed1f608e1efbfd43a2f6
      https://github.com/llvm/llvm-project/commit/a7c57c4ec8100523e200ed1f608e1efbfd43a2f6
  Author: Dmitry Vyukov <dvyukov at google.com>
  Date:   2021-11-17 (Wed, 17 Nov 2021)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/ThreadSanitizer.cpp
    A llvm/test/Instrumentation/ThreadSanitizer/debug_calls.ll

  Log Message:
  -----------
  tsan: don't consider debug calls as calls

Tsan pass does 2 optimizations based on presence of calls:
1. Don't emit function entry/exit callbacks if there are no calls
and no memory accesses.
2. Combine read/write of the same variable if there are no
intervening calls.
However, all debug info is represented as CallInst as well
and thus effectively disables these optimizations.
Don't consider debug info calls as calls.

Reviewed By: glider, melver

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




More information about the All-commits mailing list