[all-commits] [llvm/llvm-project] e13cba: [clang][CodeGen][SPIR-V] Fix incorrect SYCL usage, ...

Alex Voicu via All-commits all-commits at lists.llvm.org
Thu Sep 26 06:06:37 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: e13cbaca6925629165e3cced90b33777f0fe09fe
      https://github.com/llvm/llvm-project/commit/e13cbaca6925629165e3cced90b33777f0fe09fe
  Author: Alex Voicu <alexandru.voicu at amd.com>
  Date:   2024-09-26 (Thu, 26 Sep 2024)

  Changed paths:
    M clang/lib/Basic/Targets/SPIR.h
    M clang/lib/CodeGen/Targets/SPIR.cpp
    M clang/test/CodeGenCXX/dynamic-cast-address-space.cpp
    M clang/test/CodeGenCXX/spirv-amdgcn-float16.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/CodeGenOpenCL/builtins-amdgcn-gfx11.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn.cl

  Log Message:
  -----------
  [clang][CodeGen][SPIR-V] Fix incorrect SYCL usage, implement missing interface (#109415)

This is primarily meant to address the issue identified in #109182,
around incorrect usage of `-fsycl-is-device`; we now have AMDGCN
flavoured SPIR-V which retains the desired behaviour around the default
AS and does not depend on the SYCL language being enabled to do so.
Overall, there are three changes:

1. We unconditionally use the `SPIRDefIsGen` AS map for AMDGCNSPIRV
target, as there is no case where the hack of setting default to private
would be desirable, and it can be used for languages other than OCL/HIP;
2. We implement `SPIRVTargetCodeGenInfo::getGlobalVarAddressSpace` for
SPIR-V in general, because otherwise using it from languages other than
HIP or OpenCL would yield 0, incorrectly;
3. We remove the incorrect usage of `-fsycl-is-device`.



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