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

Issue 1066393002: [turbofan] Add new Float32Abs and Float64Abs operators. (Closed)

Created:
5 years, 8 months ago by Benedikt Meurer
Modified:
5 years, 8 months ago
Reviewers:
Sven Panne
CC:
v8-dev
Base URL:
https://chromium.googlesource.com/v8/v8.git@master
Target Ref:
refs/pending/heads/master
Project:
v8
Visibility:
Public.

Description

[turbofan] Add new Float32Abs and Float64Abs operators. These operators compute the absolute floating point value of some arbitrary input, and are implemented without any branches (i.e. using vabs on arm, and andps/andpd on x86). R=svenpanne@chromium.org Committed: https://crrev.com/9af9f1d0262e2dab66c62331a03f6a76504f3866 Cr-Commit-Position: refs/heads/master@{#27662}

Patch Set 1 #

Patch Set 2 : Fix Win64 #

Patch Set 3 : Really fix windows. #

Patch Set 4 : Fix invalid register constraints on x64/ia32. #

Total comments: 2

Patch Set 5 : Fix comment. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+613 lines, -76 lines) Patch
M src/compiler/arm/code-generator-arm.cc View 3 chunks +7 lines, -1 line 0 comments Download
M src/compiler/arm/instruction-codes-arm.h View 2 chunks +2 lines, -0 lines 0 comments Download
M src/compiler/arm/instruction-selector-arm.cc View 2 chunks +12 lines, -0 lines 0 comments Download
M src/compiler/arm64/code-generator-arm64.cc View 2 chunks +6 lines, -0 lines 0 comments Download
M src/compiler/arm64/instruction-codes-arm64.h View 2 chunks +2 lines, -0 lines 0 comments Download
M src/compiler/arm64/instruction-selector-arm64.cc View 2 chunks +13 lines, -1 line 0 comments Download
M src/compiler/common-operator-reducer.h View 2 chunks +4 lines, -0 lines 0 comments Download
M src/compiler/common-operator-reducer.cc View 2 chunks +81 lines, -26 lines 0 comments Download
M src/compiler/ia32/code-generator-ia32.cc View 2 chunks +16 lines, -0 lines 0 comments Download
M src/compiler/ia32/instruction-codes-ia32.h View 2 chunks +2 lines, -0 lines 0 comments Download
M src/compiler/ia32/instruction-selector-ia32.cc View 1 2 3 2 chunks +14 lines, -0 lines 0 comments Download
M src/compiler/instruction-selector.cc View 2 chunks +4 lines, -0 lines 0 comments Download
M src/compiler/machine-operator.h View 1 2 3 4 2 chunks +20 lines, -10 lines 0 comments Download
M src/compiler/machine-operator.cc View 1 chunk +2 lines, -0 lines 0 comments Download
M src/compiler/mips/instruction-selector-mips.cc View 1 chunk +6 lines, -0 lines 0 comments Download
M src/compiler/mips64/instruction-selector-mips64.cc View 1 chunk +6 lines, -0 lines 0 comments Download
M src/compiler/node-matchers.h View 2 chunks +3 lines, -0 lines 0 comments Download
M src/compiler/opcodes.h View 2 chunks +2 lines, -0 lines 0 comments Download
M src/compiler/ppc/instruction-selector-ppc.cc View 1 chunk +6 lines, -0 lines 0 comments Download
M src/compiler/raw-machine-assembler.h View 2 chunks +2 lines, -0 lines 0 comments Download
M src/compiler/simplified-lowering.cc View 1 chunk +1 line, -0 lines 0 comments Download
M src/compiler/typer.cc View 2 chunks +12 lines, -0 lines 0 comments Download
M src/compiler/verifier.cc View 2 chunks +2 lines, -0 lines 0 comments Download
M src/compiler/x64/code-generator-x64.cc View 2 chunks +16 lines, -0 lines 0 comments Download
M src/compiler/x64/instruction-codes-x64.h View 2 chunks +2 lines, -0 lines 0 comments Download
M src/compiler/x64/instruction-selector-x64.cc View 1 2 3 3 chunks +14 lines, -0 lines 0 comments Download
M src/math.js View 1 chunk +1 line, -2 lines 0 comments Download
M test/cctest/compiler/test-run-machops.cc View 1 2 1 chunk +34 lines, -0 lines 0 comments Download
M test/cctest/compiler/value-helper.h View 1 chunk +6 lines, -8 lines 0 comments Download
M test/unittests/compiler/arm/instruction-selector-arm-unittest.cc View 1 chunk +30 lines, -0 lines 0 comments Download
M test/unittests/compiler/arm64/instruction-selector-arm64-unittest.cc View 1 chunk +30 lines, -0 lines 0 comments Download
M test/unittests/compiler/common-operator-reducer-unittest.cc View 3 chunks +154 lines, -22 lines 0 comments Download
M test/unittests/compiler/ia32/instruction-selector-ia32-unittest.cc View 1 2 3 1 chunk +34 lines, -0 lines 0 comments Download
M test/unittests/compiler/machine-operator-unittest.cc View 1 chunk +7 lines, -6 lines 0 comments Download
M test/unittests/compiler/node-test-utils.h View 1 chunk +6 lines, -0 lines 0 comments Download
M test/unittests/compiler/node-test-utils.cc View 2 chunks +4 lines, -0 lines 0 comments Download
M test/unittests/compiler/x64/instruction-selector-x64-unittest.cc View 1 2 3 2 chunks +50 lines, -0 lines 0 comments Download

Messages

Total messages: 8 (2 generated)
Benedikt Meurer
Hey Michi, This seems to give a nice boost on Embenchen Bullet, which uses Math.abs ...
5 years, 8 months ago (2015-04-08 09:13:24 UTC) #2
Benedikt Meurer
5 years, 8 months ago (2015-04-08 10:32:05 UTC) #4
Sven Panne
LGTM with a nit https://codereview.chromium.org/1066393002/diff/60001/src/compiler/machine-operator.h File src/compiler/machine-operator.h (right): https://codereview.chromium.org/1066393002/diff/60001/src/compiler/machine-operator.h#newcode202 src/compiler/machine-operator.h:202: // Floating point abs complying ...
5 years, 8 months ago (2015-04-08 11:52:03 UTC) #5
Benedikt Meurer
https://codereview.chromium.org/1066393002/diff/60001/src/compiler/machine-operator.h File src/compiler/machine-operator.h (right): https://codereview.chromium.org/1066393002/diff/60001/src/compiler/machine-operator.h#newcode202 src/compiler/machine-operator.h:202: // Floating point abs complying to IEEE 753 (single-precision). ...
5 years, 8 months ago (2015-04-08 11:54:42 UTC) #6
Benedikt Meurer
Committed patchset #5 (id:80001) manually as 9af9f1d0262e2dab66c62331a03f6a76504f3866 (presubmit successful).
5 years, 8 months ago (2015-04-08 11:55:16 UTC) #7
commit-bot: I haz the power
5 years, 8 months ago (2015-04-08 11:55:17 UTC) #8
Message was sent while issue was closed.
Patchset 5 (id:??) landed as
https://crrev.com/9af9f1d0262e2dab66c62331a03f6a76504f3866
Cr-Commit-Position: refs/heads/master@{#27662}

Powered by Google App Engine
This is Rietveld 408576698