[llvm] 2ae71f5 - [RISCV][test] Add commented out f128 test for llvm.frexp.ll
Alex Bradbury via llvm-commits
llvm-commits at lists.llvm.org
Wed Jul 5 03:19:01 PDT 2023
Author: Alex Bradbury
Date: 2023-07-05T11:18:51+01:00
New Revision: 2ae71f541eb201d8bac83e769f74dd68e33a63eb
URL: https://github.com/llvm/llvm-project/commit/2ae71f541eb201d8bac83e769f74dd68e33a63eb
DIFF: https://github.com/llvm/llvm-project/commit/2ae71f541eb201d8bac83e769f74dd68e33a63eb.diff
LOG: [RISCV][test] Add commented out f128 test for llvm.frexp.ll
This represents the crash reported in <https://github.com/llvm/llvm-project/issues/63661>
Added:
Modified:
llvm/test/CodeGen/RISCV/llvm.frexp.ll
Removed:
################################################################################
diff --git a/llvm/test/CodeGen/RISCV/llvm.frexp.ll b/llvm/test/CodeGen/RISCV/llvm.frexp.ll
index 31aa7a077023ea..6efbf76e7c8ac6 100644
--- a/llvm/test/CodeGen/RISCV/llvm.frexp.ll
+++ b/llvm/test/CodeGen/RISCV/llvm.frexp.ll
@@ -905,6 +905,24 @@ define i32 @test_frexp_f64_i32_only_use_exp(double %a) nounwind {
; ret <2 x i32> %result.1
; }
+; FIXME: fp128 softening crashes
+; define { fp128, i32 } @test_frexp_f128_i32(fp128 %a) nounwind {
+; %result = call { fp128, i32 } @llvm.frexp.f128.i32(fp128 %a)
+; ret { fp128, i32 } %result
+; }
+
+; define fp128 @test_frexp_f128_i32_only_use_fract(fp128 %a) nounwind {
+; %result = call { fp128, i32 } @llvm.frexp.f128.i32(fp128 %a)
+; %result.0 = extractvalue { fp128, i32 } %result, 0
+; ret fp128 %result.0
+; }
+
+; define i32 @test_frexp_f128_i32_only_use_exp(fp128 %a) nounwind {
+; %result = call { fp128, i32 } @llvm.frexp.f128.i32(fp128 %a)
+; %result.0 = extractvalue { fp128, i32 } %result, 1
+; ret i32 %result.0
+; }
+
declare { float, i32 } @llvm.frexp.f32.i32(float) #0
declare { <2 x float>, <2 x i32> } @llvm.frexp.v2f32.v2i32(<2 x float>) #0
declare { <4 x float>, <4 x i32> } @llvm.frexp.v4f32.v4i32(<4 x float>) #0
@@ -918,4 +936,6 @@ declare { <2 x double>, <2 x i32> } @llvm.frexp.v2f64.v2i32(<2 x double>) #0
declare { half, i16 } @llvm.frexp.f16.i16(half) #0
declare { <2 x half>, <2 x i16> } @llvm.frexp.v2f16.v2i16(<2 x half>) #0
+declare { fp128, i32 } @llvm.frexp.f128.i32(fp128) #0
+
attributes #0 = { nocallback nofree nosync nounwind speculatable willreturn memory(none) }
More information about the llvm-commits
mailing list