[PATCH] D62244: [AMDGPU] Enable the implicit arguments for HIP (CLANG)
This revision was automatically updated to reflect the committed changes. Closed by commit rL363414: [AMDGPU] Enable the implicit arguments for HIP (CLANG) (authored by yaxunl, committed by ). Herald added a project: LLVM. Herald added a subscriber: llvm-commits. Changed prior to commit: https://reviews.llvm.org/D62244?vs=203975&id=204777#toc Repository: rL LLVM CHANGES SINCE LAST ACTION https://reviews.llvm.org/D62244/new/ https://reviews.llvm.org/D62244 Files: cfe/trunk/lib/CodeGen/TargetInfo.cpp cfe/trunk/test/CodeGenCUDA/amdgpu-hip-implicit-kernarg.cu Index: cfe/trunk/lib/CodeGen/TargetInfo.cpp === --- cfe/trunk/lib/CodeGen/TargetInfo.cpp +++ cfe/trunk/lib/CodeGen/TargetInfo.cpp @@ -7868,7 +7868,8 @@ const auto *ReqdWGS = M.getLangOpts().OpenCL ? FD->getAttr() : nullptr; - if (M.getLangOpts().OpenCL && FD->hasAttr() && + if (((M.getLangOpts().OpenCL && FD->hasAttr()) || + (M.getLangOpts().HIP && FD->hasAttr())) && (M.getTriple().getOS() == llvm::Triple::AMDHSA)) F->addFnAttr("amdgpu-implicitarg-num-bytes", "48"); Index: cfe/trunk/test/CodeGenCUDA/amdgpu-hip-implicit-kernarg.cu === --- cfe/trunk/test/CodeGenCUDA/amdgpu-hip-implicit-kernarg.cu +++ cfe/trunk/test/CodeGenCUDA/amdgpu-hip-implicit-kernarg.cu @@ -0,0 +1,8 @@ +// REQUIRES: amdgpu-registered-target +// RUN: %clang_cc1 -triple amdgcn-amd-amdhsa -fcuda-is-device -emit-llvm -x hip -o - %s | FileCheck %s +#include "Inputs/cuda.h" + +__global__ void hip_kernel_temp() { +} + +// CHECK: attributes {{.*}} = {{.*}} "amdgpu-implicitarg-num-bytes"="48" Index: cfe/trunk/lib/CodeGen/TargetInfo.cpp === --- cfe/trunk/lib/CodeGen/TargetInfo.cpp +++ cfe/trunk/lib/CodeGen/TargetInfo.cpp @@ -7868,7 +7868,8 @@ const auto *ReqdWGS = M.getLangOpts().OpenCL ? FD->getAttr() : nullptr; - if (M.getLangOpts().OpenCL && FD->hasAttr() && + if (((M.getLangOpts().OpenCL && FD->hasAttr()) || + (M.getLangOpts().HIP && FD->hasAttr())) && (M.getTriple().getOS() == llvm::Triple::AMDHSA)) F->addFnAttr("amdgpu-implicitarg-num-bytes", "48"); Index: cfe/trunk/test/CodeGenCUDA/amdgpu-hip-implicit-kernarg.cu === --- cfe/trunk/test/CodeGenCUDA/amdgpu-hip-implicit-kernarg.cu +++ cfe/trunk/test/CodeGenCUDA/amdgpu-hip-implicit-kernarg.cu @@ -0,0 +1,8 @@ +// REQUIRES: amdgpu-registered-target +// RUN: %clang_cc1 -triple amdgcn-amd-amdhsa -fcuda-is-device -emit-llvm -x hip -o - %s | FileCheck %s +#include "Inputs/cuda.h" + +__global__ void hip_kernel_temp() { +} + +// CHECK: attributes {{.*}} = {{.*}} "amdgpu-implicitarg-num-bytes"="48" ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D62244: [AMDGPU] Enable the implicit arguments for HIP (CLANG)
cdevadas updated this revision to Diff 203975. cdevadas added a comment. simplified the check in the test case. Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D62244/new/ https://reviews.llvm.org/D62244 Files: lib/CodeGen/TargetInfo.cpp test/CodeGenCUDA/amdgpu-hip-implicit-kernarg.cu Index: test/CodeGenCUDA/amdgpu-hip-implicit-kernarg.cu === --- /dev/null +++ test/CodeGenCUDA/amdgpu-hip-implicit-kernarg.cu @@ -0,0 +1,7 @@ +// RUN: %clang_cc1 -triple amdgcn-amd-amdhsa -emit-llvm -x hip -o - %s | FileCheck %s +#include "Inputs/cuda.h" + +__global__ void hip_kernel_temp() { +} + +// CHECK: attributes #0 = { noinline nounwind optnone "amdgpu-implicitarg-num-bytes"="48" Index: lib/CodeGen/TargetInfo.cpp === --- lib/CodeGen/TargetInfo.cpp +++ lib/CodeGen/TargetInfo.cpp @@ -7853,7 +7853,8 @@ const auto *ReqdWGS = M.getLangOpts().OpenCL ? FD->getAttr() : nullptr; - if (M.getLangOpts().OpenCL && FD->hasAttr() && + if (((M.getLangOpts().OpenCL && FD->hasAttr()) || + (M.getLangOpts().HIP && FD->hasAttr())) && (M.getTriple().getOS() == llvm::Triple::AMDHSA)) F->addFnAttr("amdgpu-implicitarg-num-bytes", "48"); Index: test/CodeGenCUDA/amdgpu-hip-implicit-kernarg.cu === --- /dev/null +++ test/CodeGenCUDA/amdgpu-hip-implicit-kernarg.cu @@ -0,0 +1,7 @@ +// RUN: %clang_cc1 -triple amdgcn-amd-amdhsa -emit-llvm -x hip -o - %s | FileCheck %s +#include "Inputs/cuda.h" + +__global__ void hip_kernel_temp() { +} + +// CHECK: attributes #0 = { noinline nounwind optnone "amdgpu-implicitarg-num-bytes"="48" Index: lib/CodeGen/TargetInfo.cpp === --- lib/CodeGen/TargetInfo.cpp +++ lib/CodeGen/TargetInfo.cpp @@ -7853,7 +7853,8 @@ const auto *ReqdWGS = M.getLangOpts().OpenCL ? FD->getAttr() : nullptr; - if (M.getLangOpts().OpenCL && FD->hasAttr() && + if (((M.getLangOpts().OpenCL && FD->hasAttr()) || + (M.getLangOpts().HIP && FD->hasAttr())) && (M.getTriple().getOS() == llvm::Triple::AMDHSA)) F->addFnAttr("amdgpu-implicitarg-num-bytes", "48"); ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D62244: [AMDGPU] Enable the implicit arguments for HIP (CLANG)
hliao added inline comments. Comment at: test/CodeGenCUDA/amdgpu-hip-implicit-kernarg.cu:7 + +// CHECK-DAG: attributes #0 = { noinline nounwind optnone "amdgpu-implicitarg-num-bytes"="48" For a single check, you don't need CHECK-DAG. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D62244/new/ https://reviews.llvm.org/D62244 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D62244: [AMDGPU] Enable the implicit arguments for HIP (CLANG)
cdevadas updated this revision to Diff 200870. cdevadas added a comment. Herald added subscribers: nhaehnle, jvesely. Moved the test to CodeGenCUDA directory. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D62244/new/ https://reviews.llvm.org/D62244 Files: lib/CodeGen/TargetInfo.cpp test/CodeGenCUDA/amdgpu-hip-implicit-kernarg.cu Index: test/CodeGenCUDA/amdgpu-hip-implicit-kernarg.cu === --- /dev/null +++ test/CodeGenCUDA/amdgpu-hip-implicit-kernarg.cu @@ -0,0 +1,7 @@ +// RUN: %clang_cc1 -triple amdgcn-amd-amdhsa -emit-llvm -x hip -o - %s | FileCheck %s +#include "Inputs/cuda.h" + +__global__ void hip_kernel_temp() { +} + +// CHECK-DAG: attributes #0 = { noinline nounwind optnone "amdgpu-implicitarg-num-bytes"="48" Index: lib/CodeGen/TargetInfo.cpp === --- lib/CodeGen/TargetInfo.cpp +++ lib/CodeGen/TargetInfo.cpp @@ -7853,7 +7853,8 @@ const auto *ReqdWGS = M.getLangOpts().OpenCL ? FD->getAttr() : nullptr; - if (M.getLangOpts().OpenCL && FD->hasAttr() && + if (((M.getLangOpts().OpenCL && FD->hasAttr()) || + (M.getLangOpts().HIP && FD->hasAttr())) && (M.getTriple().getOS() == llvm::Triple::AMDHSA)) F->addFnAttr("amdgpu-implicitarg-num-bytes", "48"); Index: test/CodeGenCUDA/amdgpu-hip-implicit-kernarg.cu === --- /dev/null +++ test/CodeGenCUDA/amdgpu-hip-implicit-kernarg.cu @@ -0,0 +1,7 @@ +// RUN: %clang_cc1 -triple amdgcn-amd-amdhsa -emit-llvm -x hip -o - %s | FileCheck %s +#include "Inputs/cuda.h" + +__global__ void hip_kernel_temp() { +} + +// CHECK-DAG: attributes #0 = { noinline nounwind optnone "amdgpu-implicitarg-num-bytes"="48" Index: lib/CodeGen/TargetInfo.cpp === --- lib/CodeGen/TargetInfo.cpp +++ lib/CodeGen/TargetInfo.cpp @@ -7853,7 +7853,8 @@ const auto *ReqdWGS = M.getLangOpts().OpenCL ? FD->getAttr() : nullptr; - if (M.getLangOpts().OpenCL && FD->hasAttr() && + if (((M.getLangOpts().OpenCL && FD->hasAttr()) || + (M.getLangOpts().HIP && FD->hasAttr())) && (M.getTriple().getOS() == llvm::Triple::AMDHSA)) F->addFnAttr("amdgpu-implicitarg-num-bytes", "48"); ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D62244: [AMDGPU] Enable the implicit arguments for HIP (CLANG)
yaxunl added a comment. Currently HIP and CUDA share the same test directories, so better put the test in CodeGenCUDA. Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D62244/new/ https://reviews.llvm.org/D62244 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D62244: [AMDGPU] Enable the implicit arguments for HIP (CLANG)
cdevadas created this revision. cdevadas added reviewers: b-sumner, yaxunl. Herald added subscribers: cfe-commits, t-tye, Anastasia, tpr, dstuttard, wdng, kzhuravl. Herald added a project: clang. Enable 48-bytes of implicit arguments for HIP as well. Earlier it was enabled for OpenCL. This code is specific to AMDGPU target. Repository: rC Clang https://reviews.llvm.org/D62244 Files: lib/CodeGen/TargetInfo.cpp test/CodeGenHIP/Inputs/hip.h test/CodeGenHIP/implicit-kernarg.cpp Index: test/CodeGenHIP/implicit-kernarg.cpp === --- /dev/null +++ test/CodeGenHIP/implicit-kernarg.cpp @@ -0,0 +1,7 @@ +// RUN: %clang_cc1 -triple amdgcn-amd-amdhsa -emit-llvm -x hip -o - %s | FileCheck %s +#include "Inputs/hip.h" + +__global__ void hip_kernel_temp() { +} + +// CHECK-DAG: attributes #0 = { noinline nounwind optnone "amdgpu-implicitarg-num-bytes"="48" Index: test/CodeGenHIP/Inputs/hip.h === --- /dev/null +++ test/CodeGenHIP/Inputs/hip.h @@ -0,0 +1,3 @@ +/* Minimal declarations for HIP support. Testing purposes only. */ + +#define __global__ __attribute__((global)) Index: lib/CodeGen/TargetInfo.cpp === --- lib/CodeGen/TargetInfo.cpp +++ lib/CodeGen/TargetInfo.cpp @@ -7853,7 +7853,8 @@ const auto *ReqdWGS = M.getLangOpts().OpenCL ? FD->getAttr() : nullptr; - if (M.getLangOpts().OpenCL && FD->hasAttr() && + if (((M.getLangOpts().OpenCL && FD->hasAttr()) || + (M.getLangOpts().HIP && FD->hasAttr())) && (M.getTriple().getOS() == llvm::Triple::AMDHSA)) F->addFnAttr("amdgpu-implicitarg-num-bytes", "48"); Index: test/CodeGenHIP/implicit-kernarg.cpp === --- /dev/null +++ test/CodeGenHIP/implicit-kernarg.cpp @@ -0,0 +1,7 @@ +// RUN: %clang_cc1 -triple amdgcn-amd-amdhsa -emit-llvm -x hip -o - %s | FileCheck %s +#include "Inputs/hip.h" + +__global__ void hip_kernel_temp() { +} + +// CHECK-DAG: attributes #0 = { noinline nounwind optnone "amdgpu-implicitarg-num-bytes"="48" Index: test/CodeGenHIP/Inputs/hip.h === --- /dev/null +++ test/CodeGenHIP/Inputs/hip.h @@ -0,0 +1,3 @@ +/* Minimal declarations for HIP support. Testing purposes only. */ + +#define __global__ __attribute__((global)) Index: lib/CodeGen/TargetInfo.cpp === --- lib/CodeGen/TargetInfo.cpp +++ lib/CodeGen/TargetInfo.cpp @@ -7853,7 +7853,8 @@ const auto *ReqdWGS = M.getLangOpts().OpenCL ? FD->getAttr() : nullptr; - if (M.getLangOpts().OpenCL && FD->hasAttr() && + if (((M.getLangOpts().OpenCL && FD->hasAttr()) || + (M.getLangOpts().HIP && FD->hasAttr())) && (M.getTriple().getOS() == llvm::Triple::AMDHSA)) F->addFnAttr("amdgpu-implicitarg-num-bytes", "48"); ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits