[Wasm/std] Fix invalid sign for FP rem operator

Fixed #KT-64829
This commit is contained in:
Igor Yakovlev
2024-01-22 18:56:02 +01:00
committed by Space Team
parent a15e88ba1e
commit 3e9b2573c5
3 changed files with 9 additions and 3 deletions
@@ -99,7 +99,7 @@ class WasmPrimitivesGenerator(writer: PrintWriter) : BasePrimitivesGenerator(wri
}
}
"rem" -> when (thisKind) {
in PrimitiveType.floatingPoint -> "this - (wasm_${thisKind.prefixLowercase}_truncate(this / $parameterName) * $parameterName)"
in PrimitiveType.floatingPoint -> "wasm_${thisKind.prefixLowercase}_copysign(this - (wasm_${thisKind.prefixLowercase}_truncate(this / $parameterName) * $parameterName), this)"
else -> return implementAsIntrinsic(thisKind, methodName)
}
else -> return implementAsIntrinsic(thisKind, methodName)