[all-commits] [llvm/llvm-project] 10edb4: [Clang][CodeGen] Start migrating away from assumin...

Alex Voicu via All-commits all-commits at lists.llvm.org
Sun May 19 06:59:25 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 10edb4991c12738e60843d55cd9edbf6d702d9eb
      https://github.com/llvm/llvm-project/commit/10edb4991c12738e60843d55cd9edbf6d702d9eb
  Author: Alex Voicu <alexandru.voicu at amd.com>
  Date:   2024-05-19 (Sun, 19 May 2024)

  Changed paths:
    M clang/lib/CodeGen/CGException.cpp
    M clang/lib/CodeGen/CGExprCXX.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenTypeCache.h
    M clang/test/CodeGenCXX/dynamic-cast-address-space.cpp
    M clang/test/CodeGenCXX/eh.cpp
    M clang/test/CodeGenCXX/nrvo.cpp
    M clang/test/CodeGenCXX/template-param-objects-address-space.cpp
    M clang/test/CodeGenCXX/throw-expression-typeinfo-in-address-space.cpp
    M clang/test/CodeGenCXX/try-catch-with-address-space.cpp
    M clang/test/CodeGenCXX/typeid-cxx11-with-address-space.cpp
    M clang/test/CodeGenCXX/typeid-with-address-space.cpp
    M clang/test/CodeGenCXX/typeinfo-with-address-space.cpp
    M clang/test/CodeGenCXX/vtable-assume-load-address-space.cpp
    M clang/test/CodeGenCXX/vtable-pointer-initialization-address-space.cpp
    M clang/test/CodeGenCXX/vtt-address-space.cpp
    M clang/test/CodeGenCXX/wasm-eh.cpp
    M llvm/examples/ExceptionDemo/ExceptionDemo.cpp
    M llvm/include/llvm/IR/Intrinsics.td
    M llvm/test/CodeGen/WebAssembly/lower-em-exceptions.ll
    M llvm/test/Transforms/GVNHoist/infinite-loop-indirect.ll
    M llvm/test/Transforms/Inline/inline_invoke.ll
    M llvm/test/Transforms/LICM/scalar-promote-unwind.ll
    M llvm/test/Transforms/LowerTypeTests/cfi-unwind-direct-call.ll
    M llvm/test/Transforms/NewGVN/2011-09-07-TypeIdFor.ll
    M mlir/include/mlir/Dialect/LLVMIR/LLVMIntrinsicOps.td
    M mlir/test/Target/LLVMIR/Import/intrinsic.ll
    M mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir

  Log Message:
  -----------
  [Clang][CodeGen] Start migrating away from assuming the Default AS is 0 (#88182)

At the moment, Clang is rather liberal in assuming that 0 (and by extension unqualified) is always a safe default. This does not work for targets that actually use a different value for the default / generic AS (for example, the SPIRV that obtains from HIPSPV or SYCL). This patch is a first, fairly safe step towards trying to clear things up by querying a modules' default AS from the target, rather than assuming it's 0, alongside fixing a few places where things break / we encode the 0 == DefaultAS assumption. A bunch of existing tests are extended to check for non-zero default AS usage.



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