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

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

Issue 2713613005: [wasm]implement simd lowering for F32x4 and I32x4 binops (Closed)
Patch Set: rebase Created 3 years, 9 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
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 3368 matching lines...) Expand 10 before | Expand all | Expand 10 after
3379 case wasm::kExprF32x4Abs: 3379 case wasm::kExprF32x4Abs:
3380 return graph()->NewNode(jsgraph()->machine()->Float32x4Abs(), inputs[0]); 3380 return graph()->NewNode(jsgraph()->machine()->Float32x4Abs(), inputs[0]);
3381 case wasm::kExprF32x4Neg: 3381 case wasm::kExprF32x4Neg:
3382 return graph()->NewNode(jsgraph()->machine()->Float32x4Neg(), inputs[0]); 3382 return graph()->NewNode(jsgraph()->machine()->Float32x4Neg(), inputs[0]);
3383 case wasm::kExprF32x4Add: 3383 case wasm::kExprF32x4Add:
3384 return graph()->NewNode(jsgraph()->machine()->Float32x4Add(), inputs[0], 3384 return graph()->NewNode(jsgraph()->machine()->Float32x4Add(), inputs[0],
3385 inputs[1]); 3385 inputs[1]);
3386 case wasm::kExprF32x4Sub: 3386 case wasm::kExprF32x4Sub:
3387 return graph()->NewNode(jsgraph()->machine()->Float32x4Sub(), inputs[0], 3387 return graph()->NewNode(jsgraph()->machine()->Float32x4Sub(), inputs[0],
3388 inputs[1]); 3388 inputs[1]);
3389 case wasm::kExprF32x4Mul:
3390 return graph()->NewNode(jsgraph()->machine()->Float32x4Mul(), inputs[0],
3391 inputs[1]);
3392 case wasm::kExprF32x4Div:
3393 return graph()->NewNode(jsgraph()->machine()->Float32x4Div(), inputs[0],
3394 inputs[1]);
3395 case wasm::kExprF32x4Min:
3396 return graph()->NewNode(jsgraph()->machine()->Float32x4Min(), inputs[0],
3397 inputs[1]);
3398 case wasm::kExprF32x4Max:
3399 return graph()->NewNode(jsgraph()->machine()->Float32x4Max(), inputs[0],
3400 inputs[1]);
3389 case wasm::kExprF32x4Eq: 3401 case wasm::kExprF32x4Eq:
3390 return graph()->NewNode(jsgraph()->machine()->Float32x4Equal(), inputs[0], 3402 return graph()->NewNode(jsgraph()->machine()->Float32x4Equal(), inputs[0],
3391 inputs[1]); 3403 inputs[1]);
3392 case wasm::kExprF32x4Ne: 3404 case wasm::kExprF32x4Ne:
3393 return graph()->NewNode(jsgraph()->machine()->Float32x4NotEqual(), 3405 return graph()->NewNode(jsgraph()->machine()->Float32x4NotEqual(),
3394 inputs[0], inputs[1]); 3406 inputs[0], inputs[1]);
3395 case wasm::kExprI32x4Splat: 3407 case wasm::kExprI32x4Splat:
3396 return graph()->NewNode(jsgraph()->machine()->Int32x4Splat(), inputs[0]); 3408 return graph()->NewNode(jsgraph()->machine()->Int32x4Splat(), inputs[0]);
3397 case wasm::kExprI32x4SConvertF32x4: 3409 case wasm::kExprI32x4SConvertF32x4:
3398 return graph()->NewNode(jsgraph()->machine()->Int32x4FromFloat32x4(), 3410 return graph()->NewNode(jsgraph()->machine()->Int32x4FromFloat32x4(),
(...skipping 746 matching lines...) Expand 10 before | Expand all | Expand 10 after
4145 function_->code_end_offset - function_->code_start_offset, 4157 function_->code_end_offset - function_->code_start_offset,
4146 codegen_ms); 4158 codegen_ms);
4147 } 4159 }
4148 4160
4149 return code; 4161 return code;
4150 } 4162 }
4151 4163
4152 } // namespace compiler 4164 } // namespace compiler
4153 } // namespace internal 4165 } // namespace internal
4154 } // namespace v8 4166 } // namespace v8
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698