[Wasm, stdlib] Change visibility for wasm_* helper functions to internal

This commit is contained in:
Zalim Bashorov
2022-11-14 18:18:06 +01:00
parent 2fc6cea681
commit ab590e1279
2 changed files with 131 additions and 122 deletions
@@ -385,8 +385,9 @@ public class Byte private constructor(public val value: Byte) : Number(), Compar
public override fun equals(other: Any?): Boolean =
other is Byte && wasm_i32_eq(this.toInt(), other.toInt())
public inline fun equals(other: Byte): Boolean =
wasm_i32_eq(this.toInt(), other.toInt())
@WasmOp(WasmOp.I32_EQ)
public fun equals(other: Byte): Boolean =
implementedAsIntrinsic
public override fun toString(): String =
this.toInt().toString()
@@ -782,8 +783,9 @@ public class Short private constructor(public val value: Short) : Number(), Comp
public override fun toDouble(): Double =
wasm_f64_convert_i32_s(this.toInt())
public inline fun equals(other: Short): Boolean =
wasm_i32_eq(this.toInt(), other.toInt())
@WasmOp(WasmOp.I32_EQ)
public fun equals(other: Short): Boolean =
implementedAsIntrinsic
public override fun equals(other: Any?): Boolean =
other is Short && wasm_i32_eq(this.toInt(), other.toInt())
@@ -1216,8 +1218,9 @@ public class Int private constructor(val value: Int) : Number(), Comparable<Int>
public override fun toDouble(): Double =
wasm_f64_convert_i32_s(this)
public inline fun equals(other: Int): Boolean =
wasm_i32_eq(this, other)
@WasmOp(WasmOp.I32_EQ)
public fun equals(other: Int): Boolean =
implementedAsIntrinsic
public override fun equals(other: Any?): Boolean =
other is Int && wasm_i32_eq(this, other)
@@ -1668,8 +1671,9 @@ public class Long private constructor(val value: Long) : Number(), Comparable<Lo
public override fun toDouble(): Double =
wasm_f64_convert_i64_s(this)
public inline fun equals(other: Long): Boolean =
wasm_i64_eq(this, other)
@WasmOp(WasmOp.I64_EQ)
public fun equals(other: Long): Boolean =
implementedAsIntrinsic
public override fun equals(other: Any?): Boolean =
other is Long && wasm_i64_eq(this, other)
@@ -32,348 +32,353 @@ internal fun <T> array_new_data0(address: Int, length: Int): T =
implementedAsIntrinsic
@WasmOp(WasmOp.I32_EQ)
public external fun wasm_i32_eq(a: Int, b: Int): Boolean
internal external fun wasm_i32_eq(a: Int, b: Int): Boolean
@WasmOp(WasmOp.I32_NE)
public external fun wasm_i32_ne(a: Int, b: Int): Boolean
internal external fun wasm_i32_ne(a: Int, b: Int): Boolean
@WasmOp(WasmOp.I32_LT_S)
public external fun wasm_i32_lt_s(a: Int, b: Int): Boolean
internal external fun wasm_i32_lt_s(a: Int, b: Int): Boolean
@WasmOp(WasmOp.I32_LT_U)
public external fun wasm_i32_lt_u(a: Int, b: Int): Boolean
internal external fun wasm_i32_lt_u(a: Int, b: Int): Boolean
@WasmOp(WasmOp.I32_GT_S)
public external fun wasm_i32_gt_s(a: Int, b: Int): Boolean
internal external fun wasm_i32_gt_s(a: Int, b: Int): Boolean
@WasmOp(WasmOp.I32_GT_U)
public external fun wasm_i32_gt_u(a: Int, b: Int): Boolean
internal external fun wasm_i32_gt_u(a: Int, b: Int): Boolean
@WasmOp(WasmOp.I32_LE_S)
public external fun wasm_i32_le_s(a: Int, b: Int): Boolean
internal external fun wasm_i32_le_s(a: Int, b: Int): Boolean
@WasmOp(WasmOp.I32_LE_U)
public external fun wasm_i32_le_u(a: Int, b: Int): Boolean
internal external fun wasm_i32_le_u(a: Int, b: Int): Boolean
@WasmOp(WasmOp.I32_GE_S)
public external fun wasm_i32_ge_s(a: Int, b: Int): Boolean
internal external fun wasm_i32_ge_s(a: Int, b: Int): Boolean
@WasmOp(WasmOp.I32_GE_U)
public external fun wasm_i32_ge_u(a: Int, b: Int): Boolean
internal external fun wasm_i32_ge_u(a: Int, b: Int): Boolean
@WasmOp(WasmOp.I64_EQ)
public external fun wasm_i64_eq(a: Long, b: Long): Boolean
internal external fun wasm_i64_eq(a: Long, b: Long): Boolean
@WasmOp(WasmOp.I64_NE)
public external fun wasm_i64_ne(a: Long, b: Long): Boolean
internal external fun wasm_i64_ne(a: Long, b: Long): Boolean
@WasmOp(WasmOp.I64_LT_S)
public external fun wasm_i64_lt_s(a: Long, b: Long): Boolean
internal external fun wasm_i64_lt_s(a: Long, b: Long): Boolean
@WasmOp(WasmOp.I64_LT_U)
public external fun wasm_i64_lt_u(a: Long, b: Long): Boolean
internal external fun wasm_i64_lt_u(a: Long, b: Long): Boolean
@WasmOp(WasmOp.I64_GT_S)
public external fun wasm_i64_gt_s(a: Long, b: Long): Boolean
internal external fun wasm_i64_gt_s(a: Long, b: Long): Boolean
@WasmOp(WasmOp.I64_GT_U)
public external fun wasm_i64_gt_u(a: Long, b: Long): Boolean
internal external fun wasm_i64_gt_u(a: Long, b: Long): Boolean
@WasmOp(WasmOp.I64_LE_S)
public external fun wasm_i64_le_s(a: Long, b: Long): Boolean
internal external fun wasm_i64_le_s(a: Long, b: Long): Boolean
@WasmOp(WasmOp.I64_LE_U)
public external fun wasm_i64_le_u(a: Long, b: Long): Boolean
internal external fun wasm_i64_le_u(a: Long, b: Long): Boolean
@WasmOp(WasmOp.I64_GE_S)
public external fun wasm_i64_ge_s(a: Long, b: Long): Boolean
internal external fun wasm_i64_ge_s(a: Long, b: Long): Boolean
@WasmOp(WasmOp.I64_GE_U)
public external fun wasm_i64_ge_u(a: Long, b: Long): Boolean
internal external fun wasm_i64_ge_u(a: Long, b: Long): Boolean
@WasmOp(WasmOp.F32_EQ)
public external fun wasm_f32_eq(a: Float, b: Float): Boolean
internal external fun wasm_f32_eq(a: Float, b: Float): Boolean
@WasmOp(WasmOp.F32_NE)
public external fun wasm_f32_ne(a: Float, b: Float): Boolean
internal external fun wasm_f32_ne(a: Float, b: Float): Boolean
@WasmOp(WasmOp.F32_LT)
public external fun wasm_f32_lt(a: Float, b: Float): Boolean
internal external fun wasm_f32_lt(a: Float, b: Float): Boolean
@WasmOp(WasmOp.F32_GT)
public external fun wasm_f32_gt(a: Float, b: Float): Boolean
internal external fun wasm_f32_gt(a: Float, b: Float): Boolean
@WasmOp(WasmOp.F32_LE)
public external fun wasm_f32_le(a: Float, b: Float): Boolean
internal external fun wasm_f32_le(a: Float, b: Float): Boolean
@WasmOp(WasmOp.F32_GE)
public external fun wasm_f32_ge(a: Float, b: Float): Boolean
internal external fun wasm_f32_ge(a: Float, b: Float): Boolean
@WasmOp(WasmOp.F64_EQ)
public external fun wasm_f64_eq(a: Double, b: Double): Boolean
internal external fun wasm_f64_eq(a: Double, b: Double): Boolean
@WasmOp(WasmOp.F64_NE)
public external fun wasm_f64_ne(a: Double, b: Double): Boolean
internal external fun wasm_f64_ne(a: Double, b: Double): Boolean
@WasmOp(WasmOp.F64_LT)
public external fun wasm_f64_lt(a: Double, b: Double): Boolean
internal external fun wasm_f64_lt(a: Double, b: Double): Boolean
@WasmOp(WasmOp.F64_GT)
public external fun wasm_f64_gt(a: Double, b: Double): Boolean
internal external fun wasm_f64_gt(a: Double, b: Double): Boolean
@WasmOp(WasmOp.F64_LE)
public external fun wasm_f64_le(a: Double, b: Double): Boolean
internal external fun wasm_f64_le(a: Double, b: Double): Boolean
@WasmOp(WasmOp.F64_GE)
public external fun wasm_f64_ge(a: Double, b: Double): Boolean
internal external fun wasm_f64_ge(a: Double, b: Double): Boolean
@WasmOp(WasmOp.I32_ADD)
public external fun wasm_i32_add(a: Int, b: Int): Int
internal external fun wasm_i32_add(a: Int, b: Int): Int
@WasmOp(WasmOp.I32_SUB)
public external fun wasm_i32_sub(a: Int, b: Int): Int
internal external fun wasm_i32_sub(a: Int, b: Int): Int
@WasmOp(WasmOp.I32_MUL)
public external fun wasm_i32_mul(a: Int, b: Int): Int
internal external fun wasm_i32_mul(a: Int, b: Int): Int
@WasmOp(WasmOp.I32_DIV_S)
public external fun wasm_i32_div_s(a: Int, b: Int): Int
internal external fun wasm_i32_div_s(a: Int, b: Int): Int
@WasmOp(WasmOp.I32_DIV_U)
public external fun wasm_i32_div_u(a: Int, b: Int): Int
internal external fun wasm_i32_div_u(a: Int, b: Int): Int
@WasmOp(WasmOp.I32_REM_S)
public external fun wasm_i32_rem_s(a: Int, b: Int): Int
internal external fun wasm_i32_rem_s(a: Int, b: Int): Int
@WasmOp(WasmOp.I32_REM_U)
public external fun wasm_i32_rem_u(a: Int, b: Int): Int
internal external fun wasm_i32_rem_u(a: Int, b: Int): Int
@WasmOp(WasmOp.I32_AND)
public external fun wasm_i32_and(a: Int, b: Int): Int
internal external fun wasm_i32_and(a: Int, b: Int): Int
@WasmOp(WasmOp.I32_OR)
public external fun wasm_i32_or(a: Int, b: Int): Int
internal external fun wasm_i32_or(a: Int, b: Int): Int
@WasmOp(WasmOp.I32_XOR)
public external fun wasm_i32_xor(a: Int, b: Int): Int
internal external fun wasm_i32_xor(a: Int, b: Int): Int
@WasmOp(WasmOp.I32_SHL)
public external fun wasm_i32_shl(a: Int, b: Int): Int
internal external fun wasm_i32_shl(a: Int, b: Int): Int
@WasmOp(WasmOp.I32_SHR_S)
public external fun wasm_i32_shr_s(a: Int, b: Int): Int
internal external fun wasm_i32_shr_s(a: Int, b: Int): Int
@WasmOp(WasmOp.I32_SHR_U)
public external fun wasm_i32_shr_u(a: Int, b: Int): Int
internal external fun wasm_i32_shr_u(a: Int, b: Int): Int
@WasmOp(WasmOp.I32_ROTL)
public external fun wasm_i32_rotl(a: Int, b: Int): Int
internal external fun wasm_i32_rotl(a: Int, b: Int): Int
@WasmOp(WasmOp.I32_ROTR)
public external fun wasm_i32_rotr(a: Int, b: Int): Int
internal external fun wasm_i32_rotr(a: Int, b: Int): Int
@WasmOp(WasmOp.I64_ADD)
public external fun wasm_i64_add(a: Long, b: Long): Long
internal external fun wasm_i64_add(a: Long, b: Long): Long
@WasmOp(WasmOp.I64_SUB)
public external fun wasm_i64_sub(a: Long, b: Long): Long
internal external fun wasm_i64_sub(a: Long, b: Long): Long
@WasmOp(WasmOp.I64_MUL)
public external fun wasm_i64_mul(a: Long, b: Long): Long
internal external fun wasm_i64_mul(a: Long, b: Long): Long
@WasmOp(WasmOp.I64_DIV_S)
public external fun wasm_i64_div_s(a: Long, b: Long): Long
internal external fun wasm_i64_div_s(a: Long, b: Long): Long
@WasmOp(WasmOp.I64_DIV_U)
public external fun wasm_i64_div_u(a: Long, b: Long): Long
internal external fun wasm_i64_div_u(a: Long, b: Long): Long
@WasmOp(WasmOp.I64_REM_S)
public external fun wasm_i64_rem_s(a: Long, b: Long): Long
internal external fun wasm_i64_rem_s(a: Long, b: Long): Long
@WasmOp(WasmOp.I64_REM_U)
public external fun wasm_i64_rem_u(a: Long, b: Long): Long
internal external fun wasm_i64_rem_u(a: Long, b: Long): Long
@WasmOp(WasmOp.I64_AND)
public external fun wasm_i64_and(a: Long, b: Long): Long
internal external fun wasm_i64_and(a: Long, b: Long): Long
@WasmOp(WasmOp.I64_OR)
public external fun wasm_i64_or(a: Long, b: Long): Long
internal external fun wasm_i64_or(a: Long, b: Long): Long
@WasmOp(WasmOp.I64_XOR)
public external fun wasm_i64_xor(a: Long, b: Long): Long
internal external fun wasm_i64_xor(a: Long, b: Long): Long
@PublishedApi
@WasmOp(WasmOp.I64_SHL)
public external fun wasm_i64_shl(a: Long, b: Long): Long
internal external fun wasm_i64_shl(a: Long, b: Long): Long
@PublishedApi
@WasmOp(WasmOp.I64_SHR_S)
public external fun wasm_i64_shr_s(a: Long, b: Long): Long
internal external fun wasm_i64_shr_s(a: Long, b: Long): Long
@PublishedApi
@WasmOp(WasmOp.I64_SHR_U)
public external fun wasm_i64_shr_u(a: Long, b: Long): Long
internal external fun wasm_i64_shr_u(a: Long, b: Long): Long
@WasmOp(WasmOp.I64_ROTL)
public external fun wasm_i64_rotl(a: Long, b: Long): Long
internal external fun wasm_i64_rotl(a: Long, b: Long): Long
@WasmOp(WasmOp.I64_ROTR)
public external fun wasm_i64_rotr(a: Long, b: Long): Long
internal external fun wasm_i64_rotr(a: Long, b: Long): Long
@WasmOp(WasmOp.F32_ADD)
public external fun wasm_f32_add(a: Float, b: Float): Float
internal external fun wasm_f32_add(a: Float, b: Float): Float
@WasmOp(WasmOp.F32_SUB)
public external fun wasm_f32_sub(a: Float, b: Float): Float
internal external fun wasm_f32_sub(a: Float, b: Float): Float
@WasmOp(WasmOp.F32_MUL)
public external fun wasm_f32_mul(a: Float, b: Float): Float
internal external fun wasm_f32_mul(a: Float, b: Float): Float
@WasmOp(WasmOp.F32_DIV)
public external fun wasm_f32_div(a: Float, b: Float): Float
internal external fun wasm_f32_div(a: Float, b: Float): Float
@WasmOp(WasmOp.F32_MIN)
public external fun wasm_f32_min(a: Float, b: Float): Float
internal external fun wasm_f32_min(a: Float, b: Float): Float
@WasmOp(WasmOp.F32_MAX)
public external fun wasm_f32_max(a: Float, b: Float): Float
internal external fun wasm_f32_max(a: Float, b: Float): Float
@WasmOp(WasmOp.F32_COPYSIGN)
public external fun wasm_f32_copysign(a: Float, b: Float): Float
internal external fun wasm_f32_copysign(a: Float, b: Float): Float
@WasmOp(WasmOp.F64_ADD)
public external fun wasm_f64_add(a: Double, b: Double): Double
internal external fun wasm_f64_add(a: Double, b: Double): Double
@WasmOp(WasmOp.F64_SUB)
public external fun wasm_f64_sub(a: Double, b: Double): Double
internal external fun wasm_f64_sub(a: Double, b: Double): Double
@WasmOp(WasmOp.F64_MUL)
public external fun wasm_f64_mul(a: Double, b: Double): Double
internal external fun wasm_f64_mul(a: Double, b: Double): Double
@WasmOp(WasmOp.F64_DIV)
public external fun wasm_f64_div(a: Double, b: Double): Double
internal external fun wasm_f64_div(a: Double, b: Double): Double
@WasmOp(WasmOp.F64_MIN)
public external fun wasm_f64_min(a: Double, b: Double): Double
internal external fun wasm_f64_min(a: Double, b: Double): Double
@WasmOp(WasmOp.F64_MAX)
public external fun wasm_f64_max(a: Double, b: Double): Double
internal external fun wasm_f64_max(a: Double, b: Double): Double
@WasmOp(WasmOp.F64_SQRT)
public external fun wasm_f64_sqrt(a: Double): Double
internal external fun wasm_f64_sqrt(a: Double): Double
@WasmOp(WasmOp.F64_CEIL)
public external fun wasm_f64_ceil(a: Double): Double
internal external fun wasm_f64_ceil(a: Double): Double
@WasmOp(WasmOp.F64_FLOOR)
public external fun wasm_f64_floor(a: Double): Double
internal external fun wasm_f64_floor(a: Double): Double
@WasmOp(WasmOp.F64_TRUNC)
public external fun wasm_f64_truncate(a: Double): Double
internal external fun wasm_f64_truncate(a: Double): Double
@WasmOp(WasmOp.F64_COPYSIGN)
public external fun wasm_f64_copysign(a: Double, b: Double): Double
internal external fun wasm_f64_copysign(a: Double, b: Double): Double
@WasmOp(WasmOp.F64_ABS)
public external fun wasm_f64_abs(a: Double): Double
internal external fun wasm_f64_abs(a: Double): Double
@WasmOp(WasmOp.F32_SQRT)
public external fun wasm_f32_sqrt(a: Float): Float
internal external fun wasm_f32_sqrt(a: Float): Float
@WasmOp(WasmOp.F32_CEIL)
public external fun wasm_f32_ceil(a: Float): Float
internal external fun wasm_f32_ceil(a: Float): Float
@WasmOp(WasmOp.F32_FLOOR)
public external fun wasm_f32_floor(a: Float): Float
internal external fun wasm_f32_floor(a: Float): Float
@WasmOp(WasmOp.F32_TRUNC)
public external fun wasm_f32_truncate(a: Float): Float
internal external fun wasm_f32_truncate(a: Float): Float
@WasmOp(WasmOp.F32_ABS)
public external fun wasm_f32_abs(a: Float): Float
internal external fun wasm_f32_abs(a: Float): Float
@WasmOp(WasmOp.REF_IS_NULL)
public external fun wasm_ref_is_null(a: Any?): Boolean
internal external fun wasm_ref_is_null(a: Any?): Boolean
@WasmOp(WasmOp.REF_EQ)
public external fun wasm_ref_eq(a: Any?, b: Any?): Boolean
internal external fun wasm_ref_eq(a: Any?, b: Any?): Boolean
// ---
@WasmOp(WasmOp.F32_NEAREST)
public external fun wasm_f32_nearest(a: Float): Float
internal external fun wasm_f32_nearest(a: Float): Float
@WasmOp(WasmOp.F64_NEAREST)
public external fun wasm_f64_nearest(a: Double): Double
internal external fun wasm_f64_nearest(a: Double): Double
@WasmOp(WasmOp.I32_WRAP_I64)
public external fun wasm_i32_wrap_i64(a: Long): Int
internal external fun wasm_i32_wrap_i64(a: Long): Int
@WasmOp(WasmOp.I64_EXTEND_I32_S)
public external fun wasm_i64_extend_i32_s(a: Int): Long
internal external fun wasm_i64_extend_i32_s(a: Int): Long
@WasmOp(WasmOp.F32_CONVERT_I32_S)
public external fun wasm_f32_convert_i32_s(a: Int): Float
internal external fun wasm_f32_convert_i32_s(a: Int): Float
@WasmOp(WasmOp.F32_CONVERT_I64_S)
public external fun wasm_f32_convert_i64_s(a: Long): Float
internal external fun wasm_f32_convert_i64_s(a: Long): Float
@WasmOp(WasmOp.F32_DEMOTE_F64)
public external fun wasm_f32_demote_f64(a: Double): Float
internal external fun wasm_f32_demote_f64(a: Double): Float
@WasmOp(WasmOp.F64_CONVERT_I32_S)
public external fun wasm_f64_convert_i32_s(a: Int): Double
internal external fun wasm_f64_convert_i32_s(a: Int): Double
@WasmOp(WasmOp.F64_CONVERT_I64_S)
public external fun wasm_f64_convert_i64_s(a: Long): Double
internal external fun wasm_f64_convert_i64_s(a: Long): Double
@WasmOp(WasmOp.F64_PROMOTE_F32)
public external fun wasm_f64_promote_f32(a: Float): Double
internal external fun wasm_f64_promote_f32(a: Float): Double
@WasmOp(WasmOp.F32_REINTERPRET_I32)
public external fun wasm_f32_reinterpret_i32(a: Int): Float
internal external fun wasm_f32_reinterpret_i32(a: Int): Float
@WasmOp(WasmOp.F64_REINTERPRET_I64)
public external fun wasm_f64_reinterpret_i64(a: Long): Double
internal external fun wasm_f64_reinterpret_i64(a: Long): Double
@WasmOp(WasmOp.I32_REINTERPRET_F32)
public external fun wasm_i32_reinterpret_f32(a: Float): Int
internal external fun wasm_i32_reinterpret_f32(a: Float): Int
@WasmOp(WasmOp.I64_REINTERPRET_F64)
public external fun wasm_i64_reinterpret_f64(a: Double): Long
internal external fun wasm_i64_reinterpret_f64(a: Double): Long
@WasmOp(WasmOp.I32_TRUNC_SAT_F32_S)
public external fun wasm_i32_trunc_sat_f32_s(a: Float): Int
internal external fun wasm_i32_trunc_sat_f32_s(a: Float): Int
@WasmOp(WasmOp.I32_TRUNC_SAT_F64_S)
public external fun wasm_i32_trunc_sat_f64_s(a: Double): Int
internal external fun wasm_i32_trunc_sat_f64_s(a: Double): Int
@WasmOp(WasmOp.I64_TRUNC_SAT_F32_S)
public external fun wasm_i64_trunc_sat_f32_s(a: Float): Long
internal external fun wasm_i64_trunc_sat_f32_s(a: Float): Long
@WasmOp(WasmOp.I64_TRUNC_SAT_F64_S)
public external fun wasm_i64_trunc_sat_f64_s(a: Double): Long
internal external fun wasm_i64_trunc_sat_f64_s(a: Double): Long
@WasmOp(WasmOp.I32_LOAD)
public external fun wasm_i32_load(x: Int): Int
internal external fun wasm_i32_load(x: Int): Int
@WasmOp(WasmOp.I32_LOAD16_U)
public external fun wasm_i32_load16_u(x: Int): Int
internal external fun wasm_i32_load16_u(x: Int): Int
@WasmOp(WasmOp.I32_STORE)
public external fun wasm_i32_store(addr: Int, i: Int): Unit
internal external fun wasm_i32_store(addr: Int, i: Int): Unit
@WasmOp(WasmOp.I32_STORE16)
public external fun wasm_i32_store16(addr: Int, c: Char): Unit
internal external fun wasm_i32_store16(addr: Int, c: Char): Unit
@WasmOp(WasmOp.I32_CLZ)
public external fun wasm_i32_clz(a: Int): Int
internal external fun wasm_i32_clz(a: Int): Int
@WasmOp(WasmOp.I64_CLZ)
public external fun wasm_i64_clz(a: Long): Long
internal external fun wasm_i64_clz(a: Long): Long
@PublishedApi
@WasmOp(WasmOp.I64_POPCNT)
public external fun wasm_i64_popcnt(a: Long): Long
internal external fun wasm_i64_popcnt(a: Long): Long
@PublishedApi
@WasmOp(WasmOp.I64_CTZ)
public external fun wasm_i64_ctz(a: Long): Long
internal external fun wasm_i64_ctz(a: Long): Long
// Reference type operators