OLD | NEW |
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/isolate-inl.h" | 9 #include "src/isolate-inl.h" |
10 | 10 |
(...skipping 3226 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3237 switch (opcode) { | 3237 switch (opcode) { |
3238 case wasm::kExprF32x4Splat: | 3238 case wasm::kExprF32x4Splat: |
3239 return graph()->NewNode(jsgraph()->machine()->CreateFloat32x4(), | 3239 return graph()->NewNode(jsgraph()->machine()->CreateFloat32x4(), |
3240 inputs[0], inputs[0], inputs[0], inputs[0]); | 3240 inputs[0], inputs[0], inputs[0], inputs[0]); |
3241 case wasm::kExprF32x4FromInt32x4: | 3241 case wasm::kExprF32x4FromInt32x4: |
3242 return graph()->NewNode(jsgraph()->machine()->Float32x4FromInt32x4(), | 3242 return graph()->NewNode(jsgraph()->machine()->Float32x4FromInt32x4(), |
3243 inputs[0]); | 3243 inputs[0]); |
3244 case wasm::kExprF32x4FromUint32x4: | 3244 case wasm::kExprF32x4FromUint32x4: |
3245 return graph()->NewNode(jsgraph()->machine()->Float32x4FromUint32x4(), | 3245 return graph()->NewNode(jsgraph()->machine()->Float32x4FromUint32x4(), |
3246 inputs[0]); | 3246 inputs[0]); |
| 3247 case wasm::kExprF32x4Abs: |
| 3248 return graph()->NewNode(jsgraph()->machine()->Float32x4Abs(), inputs[0]); |
| 3249 case wasm::kExprF32x4Neg: |
| 3250 return graph()->NewNode(jsgraph()->machine()->Float32x4Neg(), inputs[0]); |
3247 case wasm::kExprF32x4Add: | 3251 case wasm::kExprF32x4Add: |
3248 return graph()->NewNode(jsgraph()->machine()->Float32x4Add(), inputs[0], | 3252 return graph()->NewNode(jsgraph()->machine()->Float32x4Add(), inputs[0], |
3249 inputs[1]); | 3253 inputs[1]); |
3250 case wasm::kExprF32x4Sub: | 3254 case wasm::kExprF32x4Sub: |
3251 return graph()->NewNode(jsgraph()->machine()->Float32x4Sub(), inputs[0], | 3255 return graph()->NewNode(jsgraph()->machine()->Float32x4Sub(), inputs[0], |
3252 inputs[1]); | 3256 inputs[1]); |
| 3257 case wasm::kExprF32x4Eq: |
| 3258 return graph()->NewNode(jsgraph()->machine()->Float32x4Equal(), inputs[0], |
| 3259 inputs[1]); |
| 3260 case wasm::kExprF32x4Ne: |
| 3261 return graph()->NewNode(jsgraph()->machine()->Float32x4NotEqual(), |
| 3262 inputs[0], inputs[1]); |
3253 case wasm::kExprI32x4Splat: | 3263 case wasm::kExprI32x4Splat: |
3254 return graph()->NewNode(jsgraph()->machine()->CreateInt32x4(), inputs[0], | 3264 return graph()->NewNode(jsgraph()->machine()->CreateInt32x4(), inputs[0], |
3255 inputs[0], inputs[0], inputs[0]); | 3265 inputs[0], inputs[0], inputs[0]); |
3256 case wasm::kExprI32x4FromFloat32x4: | 3266 case wasm::kExprI32x4FromFloat32x4: |
3257 return graph()->NewNode(jsgraph()->machine()->Int32x4FromFloat32x4(), | 3267 return graph()->NewNode(jsgraph()->machine()->Int32x4FromFloat32x4(), |
3258 inputs[0]); | 3268 inputs[0]); |
3259 case wasm::kExprUi32x4FromFloat32x4: | 3269 case wasm::kExprUi32x4FromFloat32x4: |
3260 return graph()->NewNode(jsgraph()->machine()->Uint32x4FromFloat32x4(), | 3270 return graph()->NewNode(jsgraph()->machine()->Uint32x4FromFloat32x4(), |
3261 inputs[0]); | 3271 inputs[0]); |
3262 case wasm::kExprI32x4Add: | 3272 case wasm::kExprI32x4Add: |
(...skipping 420 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3683 Smi::FromInt(instruction.instr_offset)); | 3693 Smi::FromInt(instruction.instr_offset)); |
3684 fn_protected->set(Code::kTrapDataSize * i + Code::kTrapLandingOffset, | 3694 fn_protected->set(Code::kTrapDataSize * i + Code::kTrapLandingOffset, |
3685 Smi::FromInt(instruction.landing_offset)); | 3695 Smi::FromInt(instruction.landing_offset)); |
3686 } | 3696 } |
3687 return fn_protected; | 3697 return fn_protected; |
3688 } | 3698 } |
3689 | 3699 |
3690 } // namespace compiler | 3700 } // namespace compiler |
3691 } // namespace internal | 3701 } // namespace internal |
3692 } // namespace v8 | 3702 } // namespace v8 |
OLD | NEW |