[llvm] 5d3b057 - [NFC][AMDGPU] Add an IR test for `v_sqrt_bf16` (#149629)
via llvm-commits
llvm-commits at lists.llvm.org
Mon Jul 21 06:40:18 PDT 2025
Author: Shilei Tian
Date: 2025-07-21T09:40:14-04:00
New Revision: 5d3b0578d8d51947a6878d65249174de86105073
URL: https://github.com/llvm/llvm-project/commit/5d3b0578d8d51947a6878d65249174de86105073
DIFF: https://github.com/llvm/llvm-project/commit/5d3b0578d8d51947a6878d65249174de86105073.diff
LOG: [NFC][AMDGPU] Add an IR test for `v_sqrt_bf16` (#149629)
This was left during the upstream.
Co-authored-by: Mekhanoshin, Stanislav <Stanislav.Mekhanoshin at amd.com>
Added:
Modified:
llvm/test/CodeGen/AMDGPU/bf16-math.ll
Removed:
################################################################################
diff --git a/llvm/test/CodeGen/AMDGPU/bf16-math.ll b/llvm/test/CodeGen/AMDGPU/bf16-math.ll
index 029604c2933a9..b49614d05700a 100644
--- a/llvm/test/CodeGen/AMDGPU/bf16-math.ll
+++ b/llvm/test/CodeGen/AMDGPU/bf16-math.ll
@@ -2,6 +2,27 @@
; RUN: llc -mtriple=amdgcn -mcpu=gfx1250 < %s | FileCheck --check-prefix=GCN %s
; TODO: Add global-isel when it can support bf16
+define amdgpu_ps void @llvm_sqrt_bf16_v(ptr addrspace(1) %out, bfloat %src) {
+; GCN-LABEL: llvm_sqrt_bf16_v:
+; GCN: ; %bb.0:
+; GCN-NEXT: v_sqrt_bf16_e32 v2, v2
+; GCN-NEXT: global_store_b16 v[0:1], v2, off
+; GCN-NEXT: s_endpgm
+ %sqrt = call bfloat @llvm.sqrt.bf16(bfloat %src)
+ store bfloat %sqrt, ptr addrspace(1) %out, align 2
+ ret void
+}
+
+define amdgpu_ps void @llvm_sqrt_bf16_s(ptr addrspace(1) %out, bfloat inreg %src) {
+; GCN-LABEL: llvm_sqrt_bf16_s:
+; GCN: ; %bb.0:
+; GCN-NEXT: v_sqrt_bf16_e32 v2, s0
+; GCN-NEXT: global_store_b16 v[0:1], v2, off
+; GCN-NEXT: s_endpgm
+ %sqrt = call bfloat @llvm.sqrt.bf16(bfloat %src)
+ store bfloat %sqrt, ptr addrspace(1) %out, align 2
+ ret void
+}
define amdgpu_ps void @llvm_log2_bf16_v(ptr addrspace(1) %out, bfloat %src) {
; GCN-LABEL: llvm_log2_bf16_v:
@@ -47,5 +68,6 @@ define amdgpu_ps void @llvm_exp2_bf16_s(ptr addrspace(1) %out, bfloat inreg %src
ret void
}
+declare bfloat @llvm.sqrt.bf16(bfloat)
declare bfloat @llvm.log2.bf16(bfloat)
declare bfloat @llvm.exp2.bf16(bfloat)
More information about the llvm-commits
mailing list