equal
deleted
inserted
replaced
25 #ifndef SHARE_VM_OPTO_OPCODES_HPP |
25 #ifndef SHARE_VM_OPTO_OPCODES_HPP |
26 #define SHARE_VM_OPTO_OPCODES_HPP |
26 #define SHARE_VM_OPTO_OPCODES_HPP |
27 |
27 |
28 // Build a big enum of class names to give them dense integer indices |
28 // Build a big enum of class names to give them dense integer indices |
29 #define macro(x) Op_##x, |
29 #define macro(x) Op_##x, |
|
30 #define optionalmacro(x) macro(x) |
30 enum Opcodes { |
31 enum Opcodes { |
31 Op_Node = 0, |
32 Op_Node = 0, |
32 macro(Set) // Instruction selection match rule |
33 macro(Set) // Instruction selection match rule |
33 macro(RegN) // Machine narrow oop register |
34 macro(RegN) // Machine narrow oop register |
34 macro(RegI) // Machine integer register |
35 macro(RegI) // Machine integer register |
45 _last_machine_leaf, // Split between regular opcodes and machine |
46 _last_machine_leaf, // Split between regular opcodes and machine |
46 #include "classes.hpp" |
47 #include "classes.hpp" |
47 _last_opcode |
48 _last_opcode |
48 }; |
49 }; |
49 #undef macro |
50 #undef macro |
|
51 #undef optionalmacro |
50 |
52 |
51 // Table of names, indexed by Opcode |
53 // Table of names, indexed by Opcode |
52 extern const char *NodeClassNames[]; |
54 extern const char *NodeClassNames[]; |
53 |
55 |
54 #endif // SHARE_VM_OPTO_OPCODES_HPP |
56 #endif // SHARE_VM_OPTO_OPCODES_HPP |