[all-commits] [llvm/llvm-project] 93f8e5: [FunctionAttrs] Improve handling of alias-preservi...

Krzysztof Drewniak via All-commits all-commits at lists.llvm.org
Tue Oct 24 09:17:08 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 93f8e52d1fab72aa8a3018d560465ce993f127d0
      https://github.com/llvm/llvm-project/commit/93f8e52d1fab72aa8a3018d560465ce993f127d0
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2023-10-24 (Tue, 24 Oct 2023)

  Changed paths:
    M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
    A llvm/test/Transforms/FunctionAttrs/make-buffer-rsrc.ll
    M llvm/test/Transforms/FunctionAttrs/nocapture.ll
    M llvm/test/Transforms/FunctionAttrs/writeonly.ll

  Log Message:
  -----------
  [FunctionAttrs] Improve handling of alias-preserving intrinsic calls (#68453)

Fixes #68270

The function attribute analysis handles many instructions, like
addrspacecast, which do not themselves read or write memory but which
transform pointers into other values in the same alias set.

There are intrinsic functions, such as ptrmask or the AMDGPU-specific
make.buffer.rsrc, which also preserve membership in alias sets without
capturing. This commit adds the addrspacecast-like behavior to these
calls.




More information about the All-commits mailing list