Chen-Pang He

Results 23 comments of Chen-Pang He

I don't take care of what runs wasm code. I just try to make a C library largely in wasm, so a minimal wasm (virtual) machine can run it. One...

Correctly rounded decimal to binary conversion was not planned, but I am taking this as a feature request. I will work on this after finishing its inverse in `vfprintf` because...

For IEEE-754 `double`, - `DBL_DECIMAL_DIG` = 17 - `DBL_DIG` = 15 This means the following are identity conversions: - `double` -> 17 decimal digits -> `double` - 15 decimal digits...

It is almost a rewrite to make it correctly rounded. To avoid double rounding error and to reduce code size, a common strategy is: decimal string -(*round to odd*)-> intermediate...

Setting lowest bit when seeing a nonzero digit out of range is effectively rounding to odd, so it produces correctly rounded results if no scaling by a power of 10...

The plan is to extend `parsedec_` like ```c struct BigFloat { unsigned __int128 significand; int exp; }; struct BigFloat __parsedec( const char s[restrict static 1], char* end[restrict static 1]); ```...

A release will be announced when all functions in C standard which are independent of OS are complete, like `sprintf` and math functions. It is estimated in late 2019 or...

This project is far from complete, so I am not releasing yet. However, you can make `metallic.wasm` with the following commands: ```sh make -j8 llvm-lto metallic.a -o metallic.wasm ```

Both `f32::log` and `f64::log` simply call their `ln` twice and divide. This will introduce another rounding error even if `ln` were correctly rounded. If we want to have a `log`...

I have published metallic, so its docs are publicly available. https://docs.rs/metallic/latest/metallic/index.html For now I have implemented `cbrt`, `exp`, `exp2`, `exp10`, `exp_m1`, `frexp`, `hypot`, `ldexp`, `ln`, `ln_1p`, `log2`, `log10`, `round` for...