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/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 Loading... |
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 Loading... |
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 |
OLD | NEW |