Chromium Code Reviews

Issue 54823002: Make snapshots reproducible. (Closed)

Created:
7 years, 1 month ago by Sven Panne
Modified:
7 years, 1 month ago
Reviewers:
Benedikt Meurer, Erik Corry
CC:
v8-dev
Visibility:
Public.

Description

Make snapshots reproducible. To keep the structure of the serializer more or less untouched, we use some ingenious Corry-approved(TM) 3-step technology (a.k.a. "hack"): * Create copies of code objects. * Wipe out all absolute addresses in these copies. * Write out the cleaned copies instead of the originals. In conjunction with --random-seed, our snapshots are reproducible now. BUG=v8:2885 R=bmeurer@chromium.org, erik.corry@gmail.com Committed: http://code.google.com/p/v8/source/detail?r=17473

Patch Set 1 #

Patch Set 2 : ARM support. Rebased. #

Patch Set 3 : MIPS support. #

Total comments: 1

Patch Set 4 : Introduced Code::WipeOutHeader. #

Total comments: 5

Patch Set 5 : Comments only. #

Unified diffs Side-by-side diffs Stats (+100 lines, -3 lines)
M src/arm/assembler-arm-inl.h View 1 chunk +9 lines, -0 lines 0 comments
M src/assembler.h View 1 chunk +4 lines, -0 lines 0 comments
M src/ia32/assembler-ia32-inl.h View 1 chunk +12 lines, -0 lines 0 comments
M src/mips/assembler-mips-inl.h View 1 chunk +9 lines, -0 lines 0 comments
M src/objects.h View 1 chunk +9 lines, -0 lines 0 comments
M src/objects-inl.h View 1 chunk +11 lines, -0 lines 0 comments
M src/serialize.cc View 2 chunks +34 lines, -3 lines 0 comments
M src/x64/assembler-x64-inl.h View 1 chunk +12 lines, -0 lines 0 comments

Messages

Total messages: 9 (0 generated)
Sven Panne
7 years, 1 month ago (2013-11-04 10:48:08 UTC) #1
Benedikt Meurer
LGTM with nit https://codereview.chromium.org/54823002/diff/40001/src/serialize.cc File src/serialize.cc (right): https://codereview.chromium.org/54823002/diff/40001/src/serialize.cc#newcode1787 src/serialize.cc:1787: code->set_relocation_info( Nit: Can we do better ...
7 years, 1 month ago (2013-11-04 11:25:14 UTC) #2
Sven Panne
Slightly polished, PTAL again
7 years, 1 month ago (2013-11-04 12:24:25 UTC) #3
Benedikt Meurer
On 2013/11/04 12:24:25, Sven Panne wrote: > Slightly polished, PTAL again LGTM
7 years, 1 month ago (2013-11-04 12:25:45 UTC) #4
Erik Corry
lgtm https://codereview.chromium.org/54823002/diff/90001/src/ia32/assembler-ia32-inl.h File src/ia32/assembler-ia32-inl.h (right): https://codereview.chromium.org/54823002/diff/90001/src/ia32/assembler-ia32-inl.h#newcode256 src/ia32/assembler-ia32-inl.h:256: Assembler::set_target_address_at(pc_, pc_ + sizeof(int32_t)); Why add sizeof(int32_t) here? ...
7 years, 1 month ago (2013-11-04 12:41:13 UTC) #5
Sven Panne
https://codereview.chromium.org/54823002/diff/90001/src/ia32/assembler-ia32-inl.h File src/ia32/assembler-ia32-inl.h (right): https://codereview.chromium.org/54823002/diff/90001/src/ia32/assembler-ia32-inl.h#newcode256 src/ia32/assembler-ia32-inl.h:256: Assembler::set_target_address_at(pc_, pc_ + sizeof(int32_t)); On 2013/11/04 12:41:14, Erik Corry ...
7 years, 1 month ago (2013-11-04 13:03:19 UTC) #6
Erik Corry
https://codereview.chromium.org/54823002/diff/90001/src/objects.h File src/objects.h (right): https://codereview.chromium.org/54823002/diff/90001/src/objects.h#newcode5199 src/objects.h:5199: // Slightly ugly, used in ObjectSerializer only. On 2013/11/04 ...
7 years, 1 month ago (2013-11-04 13:20:02 UTC) #7
Sven Panne
Added that + 2 tiny comments about the sizeof(int32_t). Thanks for ghost writing! :-D
7 years, 1 month ago (2013-11-04 13:35:34 UTC) #8
Sven Panne
7 years, 1 month ago (2013-11-05 10:14:59 UTC) #9
Message was sent while issue was closed.
Committed patchset #5 manually as r17473 (presubmit successful).

Powered by Google App Engine