--- old/src/cpu/sparc/vm/assembler_sparc.hpp 2010-11-25 07:05:47.535479000 -0800 +++ new/src/cpu/sparc/vm/assembler_sparc.hpp 2010-11-25 07:05:47.314641000 -0800 @@ -834,6 +834,14 @@ return is_simm(d, 18); } + static CC heap_oop_cc() { +#ifdef _LP64 + if (UseCompressedOops) return icc; + else return xcc; +#endif + return icc; + } + enum ASIs { // page 72, v9 ASI_PRIMARY = 0x80, ASI_PRIMARY_LITTLE = 0x88 @@ -1798,6 +1806,10 @@ // branches that use right instruction for v8 vs. v9 inline void br( Condition c, bool a, Predict p, address d, relocInfo::relocType rt = relocInfo::none ); inline void br( Condition c, bool a, Predict p, Label& L ); + // branches on specific condition code (always icc on 32 bit) + inline void br( Condition c, CC cc, bool a, Predict p, address d, relocInfo::relocType rt = relocInfo::none ); + inline void br( Condition c, CC cc, bool a, Predict p, Label& L ); + inline void fb( Condition c, bool a, Predict p, address d, relocInfo::relocType rt = relocInfo::none ); inline void fb( Condition c, bool a, Predict p, Label& L );