Skip to content

Commit d309091

Browse files
authored
Register missing symbols for f32 to 64 bit integer conversion (#1850)
1 parent 0090d3e commit d309091

2 files changed

Lines changed: 10 additions & 0 deletions

File tree

core/iwasm/aot/aot_intrinsic.c

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,8 @@ static const aot_intrinsic g_intrinsic_mapping[] = {
5858
{ "i32_trunc_f64_u", "aot_intrinsic_f64_to_u32", AOT_INTRINSIC_FLAG_F64_TO_U32 },
5959
{ "i32_trunc_f64_s", "aot_intrinsic_f64_to_i32", AOT_INTRINSIC_FLAG_F64_TO_I32 },
6060
{ "i64_trunc_f64_u", "aot_intrinsic_f64_to_u64", AOT_INTRINSIC_FLAG_F64_TO_U64 },
61+
{ "i64_trunc_f32_s", "aot_intrinsic_f32_to_i64", AOT_INTRINSIC_FLAG_F32_TO_I64 },
62+
{ "i64_trunc_f32_u", "aot_intrinsic_f32_to_u64", AOT_INTRINSIC_FLAG_F32_TO_U64 },
6163
{ "i64_trunc_f64_s", "aot_intrinsic_f64_to_i64", AOT_INTRINSIC_FLAG_F64_TO_I64 },
6264
{ "f32_demote_f64", "aot_intrinsic_f64_to_f32", AOT_INTRINSIC_FLAG_F64_TO_F32 },
6365
{ "f64_promote_f32", "aot_intrinsic_f32_to_f64", AOT_INTRINSIC_FLAG_F32_TO_F64 },
@@ -635,6 +637,12 @@ add_f64_common_intrinsics(AOTCompContext *comp_ctx)
635637
add_intrinsic_capability(comp_ctx, AOT_INTRINSIC_FLAG_F64_FADD);
636638
add_intrinsic_capability(comp_ctx, AOT_INTRINSIC_FLAG_F64_FSUB);
637639
add_intrinsic_capability(comp_ctx, AOT_INTRINSIC_FLAG_F64_FMUL);
640+
add_intrinsic_capability(comp_ctx, AOT_INTRINSIC_FLAG_F64_MIN);
641+
add_intrinsic_capability(comp_ctx, AOT_INTRINSIC_FLAG_F64_MAX);
642+
add_intrinsic_capability(comp_ctx, AOT_INTRINSIC_FLAG_F64_CEIL);
643+
add_intrinsic_capability(comp_ctx, AOT_INTRINSIC_FLAG_F64_FLOOR);
644+
add_intrinsic_capability(comp_ctx, AOT_INTRINSIC_FLAG_F64_TRUNC);
645+
add_intrinsic_capability(comp_ctx, AOT_INTRINSIC_FLAG_F64_RINT);
638646
add_intrinsic_capability(comp_ctx, AOT_INTRINSIC_FLAG_F64_FDIV);
639647
add_intrinsic_capability(comp_ctx, AOT_INTRINSIC_FLAG_F64_SQRT);
640648
add_intrinsic_capability(comp_ctx, AOT_INTRINSIC_FLAG_F64_CMP);

core/iwasm/aot/aot_reloc.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,8 @@ typedef struct {
101101
REG_SYM(aot_intrinsic_f64_to_f32), \
102102
REG_SYM(aot_intrinsic_f32_to_i32), \
103103
REG_SYM(aot_intrinsic_f32_to_u32), \
104+
REG_SYM(aot_intrinsic_f32_to_i64), \
105+
REG_SYM(aot_intrinsic_f32_to_u64), \
104106
REG_SYM(aot_intrinsic_f64_to_i32), \
105107
REG_SYM(aot_intrinsic_f64_to_u32), \
106108
REG_SYM(aot_intrinsic_f64_to_i64), \

0 commit comments

Comments
 (0)