Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(222)

Issue 2652553003: Access double fields in C++ as uint64_t fields to preserve signaling bit of a NaN. (Closed)

Created:
3 years, 11 months ago by Igor Sheludko
Modified:
3 years, 11 months ago
CC:
v8-reviews_googlegroups.com, Hannes Payer (out of office), ulan
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

Access double fields in C++ as uint64_t fields to preserve signaling bit of a NaN. Manipulating the signaling NaN used for the hole and uninitialized double field sentinel in C++, e.g. with bit_cast or HeapNumber::value()/set_value(), will change its value on ia32 (the x87 stack is used to return values and stores to the stack silently clear the signalling bit). BUG=v8:5495 Review-Url: https://codereview.chromium.org/2652553003 Cr-Commit-Position: refs/heads/master@{#42609} Committed: https://chromium.googlesource.com/v8/v8/+/f9f5fc31fdea4ded8287d6bc8ee36e147b6412d4

Patch Set 1 #

Total comments: 2

Patch Set 2 : Addressing comments #

Patch Set 3 : Fix windows build #

Patch Set 4 : More fixes #

Unified diffs Side-by-side diffs Delta from patch set Stats (+142 lines, -71 lines) Patch
M src/crankshaft/hydrogen-instructions.h View 1 chunk +1 line, -4 lines 0 comments Download
M src/crankshaft/hydrogen-instructions.cc View 1 chunk +5 lines, -0 lines 0 comments Download
M src/factory.h View 1 2 3 1 chunk +19 lines, -6 lines 0 comments Download
M src/factory.cc View 1 chunk +4 lines, -8 lines 0 comments Download
M src/heap/heap.h View 1 chunk +2 lines, -3 lines 0 comments Download
M src/heap/heap.cc View 1 2 3 3 chunks +3 lines, -5 lines 0 comments Download
M src/objects.h View 1 2 chunks +5 lines, -1 line 0 comments Download
M src/objects.cc View 1 2 3 3 chunks +9 lines, -7 lines 0 comments Download
M src/objects-inl.h View 1 5 chunks +36 lines, -12 lines 0 comments Download
M src/objects-printer.cc View 1 2 5 chunks +21 lines, -16 lines 0 comments Download
M test/cctest/heap/test-alloc.cc View 1 chunk +1 line, -1 line 0 comments Download
M test/cctest/test-field-type-tracking.cc View 1 chunk +28 lines, -0 lines 0 comments Download
M test/cctest/test-unboxed-doubles.cc View 5 chunks +8 lines, -8 lines 0 comments Download

Messages

Total messages: 41 (31 generated)
Igor Sheludko
PTAL
3 years, 11 months ago (2017-01-23 14:29:17 UTC) #10
Michael Lippautz
On 2017/01/23 14:29:17, Igor Sheludko wrote: > PTAL heap/ lgtm
3 years, 11 months ago (2017-01-23 14:32:54 UTC) #14
Jakob Kummerow
lgtm https://codereview.chromium.org/2652553003/diff/40001/src/objects-inl.h File src/objects-inl.h (right): https://codereview.chromium.org/2652553003/diff/40001/src/objects-inl.h#newcode2371 src/objects-inl.h:2371: // we use normal double setters here. How ...
3 years, 11 months ago (2017-01-23 15:07:10 UTC) #15
Igor Sheludko
https://codereview.chromium.org/2652553003/diff/40001/src/objects-inl.h File src/objects-inl.h (right): https://codereview.chromium.org/2652553003/diff/40001/src/objects-inl.h#newcode2371 src/objects-inl.h:2371: // we use normal double setters here. On 2017/01/23 ...
3 years, 11 months ago (2017-01-23 16:29:49 UTC) #17
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2652553003/100001
3 years, 11 months ago (2017-01-23 16:47:15 UTC) #24
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2652553003/120001
3 years, 11 months ago (2017-01-23 17:26:59 UTC) #28
commit-bot: I haz the power
Try jobs failed on following builders: v8_win64_rel_ng on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_win64_rel_ng/builds/21359)
3 years, 11 months ago (2017-01-23 17:30:08 UTC) #30
Jakob Kummerow
lgtm
3 years, 11 months ago (2017-01-23 17:31:35 UTC) #31
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2652553003/180001
3 years, 11 months ago (2017-01-23 17:43:32 UTC) #38
commit-bot: I haz the power
3 years, 11 months ago (2017-01-23 18:18:57 UTC) #41
Message was sent while issue was closed.
Committed patchset #4 (id:180001) as
https://chromium.googlesource.com/v8/v8/+/f9f5fc31fdea4ded8287d6bc8ee36e147b6...

Powered by Google App Engine
This is Rietveld 408576698