Skip to content

Implement a simple NaN propagation scheme that still supports NaN boxing.#716

Merged
flagxor merged 1 commit intomasterfrom
simpler-nan-propagation
Jul 27, 2016
Merged

Implement a simple NaN propagation scheme that still supports NaN boxing.#716
flagxor merged 1 commit intomasterfrom
simpler-nan-propagation

Conversation

@sunfishcode
Copy link
Member

This is an alternative to #713 which is simpler and should support the widest possible range of theoretical hardware while still following IEEE 754 rules and supporting the basic NaN boxing use case, at the cost of having more nondeterminism in the NaN bits.

At most one of these two PRs should be merged.

…ing.

This achieves simplicity by dropping the goal of minimizing nondeterminism
in the resulting NaN bits. In this proposal, NaN bits are as nondeterministic
as they can be, while still supporting IEEE 754 and the basic NaN boxing use
case.
@gahaas
Copy link
Contributor

gahaas commented Jul 21, 2016

I like this PR better than #713.

@flagxor
Copy link
Member

flagxor commented Jul 27, 2016

looks good

@flagxor flagxor merged commit 3e59cb5 into master Jul 27, 2016
@sunfishcode sunfishcode deleted the simpler-nan-propagation branch August 9, 2016 19:49
gahaas added a commit to gahaas/design that referenced this pull request Aug 19, 2016
This PR makes the handling of NaNs in the  promotion/demotion of floats more consistent to the handling of NaNs in arithmetic operations. Similar to WebAssembly#716, this PR requires that canonical NaNs have to be preserved by promotion/demotion. whereas the promotion/demotion of non-canonical NaNs can result in an arbitrary quiet NaN.
gahaas added a commit that referenced this pull request Aug 23, 2016
This PR makes the handling of NaNs in the  promotion/demotion of floats more consistent to the handling of NaNs in arithmetic operations. Similar to #716, this PR requires that canonical NaNs have to be preserved by promotion/demotion, whereas the promotion/demotion of non-canonical NaNs can result in an arbitrary quiet NaN.
gahaas added a commit to gahaas/spec that referenced this pull request Nov 10, 2016
gahaas added a commit to WebAssembly/spec that referenced this pull request Nov 22, 2016
Exact nan-pattern tests got obsolete with WebAssembly/design#716 (#381)
raoxiaojia pushed a commit to WasmCert/spec that referenced this pull request Apr 29, 2025
Exact nan-pattern tests got obsolete with WebAssembly/design#716 (WebAssembly#381)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants