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

Issue 16206004: Add smi support to all binops minus shr, sar, shl, div and mod. (Closed)

Created:
7 years, 6 months ago by Toon Verwaest
Modified:
7 years, 4 months ago
Reviewers:
Sven Panne, danno
CC:
v8-dev
Visibility:
Public.

Description

Add smi support to all binops minus shr, sar, shl, div and mod.

Patch Set 1 : #

Total comments: 6

Patch Set 2 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+356 lines, -222 lines) Patch
M src/flag-definitions.h View 1 1 chunk +1 line, -0 lines 0 comments Download
M src/hydrogen.cc View 1 2 chunks +2 lines, -6 lines 0 comments Download
M src/hydrogen-canonicalize.cc View 1 1 chunk +12 lines, -5 lines 0 comments Download
M src/hydrogen-instructions.h View 1 21 chunks +98 lines, -35 lines 0 comments Download
M src/hydrogen-instructions.cc View 1 25 chunks +134 lines, -92 lines 0 comments Download
M src/hydrogen-minus-zero.cc View 1 1 chunk +2 lines, -2 lines 0 comments Download
M src/hydrogen-representation-changes.cc View 1 5 chunks +19 lines, -7 lines 0 comments Download
M src/ia32/lithium-codegen-ia32.h View 1 2 chunks +3 lines, -5 lines 0 comments Download
M src/ia32/lithium-codegen-ia32.cc View 1 11 chunks +42 lines, -35 lines 0 comments Download
M src/ia32/lithium-gap-resolver-ia32.cc View 1 2 chunks +8 lines, -8 lines 0 comments Download
M src/ia32/lithium-ia32.cc View 1 10 chunks +33 lines, -25 lines 0 comments Download
M src/type-info.cc View 1 1 chunk +1 line, -2 lines 0 comments Download
M src/types.cc View 1 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 5 (0 generated)
Toon Verwaest
PTAL. Only ia32 for now.
7 years, 6 months ago (2013-06-04 09:36:40 UTC) #1
Sven Panne
DBC below. Somehow it is ugly that the notion of "representation" is leaking into range ...
7 years, 6 months ago (2013-06-04 09:53:55 UTC) #2
Sven Panne
https://chromiumcodereview.appspot.com/16206004/diff/2001/src/hydrogen-instructions.cc File src/hydrogen-instructions.cc (right): https://chromiumcodereview.appspot.com/16206004/diff/2001/src/hydrogen-instructions.cc#newcode1852 src/hydrogen-instructions.cc:1852: (r.IsSmi() && !a->Includes(Smi::kMinValue)) || On 2013/06/04 09:53:56, Sven Panne ...
7 years, 6 months ago (2013-06-04 10:01:07 UTC) #3
Toon Verwaest
https://chromiumcodereview.appspot.com/16206004/diff/2001/src/hydrogen-instructions.cc File src/hydrogen-instructions.cc (right): https://chromiumcodereview.appspot.com/16206004/diff/2001/src/hydrogen-instructions.cc#newcode1852 src/hydrogen-instructions.cc:1852: (r.IsSmi() && !a->Includes(Smi::kMinValue)) || On 2013/06/04 10:01:07, Sven Panne ...
7 years, 6 months ago (2013-06-04 15:06:40 UTC) #4
danno
7 years, 6 months ago (2013-06-06 12:32:13 UTC) #5
https://codereview.chromium.org/16206004/diff/2001/src/hydrogen-instructions.h
File src/hydrogen-instructions.h (right):

https://codereview.chromium.org/16206004/diff/2001/src/hydrogen-instructions....
src/hydrogen-instructions.h:3380: if (r.IsSmi() && CannotBothBeSmi()) {
A comment might be nice.

https://codereview.chromium.org/16206004/diff/2001/src/hydrogen.cc
File src/hydrogen.cc (right):

https://codereview.chromium.org/16206004/diff/2001/src/hydrogen.cc#newcode3475
src/hydrogen.cc:3475: !from.Equals(change->to())));
Why did you add the Equals() clause? This should already be guaranteed. Is there
extra value in the check here?

https://codereview.chromium.org/16206004/diff/2001/src/ia32/lithium-codegen-i...
File src/ia32/lithium-codegen-ia32.cc (right):

https://codereview.chromium.org/16206004/diff/2001/src/ia32/lithium-codegen-i...
src/ia32/lithium-codegen-ia32.cc:592: HConstant* constant =
chunk_->LookupConstant(op);
why do you need to pass in the representation? Can't you get this from
op->hydrogen()->representation()?

Powered by Google App Engine
This is Rietveld 408576698