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

Issue 798933002: When canonicalizing UnboxInt32([tr], BoxInt64()) make sure to mark resulting converter truncating. (Closed)

Created:
6 years ago by Vyacheslav Egorov (Google)
Modified:
6 years ago
Reviewers:
Florian Schneider, fscheider
CC:
reviews_dartlang.org, vm-dev_dartlang.org
Target Ref:
refs/remotes/git-svn
Visibility:
Public.

Description

When canonicalizing UnboxInt32([tr], BoxInt64()) make sure to mark resulting converter truncating. We regressed this logic in r41736 when we started to checking whether current UnboxInt32 can deoptimize, instead of whether it is truncating or not. This was too aggressive. Additionally fix CanDeoptimize for UnboxInt32([tr], BoxInt64()). It was always returning true because CompileType is not smart enough to encode that Boxing returns either Smi or Mint, which is enough to guarantee that truncating UnboxInt32 won't deoptimize. R=fschneider@google.com, fscheider@google.com BUG= Committed: https://code.google.com/p/dart/source/detail?r=42319

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+3 lines, -1 line) Patch
M runtime/vm/intermediate_language.cc View 2 chunks +3 lines, -1 line 0 comments Download

Messages

Total messages: 4 (1 generated)
Vyacheslav Egorov (Google)
6 years ago (2014-12-12 13:36:38 UTC) #1
Florian Schneider
lgtm
6 years ago (2014-12-12 13:38:17 UTC) #3
Vyacheslav Egorov (Google)
6 years ago (2014-12-12 13:54:28 UTC) #4
Message was sent while issue was closed.
Committed patchset #1 (id:1) manually as 42319 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698