< prev index next > src/hotspot/share/interpreter/bytecode.hpp
Print this page
// Testers
bool is_getfield() const { return java_code() == Bytecodes::_getfield; }
bool is_putfield() const { return java_code() == Bytecodes::_putfield; }
bool is_getstatic() const { return java_code() == Bytecodes::_getstatic; }
bool is_putstatic() const { return java_code() == Bytecodes::_putstatic; }
bool is_getter() const { return is_getfield() || is_getstatic(); }
bool is_static() const { return is_getstatic() || is_putstatic(); }
bool is_valid() const { return is_getfield() ||
is_putfield() ||
is_getstatic() ||
! is_putstatic(); }
void verify() const;
};
// Abstraction for checkcast
class Bytecode_checkcast: public Bytecode {
// Testers
bool is_getfield() const { return java_code() == Bytecodes::_getfield; }
bool is_putfield() const { return java_code() == Bytecodes::_putfield; }
bool is_getstatic() const { return java_code() == Bytecodes::_getstatic; }
bool is_putstatic() const { return java_code() == Bytecodes::_putstatic; }
+ bool is_withfield() const { return java_code() == Bytecodes::_withfield; }
bool is_getter() const { return is_getfield() || is_getstatic(); }
bool is_static() const { return is_getstatic() || is_putstatic(); }
bool is_valid() const { return is_getfield() ||
is_putfield() ||
is_getstatic() ||
! is_putstatic() ||
+ is_withfield(); }
void verify() const;
};
// Abstraction for checkcast
class Bytecode_checkcast: public Bytecode {
// Returns index
long index() const { return get_index_u2(Bytecodes::_new); };
};
+ class Bytecode_aconst_init: public Bytecode {
+ public:
+ Bytecode_aconst_init(Method* method, address bcp): Bytecode(method, bcp) { verify(); }
+ void verify() const { assert(java_code() == Bytecodes::_aconst_init, "check aconst_init"); }
+
+ // Returns index
+ long index() const { return get_index_u2(Bytecodes::_aconst_init); };
+ };
+
class Bytecode_multianewarray: public Bytecode {
public:
Bytecode_multianewarray(Method* method, address bcp): Bytecode(method, bcp) { verify(); }
void verify() const { assert(java_code() == Bytecodes::_multianewarray, "check new"); }
< prev index next >