[clang] [llvm] [AMDGPU] Add code model (#70760) test for amdgpu target. (PR #71019)

Pravin Jagtap via cfe-commits cfe-commits at lists.llvm.org
Thu Nov 2 02:52:29 PDT 2023


https://github.com/pravinjagtap updated https://github.com/llvm/llvm-project/pull/71019

>From ef0118818249da417706db7f8e7086d051d17d50 Mon Sep 17 00:00:00 2001
From: Pravin Jagtap <Pravin.Jagtap at amd.com>
Date: Thu, 2 Nov 2023 01:05:35 -0400
Subject: [PATCH 1/2] [AMDGPU] Add code model (#70760) test for amdgpu target.

---
 llvm/test/CodeGen/AMDGPU/codemodel.ll | 9 +++++++++
 1 file changed, 9 insertions(+)
 create mode 100644 llvm/test/CodeGen/AMDGPU/codemodel.ll

diff --git a/llvm/test/CodeGen/AMDGPU/codemodel.ll b/llvm/test/CodeGen/AMDGPU/codemodel.ll
new file mode 100644
index 000000000000000..8b60257b2076aed
--- /dev/null
+++ b/llvm/test/CodeGen/AMDGPU/codemodel.ll
@@ -0,0 +1,9 @@
+; RUN: not llc -verify-machineinstrs -o - -mtriple=amdgcn-unknown-amdhsa -mcpu=gfx900 -code-model=tiny < %s 2>&1 | FileCheck %s --check-prefix=TINY
+; RUN: not llc -verify-machineinstrs -o - -mtriple=amdgcn-unknown-amdhsa -mcpu=gfx900 -code-model=kernel < %s 2>&1 | FileCheck %s --check-prefix=KERNEL
+
+; TINY:    Target does not support the tiny CodeModel
+; KERNEL:    Target does not support the kernel CodeModel
+
+define void @foo() {
+  ret void
+}

>From f4c4ec2dd7829267b0df84a2a651b98e9c18a4e0 Mon Sep 17 00:00:00 2001
From: Pravin Jagtap <Pravin.Jagtap at amd.com>
Date: Thu, 2 Nov 2023 05:51:50 -0400
Subject: [PATCH 2/2] Added clang driver test for code model.

---
 clang/test/Driver/mcmodel.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/clang/test/Driver/mcmodel.c b/clang/test/Driver/mcmodel.c
index fb3bbccb0c68157..d546d5d81db5261 100644
--- a/clang/test/Driver/mcmodel.c
+++ b/clang/test/Driver/mcmodel.c
@@ -13,6 +13,11 @@
 // RUN: not %clang -### -c --target=aarch64 -mcmodel=medium %s 2>&1 | FileCheck --check-prefix=ERR-MEDIUM %s
 // RUN: not %clang -### -c --target=aarch64 -mcmodel=kernel %s 2>&1 | FileCheck --check-prefix=ERR-KERNEL %s
 // RUN: not %clang --target=aarch64_32-linux -### -S -mcmodel=small %s 2>&1 | FileCheck --check-prefix=ERR-AARCH64_32 %s
+// RUN: %clang --target=amdgcn-amd-amdhsa -nogpulib -### -c -mcmodel=tiny %s 2>&1 | FileCheck --check-prefix=AMDGPU-MCMODEL-TINY %s
+// RUN: %clang --target=amdgcn-amd-amdhsa -nogpulib -### -c -mcmodel=small %s 2>&1 | FileCheck --check-prefix=AMDGPU-MCMODEL-SMALL %s
+// RUN: %clang --target=amdgcn-amd-amdhsa -nogpulib -### -S -mcmodel=kernel %s 2>&1 | FileCheck --check-prefix=AMDGPU-MCMODEL-KERNEL %s
+// RUN: %clang --target=amdgcn-amd-amdhsa -nogpulib -### -c -mcmodel=medium %s 2>&1 | FileCheck --check-prefix=AMDGPU-MCMODEL-MEDIUM %s
+// RUN: %clang --target=amdgcn-amd-amdhsa -nogpulib -### -S -mcmodel=large %s 2>&1 | FileCheck --check-prefix=AMDGPU-MCMODEL-LARGE %s
 
 // TINY: "-mcmodel=tiny"
 // SMALL: "-mcmodel=small"
@@ -29,3 +34,8 @@
 
 // AARCH64-PIC-LARGE: error: invalid argument '-mcmodel=large' only allowed with '-fno-pic'
 // ERR-AARCH64_32: error: unsupported argument 'small' to option '-mcmodel=' for target 'aarch64_32-unknown-linux'
+// AMDGPU-MCMODEL-TINY: "-mcmodel=tiny"
+// AMDGPU-MCMODEL-SMALL: "-mcmodel=small"
+// AMDGPU-MCMODEL-KERNEL: "-mcmodel=kernel"
+// AMDGPU-MCMODEL-MEDIUM: "-mcmodel=medium"
+// AMDGPU-MCMODEL-LARGE: "-mcmodel=large"



More information about the cfe-commits mailing list