[llvm] [clang] [clang-tools-extra] [AMDGPU] Fix GCNRewritePartialRegUses pass: vector regclass is selected instead of scalar. (PR #69957)
perlfu wrote: > I can regenerate the tests but I'm not sure how to do it best here: submit > the updated tests, rebase this PR's branch on top of the commit and then > force push the branch? Or I can simply merge _main_ with the updated tests > commit into this PR's branch? I do not know what is expected/common practice, I suspect either approach is valid. I have certainly seen people merge _main_ before, but typically I opt for a rebase and force push. https://github.com/llvm/llvm-project/pull/69957 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang] [flang] [libclc] [llvm] [AMDGPU] Add a new target for gfx1153 (PR #113138)
https://github.com/perlfu created https://github.com/llvm/llvm-project/pull/113138 None >From c7345662a894805173c2704ee07c98cd1831cab0 Mon Sep 17 00:00:00 2001 From: Carl Ritson Date: Mon, 21 Oct 2024 17:20:39 +0900 Subject: [PATCH] [AMDGPU] Add a new target for gfx1153 --- clang/include/clang/Basic/Cuda.h | 1 + clang/lib/Basic/Cuda.cpp | 1 + clang/lib/Basic/Targets/NVPTX.cpp | 1 + clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp | 1 + clang/test/CodeGenOpenCL/amdgpu-features.cl | 2 ++ clang/test/CodeGenOpenCL/builtins-amdgcn-gfx11.cl | 1 + clang/test/Driver/amdgpu-macros.cl| 1 + clang/test/Driver/amdgpu-mcpu.cl | 2 ++ clang/test/Misc/target-invalid-cpu-note/amdgcn.c | 1 + clang/test/Misc/target-invalid-cpu-note/nvptx.c | 1 + flang/cmake/modules/AddFlangOffloadRuntime.cmake | 2 +- libclc/CMakeLists.txt | 2 +- llvm/docs/AMDGPUUsage.rst | 15 +-- llvm/include/llvm/BinaryFormat/ELF.h | 2 +- llvm/include/llvm/TargetParser/TargetParser.h | 1 + llvm/lib/Object/ELFObjectFile.cpp | 2 ++ llvm/lib/ObjectYAML/ELFYAML.cpp | 1 + llvm/lib/Target/AMDGPU/AMDGPU.td | 6 ++ llvm/lib/Target/AMDGPU/GCNProcessors.td | 6 +- .../AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp | 2 ++ llvm/lib/TargetParser/TargetParser.cpp| 4 .../CodeGen/AMDGPU/directive-amdgcn-target.ll | 2 ++ llvm/test/CodeGen/AMDGPU/elf-header-flags-mach.ll | 2 ++ llvm/test/CodeGen/AMDGPU/occupancy-levels.ll | 2 ++ llvm/test/MC/AMDGPU/gfx1150_asm_features.s| 1 + .../test/Object/AMDGPU/elf-header-flags-mach.yaml | 7 +++ .../tools/llvm-objdump/ELF/AMDGPU/subtarget.ll| 5 + .../llvm-readobj/ELF/AMDGPU/elf-headers.test | 9 + llvm/tools/llvm-readobj/ELFDumper.cpp | 1 + offload/DeviceRTL/CMakeLists.txt | 2 +- 30 files changed, 79 insertions(+), 7 deletions(-) diff --git a/clang/include/clang/Basic/Cuda.h b/clang/include/clang/Basic/Cuda.h index a18e62620dd5d0..7b4f435dc39f29 100644 --- a/clang/include/clang/Basic/Cuda.h +++ b/clang/include/clang/Basic/Cuda.h @@ -127,6 +127,7 @@ enum class OffloadArch { GFX1150, GFX1151, GFX1152, + GFX1153, GFX12_GENERIC, GFX1200, GFX1201, diff --git a/clang/lib/Basic/Cuda.cpp b/clang/lib/Basic/Cuda.cpp index 08989b6c2c03f9..d765baef913e2f 100644 --- a/clang/lib/Basic/Cuda.cpp +++ b/clang/lib/Basic/Cuda.cpp @@ -145,6 +145,7 @@ static const OffloadArchToStringMap arch_names[] = { GFX(1150), // gfx1150 GFX(1151), // gfx1151 GFX(1152), // gfx1152 +GFX(1153), // gfx1153 {OffloadArch::GFX12_GENERIC, "gfx12-generic", "compute_amdgcn"}, GFX(1200), // gfx1200 GFX(1201), // gfx1201 diff --git a/clang/lib/Basic/Targets/NVPTX.cpp b/clang/lib/Basic/Targets/NVPTX.cpp index 88a0dbde52d52b..e0bd0b096324d8 100644 --- a/clang/lib/Basic/Targets/NVPTX.cpp +++ b/clang/lib/Basic/Targets/NVPTX.cpp @@ -229,6 +229,7 @@ void NVPTXTargetInfo::getTargetDefines(const LangOptions &Opts, case OffloadArch::GFX1150: case OffloadArch::GFX1151: case OffloadArch::GFX1152: + case OffloadArch::GFX1153: case OffloadArch::GFX12_GENERIC: case OffloadArch::GFX1200: case OffloadArch::GFX1201: diff --git a/clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp b/clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp index 35ff75416cb776..2e5ab6e7b9ac5c 100644 --- a/clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp +++ b/clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp @@ -2322,6 +2322,7 @@ void CGOpenMPRuntimeGPU::processRequiresDirective(const OMPRequiresDecl *D) { case OffloadArch::GFX1150: case OffloadArch::GFX1151: case OffloadArch::GFX1152: + case OffloadArch::GFX1153: case OffloadArch::GFX12_GENERIC: case OffloadArch::GFX1200: case OffloadArch::GFX1201: diff --git a/clang/test/CodeGenOpenCL/amdgpu-features.cl b/clang/test/CodeGenOpenCL/amdgpu-features.cl index 854ab39791f164..f3473346baae5a 100644 --- a/clang/test/CodeGenOpenCL/amdgpu-features.cl +++ b/clang/test/CodeGenOpenCL/amdgpu-features.cl @@ -50,6 +50,7 @@ // RUN: %clang_cc1 -triple amdgcn -target-cpu gfx1150 -emit-llvm -o - %s | FileCheck --check-prefix=GFX1150 %s // RUN: %clang_cc1 -triple amdgcn -target-cpu gfx1151 -emit-llvm -o - %s | FileCheck --check-prefix=GFX1151 %s // RUN: %clang_cc1 -triple amdgcn -target-cpu gfx1152 -emit-llvm -o - %s | FileCheck --check-prefix=GFX1152 %s +// RUN: %clang_cc1 -triple amdgcn -target-cpu gfx1153 -emit-llvm -o - %s | FileCheck --check-prefix=GFX1153 %s // RUN: %clang_cc1 -triple amdgcn -target-cpu gfx1200 -emit-llvm -o - %s | FileCheck --check-prefix=GFX1200 %s // RUN: %clang_cc1 -triple amdgcn -target-cpu gfx1201 -emit-llvm -o - %s | FileCheck --check-prefix=GFX1
[clang] [flang] [libclc] [llvm] [AMDGPU] Add a new target for gfx1153 (PR #113138)
perlfu wrote: > The compiler currently treats it as identical to gfx1152, right? Correct. https://github.com/llvm/llvm-project/pull/113138 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang] [flang] [libclc] [llvm] [AMDGPU] Add a new target for gfx1153 (PR #113138)
https://github.com/perlfu closed https://github.com/llvm/llvm-project/pull/113138 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[clang] [flang] [libclc] [llvm] [AMDGPU] Add a new target for gfx1153 (PR #113138)
https://github.com/perlfu updated https://github.com/llvm/llvm-project/pull/113138 >From c7345662a894805173c2704ee07c98cd1831cab0 Mon Sep 17 00:00:00 2001 From: Carl Ritson Date: Mon, 21 Oct 2024 17:20:39 +0900 Subject: [PATCH 1/2] [AMDGPU] Add a new target for gfx1153 --- clang/include/clang/Basic/Cuda.h | 1 + clang/lib/Basic/Cuda.cpp | 1 + clang/lib/Basic/Targets/NVPTX.cpp | 1 + clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp | 1 + clang/test/CodeGenOpenCL/amdgpu-features.cl | 2 ++ clang/test/CodeGenOpenCL/builtins-amdgcn-gfx11.cl | 1 + clang/test/Driver/amdgpu-macros.cl| 1 + clang/test/Driver/amdgpu-mcpu.cl | 2 ++ clang/test/Misc/target-invalid-cpu-note/amdgcn.c | 1 + clang/test/Misc/target-invalid-cpu-note/nvptx.c | 1 + flang/cmake/modules/AddFlangOffloadRuntime.cmake | 2 +- libclc/CMakeLists.txt | 2 +- llvm/docs/AMDGPUUsage.rst | 15 +-- llvm/include/llvm/BinaryFormat/ELF.h | 2 +- llvm/include/llvm/TargetParser/TargetParser.h | 1 + llvm/lib/Object/ELFObjectFile.cpp | 2 ++ llvm/lib/ObjectYAML/ELFYAML.cpp | 1 + llvm/lib/Target/AMDGPU/AMDGPU.td | 6 ++ llvm/lib/Target/AMDGPU/GCNProcessors.td | 6 +- .../AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp | 2 ++ llvm/lib/TargetParser/TargetParser.cpp| 4 .../CodeGen/AMDGPU/directive-amdgcn-target.ll | 2 ++ llvm/test/CodeGen/AMDGPU/elf-header-flags-mach.ll | 2 ++ llvm/test/CodeGen/AMDGPU/occupancy-levels.ll | 2 ++ llvm/test/MC/AMDGPU/gfx1150_asm_features.s| 1 + .../test/Object/AMDGPU/elf-header-flags-mach.yaml | 7 +++ .../tools/llvm-objdump/ELF/AMDGPU/subtarget.ll| 5 + .../llvm-readobj/ELF/AMDGPU/elf-headers.test | 9 + llvm/tools/llvm-readobj/ELFDumper.cpp | 1 + offload/DeviceRTL/CMakeLists.txt | 2 +- 30 files changed, 79 insertions(+), 7 deletions(-) diff --git a/clang/include/clang/Basic/Cuda.h b/clang/include/clang/Basic/Cuda.h index a18e62620dd5d0..7b4f435dc39f29 100644 --- a/clang/include/clang/Basic/Cuda.h +++ b/clang/include/clang/Basic/Cuda.h @@ -127,6 +127,7 @@ enum class OffloadArch { GFX1150, GFX1151, GFX1152, + GFX1153, GFX12_GENERIC, GFX1200, GFX1201, diff --git a/clang/lib/Basic/Cuda.cpp b/clang/lib/Basic/Cuda.cpp index 08989b6c2c03f9..d765baef913e2f 100644 --- a/clang/lib/Basic/Cuda.cpp +++ b/clang/lib/Basic/Cuda.cpp @@ -145,6 +145,7 @@ static const OffloadArchToStringMap arch_names[] = { GFX(1150), // gfx1150 GFX(1151), // gfx1151 GFX(1152), // gfx1152 +GFX(1153), // gfx1153 {OffloadArch::GFX12_GENERIC, "gfx12-generic", "compute_amdgcn"}, GFX(1200), // gfx1200 GFX(1201), // gfx1201 diff --git a/clang/lib/Basic/Targets/NVPTX.cpp b/clang/lib/Basic/Targets/NVPTX.cpp index 88a0dbde52d52b..e0bd0b096324d8 100644 --- a/clang/lib/Basic/Targets/NVPTX.cpp +++ b/clang/lib/Basic/Targets/NVPTX.cpp @@ -229,6 +229,7 @@ void NVPTXTargetInfo::getTargetDefines(const LangOptions &Opts, case OffloadArch::GFX1150: case OffloadArch::GFX1151: case OffloadArch::GFX1152: + case OffloadArch::GFX1153: case OffloadArch::GFX12_GENERIC: case OffloadArch::GFX1200: case OffloadArch::GFX1201: diff --git a/clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp b/clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp index 35ff75416cb776..2e5ab6e7b9ac5c 100644 --- a/clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp +++ b/clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp @@ -2322,6 +2322,7 @@ void CGOpenMPRuntimeGPU::processRequiresDirective(const OMPRequiresDecl *D) { case OffloadArch::GFX1150: case OffloadArch::GFX1151: case OffloadArch::GFX1152: + case OffloadArch::GFX1153: case OffloadArch::GFX12_GENERIC: case OffloadArch::GFX1200: case OffloadArch::GFX1201: diff --git a/clang/test/CodeGenOpenCL/amdgpu-features.cl b/clang/test/CodeGenOpenCL/amdgpu-features.cl index 854ab39791f164..f3473346baae5a 100644 --- a/clang/test/CodeGenOpenCL/amdgpu-features.cl +++ b/clang/test/CodeGenOpenCL/amdgpu-features.cl @@ -50,6 +50,7 @@ // RUN: %clang_cc1 -triple amdgcn -target-cpu gfx1150 -emit-llvm -o - %s | FileCheck --check-prefix=GFX1150 %s // RUN: %clang_cc1 -triple amdgcn -target-cpu gfx1151 -emit-llvm -o - %s | FileCheck --check-prefix=GFX1151 %s // RUN: %clang_cc1 -triple amdgcn -target-cpu gfx1152 -emit-llvm -o - %s | FileCheck --check-prefix=GFX1152 %s +// RUN: %clang_cc1 -triple amdgcn -target-cpu gfx1153 -emit-llvm -o - %s | FileCheck --check-prefix=GFX1153 %s // RUN: %clang_cc1 -triple amdgcn -target-cpu gfx1200 -emit-llvm -o - %s | FileCheck --check-prefix=GFX1200 %s // RUN: %clang_cc1 -triple amdgcn -target-cpu gfx1201 -emit-llvm -o - %s | FileCheck --check-prefix=GFX120