|
[turbofan] Introduce TruncateTaggedToWord32 simplified operator.
This allows us to get rid of the "push TruncateFloat64ToInt32 into Phi"
trick that was used in the MachineOperatorReducer to combine the
ChangeTaggedToFloat64 and TruncateFloat64ToInt32 operations. Instead of
doing that later, we can just introduce the proper operator during the
representation selection directly.
Also separate the TruncateFloat64ToInt32 machine operator, which had two
different meanings depending on a flag (either JavaScript truncation or
C++ style round to zero). Now there's a TruncateFloat64ToWord32 which
represents the JavaScript truncation (implemented via TruncateDoubleToI
macro + code stub) and the RoundFloat64ToInt32, which implements the C++
round towards zero operation (in the same style as the other WebAssembly
driven Round* machine operators).
R=jarin@chromium.org
Committed: https://crrev.com/0231a7efa2b5ce8108a837284e2f63dccd5dcd09
Cr-Commit-Position: refs/heads/master@{#35743}
Total comments: 1
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+241 lines, -290 lines) |
Patch |
|
M |
src/builtins.cc
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
src/code-stub-assembler.h
|
View
|
|
1 chunk |
+0 lines, -2 lines |
0 comments
|
Download
|
|
M |
src/code-stub-assembler.cc
|
View
|
|
2 chunks |
+3 lines, -14 lines |
0 comments
|
Download
|
|
M |
src/compiler/arm/instruction-selector-arm.cc
|
View
|
|
1 chunk |
+5 lines, -8 lines |
0 comments
|
Download
|
|
M |
src/compiler/arm64/instruction-selector-arm64.cc
|
View
|
|
1 chunk |
+5 lines, -8 lines |
0 comments
|
Download
|
|
M |
src/compiler/change-lowering.h
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
src/compiler/change-lowering.cc
|
View
|
|
3 chunks |
+45 lines, -2 lines |
1 comment
|
Download
|
|
M |
src/compiler/code-assembler.h
|
View
|
|
2 chunks |
+2 lines, -2 lines |
0 comments
|
Download
|
|
M |
src/compiler/code-assembler.cc
|
View
|
|
1 chunk |
+0 lines, -9 lines |
0 comments
|
Download
|
|
M |
src/compiler/effect-control-linearizer.cc
|
View
|
|
1 chunk |
+1 line, -2 lines |
0 comments
|
Download
|
|
M |
src/compiler/ia32/instruction-selector-ia32.cc
|
View
|
|
1 chunk |
+5 lines, -8 lines |
0 comments
|
Download
|
|
M |
src/compiler/instruction-selector.cc
|
View
|
|
1 chunk |
+4 lines, -2 lines |
0 comments
|
Download
|
|
M |
src/compiler/machine-operator.h
|
View
|
|
3 chunks |
+4 lines, -17 lines |
0 comments
|
Download
|
|
M |
src/compiler/machine-operator.cc
|
View
|
|
5 chunks |
+2 lines, -44 lines |
0 comments
|
Download
|
|
M |
src/compiler/machine-operator-reducer.h
|
View
|
|
1 chunk |
+0 lines, -1 line |
0 comments
|
Download
|
|
M |
src/compiler/machine-operator-reducer.cc
|
View
|
|
3 chunks |
+12 lines, -33 lines |
0 comments
|
Download
|
|
M |
src/compiler/mips/instruction-selector-mips.cc
|
View
|
|
1 chunk |
+5 lines, -9 lines |
0 comments
|
Download
|
|
M |
src/compiler/mips64/instruction-selector-mips64.cc
|
View
|
|
1 chunk |
+5 lines, -9 lines |
0 comments
|
Download
|
|
M |
src/compiler/opcodes.h
|
View
|
|
3 chunks |
+3 lines, -1 line |
0 comments
|
Download
|
|
M |
src/compiler/ppc/instruction-selector-ppc.cc
|
View
|
|
1 chunk |
+1 line, -2 lines |
0 comments
|
Download
|
|
M |
src/compiler/raw-machine-assembler.h
|
View
|
|
2 chunks |
+6 lines, -3 lines |
0 comments
|
Download
|
|
M |
src/compiler/representation-change.cc
|
View
|
|
3 chunks |
+3 lines, -4 lines |
0 comments
|
Download
|
|
M |
src/compiler/s390/instruction-selector-s390.cc
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
src/compiler/simplified-lowering.cc
|
View
|
|
2 chunks |
+2 lines, -4 lines |
0 comments
|
Download
|
|
M |
src/compiler/simplified-operator.h
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
src/compiler/simplified-operator.cc
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
src/compiler/simplified-operator-reducer.cc
|
View
|
|
1 chunk |
+12 lines, -0 lines |
0 comments
|
Download
|
|
M |
src/compiler/typer.cc
|
View
|
|
3 chunks |
+11 lines, -3 lines |
0 comments
|
Download
|
|
M |
src/compiler/verifier.cc
|
View
|
|
3 chunks |
+11 lines, -1 line |
0 comments
|
Download
|
|
M |
src/compiler/wasm-compiler.cc
|
View
|
|
6 chunks |
+7 lines, -14 lines |
0 comments
|
Download
|
|
M |
src/compiler/x64/instruction-selector-x64.cc
|
View
|
|
2 chunks |
+5 lines, -9 lines |
0 comments
|
Download
|
|
M |
src/compiler/x87/instruction-selector-x87.cc
|
View
|
|
1 chunk |
+1 line, -2 lines |
0 comments
|
Download
|
|
M |
test/cctest/compiler/test-representation-change.cc
|
View
|
|
2 chunks |
+2 lines, -2 lines |
0 comments
|
Download
|
|
M |
test/cctest/compiler/test-run-machops.cc
|
View
|
|
2 chunks |
+2 lines, -4 lines |
0 comments
|
Download
|
|
M |
test/cctest/compiler/test-simplified-lowering.cc
|
View
|
|
6 chunks |
+11 lines, -24 lines |
0 comments
|
Download
|
|
M |
test/unittests/compiler/instruction-selector-unittest.cc
|
View
|
|
1 chunk |
+2 lines, -4 lines |
0 comments
|
Download
|
|
M |
test/unittests/compiler/machine-operator-reducer-unittest.cc
|
View
|
|
3 chunks |
+33 lines, -38 lines |
0 comments
|
Download
|
|
M |
test/unittests/compiler/node-test-utils.h
|
View
|
|
2 chunks |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
test/unittests/compiler/node-test-utils.cc
|
View
|
|
2 chunks |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
test/unittests/compiler/simplified-operator-reducer-unittest.cc
|
View
|
|
1 chunk |
+22 lines, -0 lines |
0 comments
|
Download
|
|
M |
test/unittests/compiler/simplified-operator-unittest.cc
|
View
|
|
3 chunks |
+2 lines, -1 line |
0 comments
|
Download
|
Total messages: 9 (2 generated)
|