diff options
Diffstat (limited to 'llvm/test/CodeGen/AArch64/f16-instructions.ll')
-rw-r--r-- | llvm/test/CodeGen/AArch64/f16-instructions.ll | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/AArch64/f16-instructions.ll b/llvm/test/CodeGen/AArch64/f16-instructions.ll index b677feecf67..1ed4bdec9fb 100644 --- a/llvm/test/CodeGen/AArch64/f16-instructions.ll +++ b/llvm/test/CodeGen/AArch64/f16-instructions.ll @@ -1273,10 +1273,21 @@ define half @test_nearbyint(half %a) #0 { ; CHECK-CVT-NEXT: fcvt h0, [[INT32]] ; CHECK-CVT-NEXT: ret +; GISEL-CVT-LABEL: test_round: +; GISEL-CVT-NEXT: fcvt [[FLOAT32:s[0-9]+]], h0 +; GISEL-CVT-NEXT: frinta [[INT32:s[0-9]+]], [[FLOAT32]] +; GISEL-CVT-NEXT: fcvt h0, [[INT32]] +; GISEL-CVT-NEXT: ret + + ; CHECK-FP16-LABEL: test_round: ; CHECK-FP16-NEXT: frinta h0, h0 ; CHECK-FP16-NEXT: ret +; GISEL-FP16-LABEL: test_round: +; GISEL-FP16-NEXT: frinta h0, h0 +; GISEL-FP16-NEXT: ret + define half @test_round(half %a) #0 { %r = call half @llvm.round.f16(half %a) ret half %r |