in postaloc.cpp:749
// If the value occupies a register pair, record same info
// in both registers.
OptoReg::Name nreg_lo = OptoReg::add(nreg,-1);
if( RegMask::can_represent(nreg_lo) && // Either a spill slot, or
!lrgs(lidx).mask().Member(nreg_lo) ) { // Nearly always adjacent
// Sparc occasionally has non-adjacent pairs.
// Find the actual other value
RegMask tmp = lrgs(lidx).mask();
tmp.Remove(nreg);
nreg_lo = tmp.find_first_elem();
}
this piece of code need revisit if it is sparc only after solaris removal.