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

Side by Side Diff: src/compiler/wasm-compiler.cc

Issue 2827143002: [WASM SIMD] Remove opcodes that are slow on some platforms. (Closed)
Patch Set: Remove stray tests. Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/compiler/simd-scalar-lowering.cc ('k') | src/wasm/wasm-opcodes.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 the V8 project authors. All rights reserved. 1 // Copyright 2015 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "src/compiler/wasm-compiler.h" 5 #include "src/compiler/wasm-compiler.h"
6 6
7 #include <memory> 7 #include <memory>
8 8
9 #include "src/assembler-inl.h" 9 #include "src/assembler-inl.h"
10 #include "src/base/platform/elapsed-timer.h" 10 #include "src/base/platform/elapsed-timer.h"
(...skipping 3170 matching lines...) Expand 10 before | Expand all | Expand 10 after
3181 case wasm::kExprF32x4SConvertI32x4: 3181 case wasm::kExprF32x4SConvertI32x4:
3182 return graph()->NewNode(jsgraph()->machine()->F32x4SConvertI32x4(), 3182 return graph()->NewNode(jsgraph()->machine()->F32x4SConvertI32x4(),
3183 inputs[0]); 3183 inputs[0]);
3184 case wasm::kExprF32x4UConvertI32x4: 3184 case wasm::kExprF32x4UConvertI32x4:
3185 return graph()->NewNode(jsgraph()->machine()->F32x4UConvertI32x4(), 3185 return graph()->NewNode(jsgraph()->machine()->F32x4UConvertI32x4(),
3186 inputs[0]); 3186 inputs[0]);
3187 case wasm::kExprF32x4Abs: 3187 case wasm::kExprF32x4Abs:
3188 return graph()->NewNode(jsgraph()->machine()->F32x4Abs(), inputs[0]); 3188 return graph()->NewNode(jsgraph()->machine()->F32x4Abs(), inputs[0]);
3189 case wasm::kExprF32x4Neg: 3189 case wasm::kExprF32x4Neg:
3190 return graph()->NewNode(jsgraph()->machine()->F32x4Neg(), inputs[0]); 3190 return graph()->NewNode(jsgraph()->machine()->F32x4Neg(), inputs[0]);
3191 case wasm::kExprF32x4Sqrt:
3192 return graph()->NewNode(jsgraph()->machine()->F32x4Sqrt(), inputs[0]);
3193 case wasm::kExprF32x4RecipApprox: 3191 case wasm::kExprF32x4RecipApprox:
3194 return graph()->NewNode(jsgraph()->machine()->F32x4RecipApprox(), 3192 return graph()->NewNode(jsgraph()->machine()->F32x4RecipApprox(),
3195 inputs[0]); 3193 inputs[0]);
3196 case wasm::kExprF32x4RecipSqrtApprox: 3194 case wasm::kExprF32x4RecipSqrtApprox:
3197 return graph()->NewNode(jsgraph()->machine()->F32x4RecipSqrtApprox(), 3195 return graph()->NewNode(jsgraph()->machine()->F32x4RecipSqrtApprox(),
3198 inputs[0]); 3196 inputs[0]);
3199 case wasm::kExprF32x4Add: 3197 case wasm::kExprF32x4Add:
3200 return graph()->NewNode(jsgraph()->machine()->F32x4Add(), inputs[0], 3198 return graph()->NewNode(jsgraph()->machine()->F32x4Add(), inputs[0],
3201 inputs[1]); 3199 inputs[1]);
3202 case wasm::kExprF32x4Sub: 3200 case wasm::kExprF32x4Sub:
3203 return graph()->NewNode(jsgraph()->machine()->F32x4Sub(), inputs[0], 3201 return graph()->NewNode(jsgraph()->machine()->F32x4Sub(), inputs[0],
3204 inputs[1]); 3202 inputs[1]);
3205 case wasm::kExprF32x4Mul: 3203 case wasm::kExprF32x4Mul:
3206 return graph()->NewNode(jsgraph()->machine()->F32x4Mul(), inputs[0], 3204 return graph()->NewNode(jsgraph()->machine()->F32x4Mul(), inputs[0],
3207 inputs[1]); 3205 inputs[1]);
3208 case wasm::kExprF32x4Div:
3209 return graph()->NewNode(jsgraph()->machine()->F32x4Div(), inputs[0],
3210 inputs[1]);
3211 case wasm::kExprF32x4Min: 3206 case wasm::kExprF32x4Min:
3212 return graph()->NewNode(jsgraph()->machine()->F32x4Min(), inputs[0], 3207 return graph()->NewNode(jsgraph()->machine()->F32x4Min(), inputs[0],
3213 inputs[1]); 3208 inputs[1]);
3214 case wasm::kExprF32x4Max: 3209 case wasm::kExprF32x4Max:
3215 return graph()->NewNode(jsgraph()->machine()->F32x4Max(), inputs[0], 3210 return graph()->NewNode(jsgraph()->machine()->F32x4Max(), inputs[0],
3216 inputs[1]); 3211 inputs[1]);
3217 case wasm::kExprF32x4RecipRefine:
3218 return graph()->NewNode(jsgraph()->machine()->F32x4RecipRefine(),
3219 inputs[0], inputs[1]);
3220 case wasm::kExprF32x4RecipSqrtRefine:
3221 return graph()->NewNode(jsgraph()->machine()->F32x4RecipSqrtRefine(),
3222 inputs[0], inputs[1]);
3223 case wasm::kExprF32x4Eq: 3212 case wasm::kExprF32x4Eq:
3224 return graph()->NewNode(jsgraph()->machine()->F32x4Eq(), inputs[0], 3213 return graph()->NewNode(jsgraph()->machine()->F32x4Eq(), inputs[0],
3225 inputs[1]); 3214 inputs[1]);
3226 case wasm::kExprF32x4Ne: 3215 case wasm::kExprF32x4Ne:
3227 return graph()->NewNode(jsgraph()->machine()->F32x4Ne(), inputs[0], 3216 return graph()->NewNode(jsgraph()->machine()->F32x4Ne(), inputs[0],
3228 inputs[1]); 3217 inputs[1]);
3229 case wasm::kExprF32x4Lt: 3218 case wasm::kExprF32x4Lt:
3230 return graph()->NewNode(jsgraph()->machine()->F32x4Lt(), inputs[0], 3219 return graph()->NewNode(jsgraph()->machine()->F32x4Lt(), inputs[0],
3231 inputs[1]); 3220 inputs[1]);
3232 case wasm::kExprF32x4Le: 3221 case wasm::kExprF32x4Le:
(...skipping 857 matching lines...) Expand 10 before | Expand all | Expand 10 after
4090 wasm::ModuleBytesEnv* module_env, const wasm::WasmFunction* function) { 4079 wasm::ModuleBytesEnv* module_env, const wasm::WasmFunction* function) {
4091 WasmCompilationUnit unit(isolate, module_env, function); 4080 WasmCompilationUnit unit(isolate, module_env, function);
4092 unit.InitializeHandles(); 4081 unit.InitializeHandles();
4093 unit.ExecuteCompilation(); 4082 unit.ExecuteCompilation();
4094 return unit.FinishCompilation(thrower); 4083 return unit.FinishCompilation(thrower);
4095 } 4084 }
4096 4085
4097 } // namespace compiler 4086 } // namespace compiler
4098 } // namespace internal 4087 } // namespace internal
4099 } // namespace v8 4088 } // namespace v8
OLDNEW
« no previous file with comments | « src/compiler/simd-scalar-lowering.cc ('k') | src/wasm/wasm-opcodes.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698