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

Issue 2694103005: [gcmole] Avoid hardcoded maximum of 256 locals (Closed)

Created:
3 years, 10 months ago by Clemens Hammacher
Modified:
3 years, 10 months ago
CC:
v8-reviews_googlegroups.com
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

[gcmole] Avoid hardcoded maximum of 256 locals This CL changes the datastructure to store live variables from a std::bitset<256> to a std::vector<bool> to support an arbitrary number of locals. Unfortunately, std::vector<bool> does not define |= and &= operators, so I added them on the Environment class. R=vegorov@chromium.org, mstarzinger@chromium.org, machenbach@chromium.org BUG=v8:5970 Review-Url: https://codereview.chromium.org/2694103005 Cr-Commit-Position: refs/heads/master@{#43216} Committed: https://chromium.googlesource.com/v8/v8/+/b8787e348de92d70d9a7c226cf82d8a95a6dada4

Patch Set 1 #

Total comments: 10
Unified diffs Side-by-side diffs Delta from patch set Stats (+59 lines, -38 lines) Patch
M tools/gcmole/gcmole.cc View 9 chunks +59 lines, -38 lines 10 comments Download

Dependent Patchsets:

Messages

Total messages: 18 (8 generated)
Clemens Hammacher
3 years, 10 months ago (2017-02-15 13:31:18 UTC) #3
Michael Starzinger
LGTM.
3 years, 10 months ago (2017-02-15 13:41:21 UTC) #6
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/2694103005/1
3 years, 10 months ago (2017-02-15 14:41:47 UTC) #8
commit-bot: I haz the power
Committed patchset #1 (id:1) as https://chromium.googlesource.com/v8/v8/+/b8787e348de92d70d9a7c226cf82d8a95a6dada4
3 years, 10 months ago (2017-02-15 14:43:28 UTC) #11
Michael Achenbach
lgtm https://codereview.chromium.org/2694103005/diff/1/tools/gcmole/gcmole.cc File tools/gcmole/gcmole.cc (right): https://codereview.chromium.org/2694103005/diff/1/tools/gcmole/gcmole.cc#newcode351 tools/gcmole/gcmole.cc:351: if (unreachable_) return env.unreachable_; So, there's an invariant ...
3 years, 10 months ago (2017-02-15 15:13:14 UTC) #12
Clemens Hammacher
https://codereview.chromium.org/2694103005/diff/1/tools/gcmole/gcmole.cc File tools/gcmole/gcmole.cc (right): https://codereview.chromium.org/2694103005/diff/1/tools/gcmole/gcmole.cc#newcode351 tools/gcmole/gcmole.cc:351: if (unreachable_) return env.unreachable_; On 2017/02/15 at 15:13:13, Michael ...
3 years, 10 months ago (2017-02-15 15:19:55 UTC) #13
Michael Starzinger
https://codereview.chromium.org/2694103005/diff/1/tools/gcmole/gcmole.cc File tools/gcmole/gcmole.cc (right): https://codereview.chromium.org/2694103005/diff/1/tools/gcmole/gcmole.cc#newcode352 tools/gcmole/gcmole.cc:352: size_t size = std::max(live_.size(), env.live_.size()); On 2017/02/15 15:13:13, Michael ...
3 years, 10 months ago (2017-02-15 15:20:12 UTC) #14
Vyacheslav Egorov (Google)
https://codereview.chromium.org/2694103005/diff/1/tools/gcmole/gcmole.cc File tools/gcmole/gcmole.cc (right): https://codereview.chromium.org/2694103005/diff/1/tools/gcmole/gcmole.cc#newcode351 tools/gcmole/gcmole.cc:351: if (unreachable_) return env.unreachable_; This does not seem correct. ...
3 years, 10 months ago (2017-02-15 15:48:15 UTC) #16
Vyacheslav Egorov (Google)
Few clarification for my comments. https://codereview.chromium.org/2694103005/diff/1/tools/gcmole/gcmole.cc File tools/gcmole/gcmole.cc (right): https://codereview.chromium.org/2694103005/diff/1/tools/gcmole/gcmole.cc#newcode351 tools/gcmole/gcmole.cc:351: if (unreachable_) return env.unreachable_; ...
3 years, 10 months ago (2017-02-15 15:59:37 UTC) #17
Clemens Hammacher
3 years, 10 months ago (2017-02-16 11:24:14 UTC) #18
Message was sent while issue was closed.
Thanks for the comments. Totally makes sense.
This CL should fix the issues: http://crrev.com/2691103008

I also did some measurements to ensure that this change (together with the
fixup) does not degrade performance of gcmole.
Result: no observable difference.
old:
python run-gcmole.py ia32  3455.42s user 139.69s system 4394% cpu 1:21.81 total
new:
python run-gcmole.py ia32  3472.03s user 137.05s system 4449% cpu 1:21.11 total

Powered by Google App Engine
This is Rietveld 408576698