Uh oh!
There was an error while loading. Please reload this page.
test: fix tests on mips - #20377
Conversation
Mips has a different way of handling NaN. This makes sure the tests pass on MIPS as well.
BridgeAR
commented
Apr 27, 2018
| 0x7F, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | ||
| 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x7F | ||
| // Mips processors use a different NaN. | ||
| ])) || buffer.equals(new Uint8Array([ |
There was a problem hiding this comment.
Can we detect running on mips and only assert the alternative value if so?
The performance jit logger is not implemented on mips.
BridgeAR
commented
Apr 28, 2018
Comment addressd. I also added another commit to fix the flag issue. |
| 0x7F, 0xF7, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, | ||
| 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF7, 0x7F | ||
| ]))); | ||
| if (process.arch === 'mips') { |
There was a problem hiding this comment.
According to the docs for process.arch :
The current possible values are:
'arm','arm64','ia32','mips','mipsel','ppc','ppc64','s390','s390x','x32', and'x64'.
so we probably need to be checking for mipsel as well. Maybe mips64el too. Perhaps @kapouer or anyone else with access to mips can check?
There was a problem hiding this comment.
Hm, actually, it seems like we either have to use the first approach or we can just check one byte.
https://sourceware.org/binutils/docs/as/MIPS-NaN-Encodings.html
There was a problem hiding this comment.
If we go back to the first approach, maybe add a comment Allow both quiet and signalling NaNs?
There was a problem hiding this comment.
I have not built nodejs 10 on mipsel yet, but nodejs 8.11 gives the same result as mips on mipsel.
There was a problem hiding this comment.
I check one byte now and the check will then verify if the whole entry is correct and added a comment.
There was a problem hiding this comment.
So now there is no need to be specific about any architecture anymore.
| assert.ok( | ||
| buffer.equals(new Uint8Array( | ||
| [ 0x7F, 0xC0, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x7F ]))); | ||
| } |
There was a problem hiding this comment.
buffer[1] === 0xF7 isn't true for either assert?
Mips has a different way of handling NaN. This makes sure the tests pass on MIPS as well. PR-URL: nodejs#20377 Reviewed-By: Richard Lau <riclau@uk.ibm.com>
The performance jit logger is not implemented on mips. PR-URL: nodejs#20377 Reviewed-By: Richard Lau <riclau@uk.ibm.com>
BridgeAR
commented
May 7, 2018
Mips has a different way of handling NaN. This makes sure the tests pass on MIPS as well. PR-URL: #20377 Reviewed-By: Richard Lau <riclau@uk.ibm.com>
The performance jit logger is not implemented on mips. PR-URL: #20377 Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Mips has a different way of handling NaN. This makes sure the tests pass on MIPS as well. PR-URL: #20377 Reviewed-By: Richard Lau <riclau@uk.ibm.com>
The performance jit logger is not implemented on mips. PR-URL: #20377 Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Mips has a different way of handling NaN. This makes sure the tests pass on MIPS as well. PR-URL: #20377 Reviewed-By: Richard Lau <riclau@uk.ibm.com>
The performance jit logger is not implemented on mips. PR-URL: #20377 Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Mips has a different way of handling NaN. This makes sure the tests
pass on MIPS as well.
This partially fix-es #20336 (the - is there to prevent github to close the issue).
Checklist
make -j4 test(UNIX), orvcbuild test(Windows) passes