Skip to content

Commit 336b4b9

Browse files
committed
address comments
1 parent 6c6ba36 commit 336b4b9

File tree

3 files changed

+55
-0
lines changed

3 files changed

+55
-0
lines changed

llvm/test/CodeGen/NVPTX/bf16-instructions.ll

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1605,5 +1605,23 @@ define <2 x bfloat> @test_maxnum_v2(<2 x bfloat> %a, <2 x bfloat> %b) {
16051605
ret <2 x bfloat> %r
16061606
}
16071607

1608+
define void @store_bf16(ptr %p1, ptr %p2, bfloat %v) {
1609+
; CHECK-LABEL: store_bf16(
1610+
; CHECK: {
1611+
; CHECK-NEXT: .reg .b16 %rs<2>;
1612+
; CHECK-NEXT: .reg .b64 %rd<3>;
1613+
; CHECK-EMPTY:
1614+
; CHECK-NEXT: // %bb.0:
1615+
; CHECK-NEXT: ld.param.b64 %rd1, [store_bf16_param_0];
1616+
; CHECK-NEXT: ld.param.b16 %rs1, [store_bf16_param_2];
1617+
; CHECK-NEXT: st.b16 [%rd1], %rs1;
1618+
; CHECK-NEXT: ld.param.b64 %rd2, [store_bf16_param_1];
1619+
; CHECK-NEXT: st.b16 [%rd2], 0x3F80;
1620+
; CHECK-NEXT: ret;
1621+
store bfloat %v, ptr %p1
1622+
store bfloat 1.0, ptr %p2
1623+
ret void
1624+
}
1625+
16081626
declare bfloat @llvm.maximum.bf16(bfloat, bfloat)
16091627
declare <2 x bfloat> @llvm.maximum.v2bf16(<2 x bfloat>, <2 x bfloat>)

llvm/test/CodeGen/NVPTX/bf16x2-instructions.ll

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -723,3 +723,20 @@ define <2 x bfloat> @test_copysign(<2 x bfloat> %a, <2 x bfloat> %b) #0 {
723723
ret <2 x bfloat> %r
724724
}
725725

726+
define void @test_store_bf16x2(ptr %p1, ptr %p2, <2 x bfloat> %v) {
727+
; CHECK-LABEL: test_store_bf16x2(
728+
; CHECK: {
729+
; CHECK-NEXT: .reg .b32 %r<2>;
730+
; CHECK-NEXT: .reg .b64 %rd<3>;
731+
; CHECK-EMPTY:
732+
; CHECK-NEXT: // %bb.0:
733+
; CHECK-NEXT: ld.param.b64 %rd1, [test_store_bf16x2_param_0];
734+
; CHECK-NEXT: ld.param.b32 %r1, [test_store_bf16x2_param_2];
735+
; CHECK-NEXT: st.b32 [%rd1], %r1;
736+
; CHECK-NEXT: ld.param.b64 %rd2, [test_store_bf16x2_param_1];
737+
; CHECK-NEXT: st.b32 [%rd2], 1065369472;
738+
; CHECK-NEXT: ret;
739+
store <2 x bfloat> %v, ptr %p1
740+
store <2 x bfloat> <bfloat 1.0, bfloat 1.0>, ptr %p2
741+
ret void
742+
}

llvm/test/CodeGen/NVPTX/f16x2-instructions.ll

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2295,5 +2295,25 @@ define <2 x half> @test_uitofp_2xi16_to_2xhalf(<2 x i16> %a) #0 {
22952295
ret <2 x half> %r
22962296
}
22972297

2298+
define void @test_store_2xhalf(ptr %p1, ptr %p2, <2 x half> %v) {
2299+
; CHECK-LABEL: test_store_2xhalf(
2300+
; CHECK: {
2301+
; CHECK-NEXT: .reg .b32 %r<2>;
2302+
; CHECK-NEXT: .reg .b64 %rd<3>;
2303+
; CHECK-EMPTY:
2304+
; CHECK-NEXT: // %bb.0:
2305+
; CHECK-NEXT: ld.param.b32 %r1, [test_store_2xhalf_param_2];
2306+
; CHECK-NEXT: ld.param.b64 %rd2, [test_store_2xhalf_param_1];
2307+
; CHECK-NEXT: ld.param.b64 %rd1, [test_store_2xhalf_param_0];
2308+
; CHECK-NEXT: st.b32 [%rd1], %r1;
2309+
; CHECK-NEXT: st.b32 [%rd2], 1006648320;
2310+
; CHECK-NEXT: ret;
2311+
store <2 x half> %v, ptr %p1
2312+
store <2 x half> <half 1.0, half 1.0>, ptr %p2
2313+
ret void
2314+
}
2315+
2316+
2317+
22982318
attributes #0 = { nounwind }
22992319
attributes #1 = { "unsafe-fp-math" = "true" }

0 commit comments

Comments
 (0)