Mercurial > hg > graal-compiler
comparison src/share/vm/opto/loopopts.cpp @ 164:c436414a719e
6703890: Compressed Oops: add LoadNKlass node to generate narrow oops (32-bits) compare instructions
Summary: Add LoadNKlass and CMoveN nodes, use CmpN and ConN nodes to generate narrow oops compare instructions.
Reviewed-by: never, rasbold
author | kvn |
---|---|
date | Wed, 21 May 2008 13:46:23 -0700 |
parents | a761c2d3b76a |
children | d1605aabd0a1 8d191a7697e2 |
comparison
equal
deleted
inserted
replaced
163:885ed790ecf0 | 164:c436414a719e |
---|---|
462 cost++; // Probably encodes as 2 CMOV's | 462 cost++; // Probably encodes as 2 CMOV's |
463 case T_INT: // These all CMOV fine | 463 case T_INT: // These all CMOV fine |
464 case T_FLOAT: | 464 case T_FLOAT: |
465 case T_DOUBLE: | 465 case T_DOUBLE: |
466 case T_ADDRESS: // (RawPtr) | 466 case T_ADDRESS: // (RawPtr) |
467 case T_NARROWOOP: | |
467 cost++; | 468 cost++; |
468 break; | 469 break; |
469 case T_OBJECT: { // Base oops are OK, but not derived oops | 470 case T_OBJECT: { // Base oops are OK, but not derived oops |
470 const TypeOopPtr *tp = phi->type()->isa_oopptr(); | 471 const TypeOopPtr *tp = phi->type()->isa_oopptr(); |
471 // Derived pointers are Bad (tm): what's the Base (for GC purposes) of a | 472 // Derived pointers are Bad (tm): what's the Base (for GC purposes) of a |