comparison src/share/vm/opto/subnode.cpp @ 6848:8e47bac5643a

7054512: Compress class pointers after perm gen removal Summary: support of compress class pointers in the compilers. Reviewed-by: kvn, twisti
author roland
date Tue, 09 Oct 2012 10:11:38 +0200
parents e626685e9f6c
children cc32ccaaf47f
comparison
equal deleted inserted replaced
6847:65d07d9ee446 6848:8e47bac5643a
787 // Get the constant klass we are comparing to. 787 // Get the constant klass we are comparing to.
788 ciKlass* superklass = t2->klass(); 788 ciKlass* superklass = t2->klass();
789 789
790 // Now check for LoadKlass on left. 790 // Now check for LoadKlass on left.
791 Node* ldk1 = in(1); 791 Node* ldk1 = in(1);
792 if (ldk1->is_DecodeN()) { 792 if (ldk1->is_DecodeNKlass()) {
793 ldk1 = ldk1->in(1); 793 ldk1 = ldk1->in(1);
794 if (ldk1->Opcode() != Op_LoadNKlass ) 794 if (ldk1->Opcode() != Op_LoadNKlass )
795 return NULL; 795 return NULL;
796 } else if (ldk1->Opcode() != Op_LoadKlass ) 796 } else if (ldk1->Opcode() != Op_LoadKlass )
797 return NULL; 797 return NULL;
812 } 812 }
813 } 813 }
814 814
815 // Check for a LoadKlass from primary supertype array. 815 // Check for a LoadKlass from primary supertype array.
816 // Any nested loadklass from loadklass+con must be from the p.s. array. 816 // Any nested loadklass from loadklass+con must be from the p.s. array.
817 if (ldk2->is_DecodeN()) { 817 if (ldk2->is_DecodeNKlass()) {
818 // Keep ldk2 as DecodeN since it could be used in CmpP below. 818 // Keep ldk2 as DecodeN since it could be used in CmpP below.
819 if (ldk2->in(1)->Opcode() != Op_LoadNKlass ) 819 if (ldk2->in(1)->Opcode() != Op_LoadNKlass )
820 return NULL; 820 return NULL;
821 } else if (ldk2->Opcode() != Op_LoadKlass) 821 } else if (ldk2->Opcode() != Op_LoadKlass)
822 return NULL; 822 return NULL;