mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-26 14:24:46 +02:00
6703890: Compressed Oops: add LoadNKlass node to generate narrow oops (32-bits) compare instructions
Add LoadNKlass and CMoveN nodes, use CmpN and ConN nodes to generate narrow oops compare instructions. Reviewed-by: never, rasbold
This commit is contained in:
parent
757229db71
commit
76035424de
29 changed files with 428 additions and 128 deletions
|
@ -1977,8 +1977,8 @@ class MacroAssembler: public Assembler {
|
|||
inline void movbool( bool boolconst, Register d) { mov( (int) boolconst, d); }
|
||||
|
||||
// klass oop manipulations if compressed
|
||||
void load_klass(Register src_oop, Register dst);
|
||||
void store_klass(Register dst_oop, Register s1);
|
||||
void load_klass(Register src_oop, Register klass);
|
||||
void store_klass(Register klass, Register dst_oop);
|
||||
|
||||
// oop manipulations
|
||||
void load_heap_oop(const Address& s, Register d, int offset = 0);
|
||||
|
@ -2103,6 +2103,8 @@ class MacroAssembler: public Assembler {
|
|||
inline void set_oop_constant( jobject obj, Register d ); // uses constant_oop_address
|
||||
inline void set_oop ( Address obj_addr ); // same as load_address
|
||||
|
||||
void set_narrow_oop( jobject obj, Register d );
|
||||
|
||||
// nop padding
|
||||
void align(int modulus);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue