[all-commits] [llvm/llvm-project] 5e9557: [analyzer] Do not reason about locations passed as...

Pavel Skripkin via All-commits all-commits at lists.llvm.org
Thu Aug 15 02:42:49 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 5e95571a90b1ec193b735b7312c5c2559d7ee5ea
      https://github.com/llvm/llvm-project/commit/5e95571a90b1ec193b735b7312c5c2559d7ee5ea
  Author: Pavel Skripkin <paskripkin at gmail.com>
  Date:   2024-08-15 (Thu, 15 Aug 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    M clang/test/Analysis/asm.cpp

  Log Message:
  -----------
  [analyzer] Do not reason about locations passed as inline asm input (#103714)

If pointer is passed as input operand for inline assembly, it's possible
that asm block will change memory behind this pointer. So if pointer is
passed inside inline asm block, it's better to not guess and assume
memory has unknown state.

Without such change, we observed a lot of FP with hand-written `memcpy`
and friends.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list