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

Issue 1759383003: [compiler] Add relocatable pointer constants for wasm memory references. (Closed)

Created:
4 years, 9 months ago by gdeepti1
Modified:
4 years, 8 months ago
CC:
v8-reviews_googlegroups.com, v8-mips-ports_googlegroups.com, v8-x87-ports_googlegroups.com, v8-ppc-ports_googlegroups.com
Base URL:
https://chromium.googlesource.com/v8/v8.git@master
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

[compiler] Add relocatable pointer constants for wasm memory references. Add relocatable pointers for wasm memory references that need to be updated when wasm GrowMemory is used. Code generator changes to accept relocatable constants as immediates. R=titzer@chromium.org, yangguo@chromium.org, bradnelson@chromium.org Committed: https://crrev.com/eb5fe0df64ec0add423b2a1f6fb62d5a33dce2a5 Cr-Commit-Position: refs/heads/master@{#35182} Committed: https://crrev.com/297932a302ce0b73c3618ef9e4eba9d9d241f2b3 Cr-Commit-Position: refs/heads/master@{#35400} Committed: https://crrev.com/52148c41c948f4e70778de758fb1a0ae118cecc2 Cr-Commit-Position: refs/heads/master@{#35407}

Patch Set 1 #

Patch Set 2 : Fix mips/mips64 compile #

Total comments: 11

Patch Set 3 : Rebase to keep only compiler changes #

Patch Set 4 : Rebase, update test. #

Patch Set 5 : Fix mips/mips64 #

Patch Set 6 : Fixes for x64 #

Patch Set 7 : Rebase #

Patch Set 8 : Rebase to fix ia32/x64 tests #

Patch Set 9 : Rebase to include assembler changes #

Patch Set 10 : Fix Rebase #

Patch Set 11 : Removing additional check #

Total comments: 9

Patch Set 12 : Ben's review #

Patch Set 13 : #

Patch Set 14 : Fix bad test #

Patch Set 15 : Tweaks to fix mac tests #

Patch Set 16 : Fix uninitialized variable causing msan failure #

Unified diffs Side-by-side diffs Delta from patch set Stats (+341 lines, -33 lines) Patch
M src/compiler/arm/code-generator-arm.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +5 lines, -1 line 0 comments Download
M src/compiler/arm64/code-generator-arm64.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +5 lines, -1 line 0 comments Download
M src/compiler/common-node-cache.h View 2 chunks +10 lines, -0 lines 0 comments Download
M src/compiler/common-node-cache.cc View 1 chunk +2 lines, -0 lines 0 comments Download
M src/compiler/common-operator.h View 4 chunks +25 lines, -1 line 0 comments Download
M src/compiler/common-operator.cc View 2 chunks +36 lines, -0 lines 0 comments Download
M src/compiler/ia32/code-generator-ia32.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +5 lines, -0 lines 0 comments Download
M src/compiler/ia32/instruction-selector-ia32.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +2 lines, -0 lines 0 comments Download
M src/compiler/instruction.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 2 chunks +8 lines, -0 lines 0 comments Download
M src/compiler/instruction.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +8 lines, -0 lines 0 comments Download
M src/compiler/instruction-selector.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +2 lines, -0 lines 0 comments Download
M src/compiler/instruction-selector-impl.h View 1 chunk +3 lines, -0 lines 0 comments Download
M src/compiler/js-graph.h View 1 2 3 4 5 6 7 8 1 chunk +4 lines, -0 lines 0 comments Download
M src/compiler/js-graph.cc View 1 2 3 4 5 6 7 8 1 chunk +22 lines, -0 lines 0 comments Download
M src/compiler/opcodes.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 2 chunks +11 lines, -9 lines 0 comments Download
M src/compiler/raw-machine-assembler.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 2 chunks +7 lines, -0 lines 0 comments Download
M src/compiler/raw-machine-assembler.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +6 lines, -0 lines 0 comments Download
M src/compiler/typer.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +8 lines, -0 lines 0 comments Download
M src/compiler/verifier.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +4 lines, -0 lines 0 comments Download
M src/compiler/wasm-compiler.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +6 lines, -4 lines 0 comments Download
M src/compiler/x64/code-generator-x64.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +14 lines, -6 lines 0 comments Download
M src/compiler/x64/instruction-selector-x64.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +1 line, -0 lines 0 comments Download
M src/x64/assembler-x64.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +0 lines, -1 line 0 comments Download
M src/x64/macro-assembler-x64.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +0 lines, -1 line 0 comments Download
M src/x64/macro-assembler-x64.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +0 lines, -9 lines 0 comments Download
M test/cctest/cctest.gyp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +1 line, -0 lines 0 comments Download
A test/cctest/compiler/test-run-wasm-machops.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +145 lines, -0 lines 0 comments Download
M test/cctest/test-run-wasm-relocation-x64.cc View 1 2 3 4 5 6 7 8 1 chunk +1 line, -0 lines 0 comments Download

Depends on Patchset:

Messages

Total messages: 46 (20 generated)
gdeepti1
4 years, 9 months ago (2016-03-04 22:51:34 UTC) #2
gdeepti1
4 years, 9 months ago (2016-03-04 22:51:38 UTC) #3
bradnelson
Some general questions, but I strongly defer to other reviewers on this as it touches ...
4 years, 9 months ago (2016-03-06 21:53:14 UTC) #4
Yang
https://codereview.chromium.org/1759383003/diff/40001/src/arm/assembler-arm-inl.h File src/arm/assembler-arm-inl.h (right): https://codereview.chromium.org/1759383003/diff/40001/src/arm/assembler-arm-inl.h#newcode121 src/arm/assembler-arm-inl.h:121: void RelocInfo::update_wasm_memory_reference( I think Ben's idea of "update" was ...
4 years, 9 months ago (2016-03-07 06:21:22 UTC) #5
titzer
https://codereview.chromium.org/1759383003/diff/40001/src/x64/assembler-x64.h File src/x64/assembler-x64.h (right): https://codereview.chromium.org/1759383003/diff/40001/src/x64/assembler-x64.h#newcode338 src/x64/assembler-x64.h:338: value_ = static_cast<int32_t>(reinterpret_cast<intptr_t>(value)); On 2016/03/07 06:21:22, Yang wrote: > ...
4 years, 9 months ago (2016-03-07 19:34:09 UTC) #6
gdeepti1
https://codereview.chromium.org/1759383003/diff/40001/src/arm/assembler-arm-inl.h File src/arm/assembler-arm-inl.h (right): https://codereview.chromium.org/1759383003/diff/40001/src/arm/assembler-arm-inl.h#newcode121 src/arm/assembler-arm-inl.h:121: void RelocInfo::update_wasm_memory_reference( On 2016/03/07 06:21:22, Yang wrote: > I ...
4 years, 9 months ago (2016-03-08 04:22:51 UTC) #7
gdeepti1
PTAL https://codereview.chromium.org/1759383003/diff/240001/src/x64/macro-assembler-x64.cc File src/x64/macro-assembler-x64.cc (left): https://codereview.chromium.org/1759383003/diff/240001/src/x64/macro-assembler-x64.cc#oldcode1117 src/x64/macro-assembler-x64.cc:1117: void MacroAssembler::Set(Register dst, int64_t x, RelocInfo::Mode rmode) { ...
4 years, 9 months ago (2016-03-18 23:47:45 UTC) #9
titzer
lgtm other than splitting up tests. https://codereview.chromium.org/1759383003/diff/240001/src/compiler/verifier.cc File src/compiler/verifier.cc (right): https://codereview.chromium.org/1759383003/diff/240001/src/compiler/verifier.cc#newcode350 src/compiler/verifier.cc:350: // TODO(gdeepti): Add ...
4 years, 9 months ago (2016-03-23 20:35:36 UTC) #10
Yang
On 2016/03/23 20:35:36, titzer wrote: > lgtm other than splitting up tests. > > https://codereview.chromium.org/1759383003/diff/240001/src/compiler/verifier.cc ...
4 years, 9 months ago (2016-03-24 05:27:31 UTC) #11
gdeepti1
https://codereview.chromium.org/1759383003/diff/240001/src/compiler/verifier.cc File src/compiler/verifier.cc (right): https://codereview.chromium.org/1759383003/diff/240001/src/compiler/verifier.cc#newcode350 src/compiler/verifier.cc:350: // TODO(gdeepti): Add accurate checking for relocatable constants. On ...
4 years, 8 months ago (2016-03-31 22:29:54 UTC) #14
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1759383003/300001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1759383003/300001
4 years, 8 months ago (2016-03-31 22:31:45 UTC) #17
commit-bot: I haz the power
Committed patchset #14 (id:300001)
4 years, 8 months ago (2016-04-01 00:39:28 UTC) #19
commit-bot: I haz the power
Patchset 14 (id:??) landed as https://crrev.com/eb5fe0df64ec0add423b2a1f6fb62d5a33dce2a5 Cr-Commit-Position: refs/heads/master@{#35182}
4 years, 8 months ago (2016-04-01 00:41:41 UTC) #21
Yang
A revert of this CL (patchset #14 id:300001) has been created in https://codereview.chromium.org/1846083005/ by yangguo@chromium.org. ...
4 years, 8 months ago (2016-04-01 05:52:18 UTC) #22
Benedikt Meurer
I'm probably a bit late to the discussion, somehow missed it so far, but have ...
4 years, 8 months ago (2016-04-01 05:54:49 UTC) #24
bradn
Hi Benedikt, Good suggestions are always welcome! So we'd talked about it way back (titzer ...
4 years, 8 months ago (2016-04-01 18:46:06 UTC) #26
titzer
On 2016/04/01 18:46:06, bradn wrote: > Hi Benedikt, > > Good suggestions are always welcome! ...
4 years, 8 months ago (2016-04-01 19:00:57 UTC) #27
gdeepti1
On 2016/04/01 05:52:18, Yang wrote: > A revert of this CL (patchset #14 id:300001) has ...
4 years, 8 months ago (2016-04-11 22:29:48 UTC) #29
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1759383003/320001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1759383003/320001
4 years, 8 months ago (2016-04-11 22:30:07 UTC) #32
commit-bot: I haz the power
Committed patchset #15 (id:320001)
4 years, 8 months ago (2016-04-11 22:33:21 UTC) #34
commit-bot: I haz the power
Patchset 15 (id:??) landed as https://crrev.com/297932a302ce0b73c3618ef9e4eba9d9d241f2b3 Cr-Commit-Position: refs/heads/master@{#35400}
4 years, 8 months ago (2016-04-11 22:35:11 UTC) #36
Michael Achenbach
A revert of this CL (patchset #15 id:320001) has been created in https://codereview.chromium.org/1881913002/ by machenbach@chromium.org. ...
4 years, 8 months ago (2016-04-12 07:48:21 UTC) #37
gdeepti1
On 2016/04/12 07:48:21, Michael Achenbach wrote: > A revert of this CL (patchset #15 id:320001) ...
4 years, 8 months ago (2016-04-12 09:02:50 UTC) #39
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1759383003/340001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1759383003/340001
4 years, 8 months ago (2016-04-12 09:03:07 UTC) #42
commit-bot: I haz the power
Committed patchset #16 (id:340001)
4 years, 8 months ago (2016-04-12 09:05:14 UTC) #44
commit-bot: I haz the power
4 years, 8 months ago (2016-04-12 09:07:07 UTC) #46
Message was sent while issue was closed.
Patchset 16 (id:??) landed as
https://crrev.com/52148c41c948f4e70778de758fb1a0ae118cecc2
Cr-Commit-Position: refs/heads/master@{#35407}

Powered by Google App Engine
This is Rietveld 408576698