CVT_INTRINSIC_CHECK(jit_long_to_int_ovf, long, int),
CVT_INTRINSIC_CHECK(jit_ulong_to_long_ovf, ulong, long),
CVT_INTRINSIC_CHECK(jit_long_to_ulong_ovf, long, ulong),
+ CVT_INTRINSIC(jit_float32_to_int, float32, int),
+ CVT_INTRINSIC(jit_float32_to_uint, float32, uint),
+ CVT_INTRINSIC(jit_float32_to_long, float32, long),
+ CVT_INTRINSIC(jit_float32_to_ulong, float32, ulong),
+ CVT_INTRINSIC_CHECK(jit_float32_to_int_ovf, float32, int),
+ CVT_INTRINSIC_CHECK(jit_float32_to_uint_ovf, float32, uint),
+ CVT_INTRINSIC_CHECK(jit_float32_to_long_ovf, float32, long),
+ CVT_INTRINSIC_CHECK(jit_float32_to_ulong_ovf, float32, ulong),
+ CVT_INTRINSIC(jit_int_to_float32, int, float32),
+ CVT_INTRINSIC(jit_uint_to_float32, uint, float32),
+ CVT_INTRINSIC(jit_long_to_float32, long, float32),
+ CVT_INTRINSIC(jit_ulong_to_float32, ulong, float32),
+ CVT_INTRINSIC(jit_float32_to_float64, float32, float64),
+ CVT_INTRINSIC(jit_float64_to_int, float64, int),
+ CVT_INTRINSIC(jit_float64_to_uint, float64, uint),
+ CVT_INTRINSIC(jit_float64_to_long, float64, long),
+ CVT_INTRINSIC(jit_float64_to_ulong, float64, ulong),
+ CVT_INTRINSIC_CHECK(jit_float64_to_int_ovf, float64, int),
+ CVT_INTRINSIC_CHECK(jit_float64_to_uint_ovf, float64, uint),
+ CVT_INTRINSIC_CHECK(jit_float64_to_long_ovf, float64, long),
+ CVT_INTRINSIC_CHECK(jit_float64_to_ulong_ovf, float64, ulong),
+ CVT_INTRINSIC(jit_int_to_float64, int, float64),
+ CVT_INTRINSIC(jit_uint_to_float64, uint, float64),
+ CVT_INTRINSIC(jit_long_to_float64, long, float64),
+ CVT_INTRINSIC(jit_ulong_to_float64, ulong, float64),
+ CVT_INTRINSIC(jit_float64_to_float32, float64, float32),
CVT_INTRINSIC(jit_nfloat_to_int, nfloat, int),
CVT_INTRINSIC(jit_nfloat_to_uint, nfloat, uint),
CVT_INTRINSIC(jit_nfloat_to_long, nfloat, long),
CVT(JIT_OP_CHECK_INT, int),
CVT(JIT_OP_CHECK_SBYTE, sbyte)},
/* from 32-bit float */
- {CVT(JIT_OP_FLOAT32_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_INT, int),
- CVT(JIT_OP_TRUNC_SBYTE, sbyte)},
- {CVT(JIT_OP_FLOAT32_TO_NFLOAT, nfloat),
- CVT(JIT_OP_CHECK_NFLOAT_TO_INT, int),
- CVT(JIT_OP_CHECK_SBYTE, sbyte)},
+ {CVT(JIT_OP_FLOAT32_TO_INT, int),
+ CVT(JIT_OP_TRUNC_SBYTE, sbyte),
+ CVT_NONE},
+ {CVT(JIT_OP_CHECK_FLOAT32_TO_INT, int),
+ CVT(JIT_OP_CHECK_SBYTE, sbyte),
+ CVT_NONE},
/* from 64-bit float */
- {CVT(JIT_OP_FLOAT64_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_INT, int),
- CVT(JIT_OP_TRUNC_SBYTE, sbyte)},
- {CVT(JIT_OP_FLOAT64_TO_NFLOAT, nfloat),
- CVT(JIT_OP_CHECK_NFLOAT_TO_INT, int),
- CVT(JIT_OP_CHECK_SBYTE, sbyte)},
+ {CVT(JIT_OP_FLOAT64_TO_INT, int),
+ CVT(JIT_OP_TRUNC_SBYTE, sbyte),
+ CVT_NONE},
+ {CVT(JIT_OP_CHECK_FLOAT64_TO_INT, int),
+ CVT(JIT_OP_CHECK_SBYTE, sbyte),
+ CVT_NONE},
/* from native float */
{CVT(JIT_OP_NFLOAT_TO_INT, int),
CVT(JIT_OP_TRUNC_SBYTE, sbyte),
CVT(JIT_OP_CHECK_UBYTE, ubyte),
CVT_NONE},
/* from 32-bit float */
- {CVT(JIT_OP_FLOAT32_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_INT, int),
- CVT(JIT_OP_TRUNC_UBYTE, ubyte)},
- {CVT(JIT_OP_FLOAT32_TO_NFLOAT, nfloat),
- CVT(JIT_OP_CHECK_NFLOAT_TO_INT, int),
- CVT(JIT_OP_CHECK_UBYTE, ubyte)},
+ {CVT(JIT_OP_FLOAT32_TO_INT, int),
+ CVT(JIT_OP_TRUNC_UBYTE, ubyte),
+ CVT_NONE},
+ {CVT(JIT_OP_CHECK_FLOAT32_TO_INT, int),
+ CVT(JIT_OP_CHECK_UBYTE, ubyte),
+ CVT_NONE},
/* from 64-bit float */
- {CVT(JIT_OP_FLOAT64_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_INT, int),
- CVT(JIT_OP_TRUNC_UBYTE, ubyte)},
- {CVT(JIT_OP_FLOAT64_TO_NFLOAT, nfloat),
- CVT(JIT_OP_CHECK_NFLOAT_TO_INT, int),
- CVT(JIT_OP_CHECK_UBYTE, ubyte)},
+ {CVT(JIT_OP_FLOAT64_TO_INT, int),
+ CVT(JIT_OP_TRUNC_UBYTE, ubyte),
+ CVT_NONE},
+ {CVT(JIT_OP_CHECK_FLOAT64_TO_INT, int),
+ CVT(JIT_OP_CHECK_UBYTE, ubyte),
+ CVT_NONE},
/* from native float */
{CVT(JIT_OP_NFLOAT_TO_INT, int),
CVT(JIT_OP_TRUNC_UBYTE, ubyte),
CVT(JIT_OP_CHECK_INT, int),
CVT(JIT_OP_CHECK_SHORT, short)},
/* from 32-bit float */
- {CVT(JIT_OP_FLOAT32_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_INT, int),
- CVT(JIT_OP_TRUNC_SHORT, short)},
- {CVT(JIT_OP_FLOAT32_TO_NFLOAT, nfloat),
- CVT(JIT_OP_CHECK_NFLOAT_TO_INT, int),
- CVT(JIT_OP_CHECK_SHORT, short)},
+ {CVT(JIT_OP_FLOAT32_TO_INT, int),
+ CVT(JIT_OP_TRUNC_SHORT, short),
+ CVT_NONE},
+ {CVT(JIT_OP_CHECK_FLOAT32_TO_INT, int),
+ CVT(JIT_OP_CHECK_SHORT, short),
+ CVT_NONE},
/* from 64-bit float */
- {CVT(JIT_OP_FLOAT64_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_INT, int),
- CVT(JIT_OP_TRUNC_SHORT, short)},
- {CVT(JIT_OP_FLOAT64_TO_NFLOAT, nfloat),
- CVT(JIT_OP_CHECK_NFLOAT_TO_INT, int),
- CVT(JIT_OP_CHECK_SHORT, short)},
+ {CVT(JIT_OP_FLOAT64_TO_INT, int),
+ CVT(JIT_OP_TRUNC_SHORT, short),
+ CVT_NONE},
+ {CVT(JIT_OP_CHECK_FLOAT64_TO_INT, int),
+ CVT(JIT_OP_CHECK_SHORT, short),
+ CVT_NONE},
/* from native float */
{CVT(JIT_OP_NFLOAT_TO_INT, int),
CVT(JIT_OP_TRUNC_SHORT, short),
CVT(JIT_OP_CHECK_USHORT, ushort),
CVT_NONE},
/* from 32-bit float */
- {CVT(JIT_OP_FLOAT32_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_INT, int),
- CVT(JIT_OP_TRUNC_USHORT, ushort)},
- {CVT(JIT_OP_FLOAT32_TO_NFLOAT, nfloat),
- CVT(JIT_OP_CHECK_NFLOAT_TO_INT, int),
- CVT(JIT_OP_CHECK_USHORT, ushort)},
+ {CVT(JIT_OP_FLOAT32_TO_INT, int),
+ CVT(JIT_OP_TRUNC_USHORT, ushort),
+ CVT_NONE},
+ {CVT(JIT_OP_CHECK_FLOAT32_TO_INT, int),
+ CVT(JIT_OP_CHECK_USHORT, ushort),
+ CVT_NONE},
/* from 64-bit float */
- {CVT(JIT_OP_FLOAT64_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_INT, int),
- CVT(JIT_OP_TRUNC_USHORT, ushort)},
- {CVT(JIT_OP_FLOAT64_TO_NFLOAT, nfloat),
- CVT(JIT_OP_CHECK_NFLOAT_TO_INT, int),
- CVT(JIT_OP_CHECK_USHORT, ushort)},
+ {CVT(JIT_OP_FLOAT64_TO_INT, int),
+ CVT(JIT_OP_TRUNC_USHORT, ushort),
+ CVT_NONE},
+ {CVT(JIT_OP_CHECK_FLOAT64_TO_INT, int),
+ CVT(JIT_OP_CHECK_USHORT, ushort),
+ CVT_NONE},
/* from native float */
{CVT(JIT_OP_NFLOAT_TO_INT, int),
CVT(JIT_OP_TRUNC_USHORT, ushort),
CVT(JIT_OP_CHECK_INT, int),
CVT_NONE},
/* from 32-bit float */
- {CVT(JIT_OP_FLOAT32_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_INT, int),
+ {CVT(JIT_OP_FLOAT32_TO_INT, int),
+ CVT_NONE,
CVT_NONE},
- {CVT(JIT_OP_FLOAT32_TO_NFLOAT, nfloat),
- CVT(JIT_OP_CHECK_NFLOAT_TO_INT, int),
+ {CVT(JIT_OP_CHECK_FLOAT32_TO_INT, int),
+ CVT_NONE,
CVT_NONE},
/* from 64-bit float */
- {CVT(JIT_OP_FLOAT64_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_INT, int),
+ {CVT(JIT_OP_FLOAT64_TO_INT, int),
+ CVT_NONE,
CVT_NONE},
- {CVT(JIT_OP_FLOAT64_TO_NFLOAT, nfloat),
- CVT(JIT_OP_CHECK_NFLOAT_TO_INT, int),
+ {CVT(JIT_OP_CHECK_FLOAT64_TO_INT, int),
+ CVT_NONE,
CVT_NONE},
/* from native float */
{CVT(JIT_OP_NFLOAT_TO_INT, int),
CVT_NONE,
CVT_NONE},
/* from 32-bit float */
- {CVT(JIT_OP_FLOAT32_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_UINT, uint),
+ {CVT(JIT_OP_FLOAT32_TO_UINT, uint),
+ CVT_NONE,
CVT_NONE},
- {CVT(JIT_OP_FLOAT32_TO_NFLOAT, nfloat),
- CVT(JIT_OP_CHECK_NFLOAT_TO_UINT, uint),
+ {CVT(JIT_OP_CHECK_FLOAT32_TO_UINT, uint),
+ CVT_NONE,
CVT_NONE},
/* from 64-bit float */
- {CVT(JIT_OP_FLOAT64_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_UINT, uint),
+ {CVT(JIT_OP_FLOAT64_TO_UINT, uint),
+ CVT_NONE,
CVT_NONE},
- {CVT(JIT_OP_FLOAT64_TO_NFLOAT, nfloat),
- CVT(JIT_OP_CHECK_NFLOAT_TO_UINT, uint),
+ {CVT(JIT_OP_CHECK_FLOAT64_TO_UINT, uint),
+ CVT_NONE,
CVT_NONE},
/* from native float */
{CVT(JIT_OP_NFLOAT_TO_UINT, uint),
CVT_NONE,
CVT_NONE},
/* from 32-bit float */
- {CVT(JIT_OP_FLOAT32_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_LONG, long),
+ {CVT(JIT_OP_FLOAT32_TO_LONG, long),
+ CVT_NONE,
CVT_NONE},
- {CVT(JIT_OP_FLOAT32_TO_NFLOAT, nfloat),
- CVT(JIT_OP_CHECK_NFLOAT_TO_LONG, long),
+ {CVT(JIT_OP_CHECK_FLOAT32_TO_LONG, long),
+ CVT_NONE,
CVT_NONE},
/* from 64-bit float */
- {CVT(JIT_OP_FLOAT64_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_LONG, long),
+ {CVT(JIT_OP_FLOAT64_TO_LONG, long),
+ CVT_NONE,
CVT_NONE},
- {CVT(JIT_OP_FLOAT64_TO_NFLOAT, nfloat),
- CVT(JIT_OP_CHECK_NFLOAT_TO_LONG, long),
+ {CVT(JIT_OP_CHECK_FLOAT64_TO_LONG, long),
+ CVT_NONE,
CVT_NONE},
/* from native float */
{CVT(JIT_OP_NFLOAT_TO_LONG, long),
CVT_NONE,
CVT_NONE},
/* from 32-bit float */
- {CVT(JIT_OP_FLOAT32_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_ULONG, ulong),
+ {CVT(JIT_OP_FLOAT32_TO_ULONG, ulong),
+ CVT_NONE,
CVT_NONE},
- {CVT(JIT_OP_FLOAT32_TO_NFLOAT, nfloat),
- CVT(JIT_OP_CHECK_NFLOAT_TO_ULONG, ulong),
+ {CVT(JIT_OP_CHECK_FLOAT32_TO_ULONG, ulong),
+ CVT_NONE,
CVT_NONE},
/* from 64-bit float */
- {CVT(JIT_OP_FLOAT64_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_ULONG, ulong),
+ {CVT(JIT_OP_FLOAT64_TO_ULONG, ulong),
+ CVT_NONE,
CVT_NONE},
- {CVT(JIT_OP_FLOAT64_TO_NFLOAT, nfloat),
- CVT(JIT_OP_CHECK_NFLOAT_TO_ULONG, ulong),
+ {CVT(JIT_OP_CHECK_FLOAT64_TO_ULONG, ulong),
+ CVT_NONE,
CVT_NONE},
/* from native float */
{CVT(JIT_OP_NFLOAT_TO_ULONG, ulong),
/* from signed byte */
/* from signed short */
/* from signed int */
- {CVT(JIT_OP_INT_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_FLOAT32, float32),
+ {CVT(JIT_OP_INT_TO_FLOAT32, float32),
+ CVT_NONE,
CVT_NONE},
- {CVT(JIT_OP_INT_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_FLOAT32, float32),
+ {CVT(JIT_OP_INT_TO_FLOAT32, float32),
+ CVT_NONE,
CVT_NONE},
/* from unsigned byte */
/* from unsigned short */
/* from unsigned int */
- {CVT(JIT_OP_UINT_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_FLOAT32, float32),
+ {CVT(JIT_OP_UINT_TO_FLOAT32, float32),
+ CVT_NONE,
CVT_NONE},
- {CVT(JIT_OP_UINT_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_FLOAT32, float32),
+ {CVT(JIT_OP_UINT_TO_FLOAT32, float32),
+ CVT_NONE,
CVT_NONE},
/* from signed long */
- {CVT(JIT_OP_LONG_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_FLOAT32, float32),
+ {CVT(JIT_OP_LONG_TO_FLOAT32, float32),
+ CVT_NONE,
CVT_NONE},
- {CVT(JIT_OP_LONG_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_FLOAT32, float32),
+ {CVT(JIT_OP_LONG_TO_FLOAT32, float32),
+ CVT_NONE,
CVT_NONE},
/* from unsigned long */
- {CVT(JIT_OP_ULONG_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_FLOAT32, float32),
+ {CVT(JIT_OP_ULONG_TO_FLOAT32, float32),
+ CVT_NONE,
CVT_NONE},
- {CVT(JIT_OP_ULONG_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_FLOAT32, float32),
+ {CVT(JIT_OP_ULONG_TO_FLOAT32, float32),
+ CVT_NONE,
CVT_NONE},
/* from 32-bit float */
{CVT(JIT_OP_COPY_FLOAT32, float32),
CVT_NONE,
CVT_NONE},
/* from 64-bit float */
- {CVT(JIT_OP_FLOAT64_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_FLOAT32, float32),
+ {CVT(JIT_OP_FLOAT64_TO_FLOAT32, float32),
+ CVT_NONE,
CVT_NONE},
- {CVT(JIT_OP_FLOAT64_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_FLOAT32, float32),
+ {CVT(JIT_OP_FLOAT64_TO_FLOAT32, float32),
+ CVT_NONE,
CVT_NONE},
/* from native float */
{CVT(JIT_OP_NFLOAT_TO_FLOAT32, float32),
/* from signed byte */
/* from signed short */
/* from signed int */
- {CVT(JIT_OP_INT_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_FLOAT64, float64),
+ {CVT(JIT_OP_INT_TO_FLOAT64, float64),
+ CVT_NONE,
CVT_NONE},
- {CVT(JIT_OP_INT_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_FLOAT64, float64),
+ {CVT(JIT_OP_INT_TO_FLOAT64, float64),
+ CVT_NONE,
CVT_NONE},
/* from unsigned byte */
/* from unsigned short */
/* from unsigned int */
- {CVT(JIT_OP_UINT_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_FLOAT64, float64),
+ {CVT(JIT_OP_UINT_TO_FLOAT64, float64),
+ CVT_NONE,
CVT_NONE},
- {CVT(JIT_OP_UINT_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_FLOAT64, float64),
+ {CVT(JIT_OP_UINT_TO_FLOAT64, float64),
+ CVT_NONE,
CVT_NONE},
/* from signed long */
- {CVT(JIT_OP_LONG_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_FLOAT64, float64),
+ {CVT(JIT_OP_LONG_TO_FLOAT64, float64),
+ CVT_NONE,
CVT_NONE},
- {CVT(JIT_OP_LONG_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_FLOAT64, float64),
+ {CVT(JIT_OP_LONG_TO_FLOAT64, float64),
+ CVT_NONE,
CVT_NONE},
/* from unsigned long */
- {CVT(JIT_OP_ULONG_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_FLOAT64, float64),
+ {CVT(JIT_OP_ULONG_TO_FLOAT64, float64),
+ CVT_NONE,
CVT_NONE},
- {CVT(JIT_OP_ULONG_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_FLOAT64, float64),
+ {CVT(JIT_OP_ULONG_TO_FLOAT64, float64),
+ CVT_NONE,
CVT_NONE},
/* from 32-bit float */
- {CVT(JIT_OP_FLOAT32_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_FLOAT64, float64),
+ {CVT(JIT_OP_FLOAT32_TO_FLOAT64, float64),
+ CVT_NONE,
CVT_NONE},
- {CVT(JIT_OP_FLOAT32_TO_NFLOAT, nfloat),
- CVT(JIT_OP_NFLOAT_TO_FLOAT64, float64),
+ {CVT(JIT_OP_FLOAT32_TO_FLOAT64, float64),
+ CVT_NONE,
CVT_NONE},
/* from 64-bit float */
{CVT(JIT_OP_COPY_FLOAT64, float64),