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 #ifndef V8_WASM_OPCODES_H_ | 5 #ifndef V8_WASM_OPCODES_H_ |
6 #define V8_WASM_OPCODES_H_ | 6 #define V8_WASM_OPCODES_H_ |
7 | 7 |
8 #include "src/machine-type.h" | 8 #include "src/machine-type.h" |
9 #include "src/signature.h" | 9 #include "src/signature.h" |
10 | 10 |
(...skipping 447 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
458 V(s_f, kAstS128, kAstF32) \ | 458 V(s_f, kAstS128, kAstF32) \ |
459 V(f_si, kAstF32, kAstS128, kAstI32) \ | 459 V(f_si, kAstF32, kAstS128, kAstI32) \ |
460 V(s_sif, kAstS128, kAstS128, kAstI32, kAstF32) \ | 460 V(s_sif, kAstS128, kAstS128, kAstI32, kAstF32) \ |
461 V(s_ss, kAstS128, kAstS128, kAstS128) \ | 461 V(s_ss, kAstS128, kAstS128, kAstS128) \ |
462 V(s_sss, kAstS128, kAstS128, kAstS128, kAstS128) \ | 462 V(s_sss, kAstS128, kAstS128, kAstS128, kAstS128) \ |
463 V(s_i, kAstS128, kAstI32) \ | 463 V(s_i, kAstS128, kAstI32) \ |
464 V(i_si, kAstI32, kAstS128, kAstI32) \ | 464 V(i_si, kAstI32, kAstS128, kAstI32) \ |
465 V(s_sii, kAstS128, kAstS128, kAstI32, kAstI32) \ | 465 V(s_sii, kAstS128, kAstS128, kAstI32, kAstI32) \ |
466 V(s_si, kAstS128, kAstS128, kAstI32) | 466 V(s_si, kAstS128, kAstS128, kAstI32) |
467 | 467 |
468 #define FOREACH_PREFIX(V) V(Simd, 0xe5) | |
469 | |
470 enum WasmOpcode { | 468 enum WasmOpcode { |
471 // Declare expression opcodes. | 469 // Declare expression opcodes. |
472 #define DECLARE_NAMED_ENUM(name, opcode, sig) kExpr##name = opcode, | 470 #define DECLARE_NAMED_ENUM(name, opcode, sig) kExpr##name = opcode, |
473 FOREACH_OPCODE(DECLARE_NAMED_ENUM) | 471 FOREACH_OPCODE(DECLARE_NAMED_ENUM) |
474 #undef DECLARE_NAMED_ENUM | 472 #undef DECLARE_NAMED_ENUM |
475 #define DECLARE_PREFIX(name, opcode) k##name##Prefix = opcode, | |
476 FOREACH_PREFIX(DECLARE_PREFIX) | |
477 #undef DECLARE_PREFIX | |
478 }; | 473 }; |
479 | 474 |
480 // The reason for a trap. | 475 // The reason for a trap. |
481 #define FOREACH_WASM_TRAPREASON(V) \ | 476 #define FOREACH_WASM_TRAPREASON(V) \ |
482 V(TrapUnreachable) \ | 477 V(TrapUnreachable) \ |
483 V(TrapMemOutOfBounds) \ | 478 V(TrapMemOutOfBounds) \ |
484 V(TrapDivByZero) \ | 479 V(TrapDivByZero) \ |
485 V(TrapDivUnrepresentable) \ | 480 V(TrapDivUnrepresentable) \ |
486 V(TrapRemByZero) \ | 481 V(TrapRemByZero) \ |
487 V(TrapFloatUnrepresentable) \ | 482 V(TrapFloatUnrepresentable) \ |
(...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
677 default: | 672 default: |
678 return "<unknown>"; | 673 return "<unknown>"; |
679 } | 674 } |
680 } | 675 } |
681 }; | 676 }; |
682 } // namespace wasm | 677 } // namespace wasm |
683 } // namespace internal | 678 } // namespace internal |
684 } // namespace v8 | 679 } // namespace v8 |
685 | 680 |
686 #endif // V8_WASM_OPCODES_H_ | 681 #endif // V8_WASM_OPCODES_H_ |
OLD | NEW |