[llvm] [clang] [clang-tools-extra] [AMDGPU] Fix GCNRewritePartialRegUses pass: vector regclass is selected instead of scalar. (PR #69957)

2023-11-15 Thread Carl Ritson via cfe-commits

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)

2024-10-21 Thread Carl Ritson via cfe-commits

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)

2024-10-21 Thread Carl Ritson via cfe-commits

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)

2024-10-22 Thread Carl Ritson via cfe-commits

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)

2024-10-22 Thread Carl Ritson via cfe-commits

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