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

Issue 2658793004: ValueSerializer: Support efficiently reading and writing one-byte strings. (Closed)

Created:
3 years, 11 months ago by jbroman
Modified:
3 years, 10 months ago
Reviewers:
Jakob Kummerow
CC:
v8-reviews_googlegroups.com
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

ValueSerializer: Support efficiently reading and writing one-byte strings. memcpy is faster than UTF-8 encoding/decoding. This yields 10-20% wins on serializing and deserializing long ASCII strings, according to blink_perf.bindings -- and these are already in a fast path where the entire string is known to be ASCII (but this has to be checked). The win may be larger for strings in Latin-1 but not ASCII (though I suspect this is an uncommon case). A change is also made to make ValueSerializerTest.EncodeTwoByteStringUsesPadding survive wire format version number changes. This is the first of a series of wire format changes from the previous Blink format. The deserializer continues to be able to read the old format, but Chromium M56 will no longer be able to read the messages written by this, in M58. BUG=chromium:686159 Review-Url: https://codereview.chromium.org/2658793004 Cr-Commit-Position: refs/heads/master@{#42753} Committed: https://chromium.googlesource.com/v8/v8/+/bf511b426ee5d65976e1b87c7bac134585f0fc9f

Patch Set 1 #

Patch Set 2 : . #

Patch Set 3 : merge with master #

Unified diffs Side-by-side diffs Delta from patch set Stats (+51 lines, -23 lines) Patch
M src/value-serializer.h View 1 2 1 chunk +1 line, -0 lines 0 comments Download
M src/value-serializer.cc View 1 2 5 chunks +21 lines, -18 lines 0 comments Download
M test/unittests/value-serializer-unittest.cc View 1 2 3 chunks +29 lines, -5 lines 0 comments Download

Messages

Total messages: 30 (22 generated)
jbroman
This eliminates a conversion from i::String to v8::String to get the UTF-8 data, and is ...
3 years, 10 months ago (2017-01-27 19:07:01 UTC) #15
Jakob Kummerow
lgtm
3 years, 10 months ago (2017-01-28 00:35:36 UTC) #16
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/2658793004/20001
3 years, 10 months ago (2017-01-28 04:12:11 UTC) #18
commit-bot: I haz the power
Try jobs failed on following builders: v8_presubmit on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_presubmit/builds/33566)
3 years, 10 months ago (2017-01-28 04:15:42 UTC) #20
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/2658793004/40001
3 years, 10 months ago (2017-01-28 05:19:12 UTC) #23
commit-bot: I haz the power
Try jobs failed on following builders: v8_linux64_rel_ng on master.tryserver.v8 (JOB_FAILED, http://build.chromium.org/p/tryserver.v8/builders/v8_linux64_rel_ng/builds/20073)
3 years, 10 months ago (2017-01-28 05:23:43 UTC) #25
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/2658793004/40001
3 years, 10 months ago (2017-01-28 05:33:50 UTC) #27
commit-bot: I haz the power
3 years, 10 months ago (2017-01-28 05:52:10 UTC) #30
Message was sent while issue was closed.
Committed patchset #3 (id:40001) as
https://chromium.googlesource.com/v8/v8/+/bf511b426ee5d65976e1b87c7bac134585f...

Powered by Google App Engine
This is Rietveld 408576698