mirror of
https://github.com/fluencelabs/wasmer
synced 2024-12-13 06:15:33 +00:00
Add Emscripten globals for Infinity and NaN to fix printf for these values
This commit is contained in:
parent
ae210253b6
commit
de85ab943a
@ -27,19 +27,19 @@ int main() {
|
||||
printf("Width trick: %*d\n", 5, 10);
|
||||
printf("%s %%\n", "A string");
|
||||
printf("Null string: %7s\n", NULL);
|
||||
// printf("Null pointer: %p\n", NULL);
|
||||
// printf("%lf\n", INFINITY);
|
||||
// printf("%lF\n", INFINITY);
|
||||
// printf("%lf\n", -INFINITY);
|
||||
// printf("%lF\n", -INFINITY);
|
||||
// printf("%lf\n", NAN);
|
||||
// printf("%lF\n", NAN);
|
||||
// printf("%10f\n", NAN);
|
||||
// printf("%-10f\n", NAN);
|
||||
// printf("%010.2f\n", NAN);
|
||||
// printf("%-010.2f\n", NAN);
|
||||
// printf("%10.f\n", INFINITY);
|
||||
// printf("%-10.f\n", -INFINITY);
|
||||
// printf("Null pointer: %p\n", NULL);
|
||||
printf("%lf\n", INFINITY);
|
||||
printf("%lF\n", INFINITY);
|
||||
printf("%lf\n", -INFINITY);
|
||||
printf("%lF\n", -INFINITY);
|
||||
printf("%lf\n", NAN);
|
||||
printf("%lF\n", NAN);
|
||||
printf("%10f\n", NAN);
|
||||
printf("%-10f\n", NAN);
|
||||
printf("%010.2f\n", NAN);
|
||||
printf("%-010.2f\n", NAN);
|
||||
printf("%10.f\n", INFINITY);
|
||||
printf("%-10.f\n", -INFINITY);
|
||||
// printf("--rest--\n");
|
||||
// printf("in%%3.5valid\n", 0);
|
||||
// printf("%.f\n", 0.0f);
|
||||
|
@ -15,3 +15,15 @@ Force sign or space: 3.14 -3.14 3.14 -3.14
|
||||
Width trick: 10
|
||||
A string %
|
||||
Null string: (null)
|
||||
inf
|
||||
INF
|
||||
-inf
|
||||
-INF
|
||||
nan
|
||||
NAN
|
||||
nan
|
||||
nan
|
||||
nan
|
||||
nan
|
||||
inf
|
||||
-inf
|
||||
|
Binary file not shown.
@ -91,6 +91,16 @@ pub fn generate_emscripten_env<'a, 'b>() -> ImportObject<&'a str, &'b str> {
|
||||
"DYNAMICTOP_PTR",
|
||||
ImportValue::Global(dynamictop_ptr(STATIC_BUMP) as _),
|
||||
);
|
||||
import_object.set(
|
||||
"global",
|
||||
"Infinity",
|
||||
ImportValue::Global(std::f64::INFINITY.to_bits() as _),
|
||||
);
|
||||
import_object.set(
|
||||
"global",
|
||||
"NaN",
|
||||
ImportValue::Global(std::f64::NAN.to_bits() as _),
|
||||
);
|
||||
import_object.set("env", "tableBase", ImportValue::Global(0));
|
||||
// Print functions
|
||||
import_object.set("env", "printf", ImportValue::Func(io::printf as _));
|
||||
|
Loading…
Reference in New Issue
Block a user