[all-commits] [llvm/llvm-project] 093076: hwasan: Move fixed shadow behind opaque no-op cast...

pcc via All-commits all-commits at lists.llvm.org
Fri Oct 30 13:24:41 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 0930763b4baf926a39dd2d0571fd9e2102ec3831
      https://github.com/llvm/llvm-project/commit/0930763b4baf926a39dd2d0571fd9e2102ec3831
  Author: Peter Collingbourne <peter at pcc.me.uk>
  Date:   2020-10-30 (Fri, 30 Oct 2020)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    M llvm/test/Instrumentation/HWAddressSanitizer/basic.ll
    M llvm/test/Instrumentation/HWAddressSanitizer/kernel.ll

  Log Message:
  -----------
  hwasan: Move fixed shadow behind opaque no-op cast as well.

This is a workaround for poor heuristics in the backend where we can
end up materializing the constant multiple times. This is particularly
bad when using outlined checks because we materialize it for every call
(because the backend considers it trivial to materialize).

As a result the field containing the shadow base value will always
be set so simplify the code taking that into account.

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




More information about the All-commits mailing list