[turbofan] Better narrow the derived type for the right shift operation.
authordtc-v8 <dtc-v8@scieneer.com>
Mon, 26 Jan 2015 14:11:25 +0000 (06:11 -0800)
committerCommit bot <commit-bot@chromium.org>
Mon, 26 Jan 2015 14:11:36 +0000 (14:11 +0000)
commit531f7ab1d2ae78fba35cbfac94cae98cf306f8ac
treeca06c52f7c0b850e094523b367177f93e7a25209
parent379dcd5bd4f3de23a5ab9107d90182b1bdc2e503
[turbofan] Better narrow the derived type for the right shift operation.

Currently the derived type of a right shift does not narrow the input
type based on the actual shift amount - well it does some narrowing
but more can be down. For patterns such as u32[i>>2], which is very
common is asm.js code, this limits the ability to later prove that an
index bounds check is unnecessary which can have a significant
performance impact.

Review URL: https://codereview.chromium.org/873143002

Cr-Commit-Position: refs/heads/master@{#26270}
AUTHORS
src/compiler/typer.cc