< prev index next >
src/share/vm/opto/reg_split.cpp
Print this page
@@ -78,13 +78,13 @@
const RegMask *w_o_mask;
int num_regs = RegMask::num_registers(ireg);
bool is_vect = RegMask::is_vector(ireg);
if( w_mask->overlap( *o_mask ) && // Overlap AND
- ((num_regs == 1) // Single use or aligned
+ (num_regs == 1 // Single use or aligned
|| is_vect // or vector
- || !is_vect && o_mask->is_aligned_pairs()) ) {
+ || (!is_vect && o_mask->is_aligned_pairs())) ) {
assert(!is_vect || o_mask->is_aligned_sets(num_regs), "vectors are aligned");
// Don't come here for mis-aligned doubles
w_o_mask = w_mask;
} else { // wide ideal mask does not overlap with o_mask
// Mis-aligned doubles come here and XMM->FPR moves on x86.
@@ -1031,11 +1031,11 @@
// bound use if we can't rematerialize the def, or if we need the
// split to form a misaligned pair.
if( !umask.is_AllStack() &&
(int)umask.Size() <= lrgs(useidx).num_regs() &&
(!def->rematerialize() ||
- !is_vect && umask.is_misaligned_pair())) {
+ (!is_vect && umask.is_misaligned_pair()))) {
// These need a Split regardless of overlap or pressure
// SPLIT - NO DEF - NO CISC SPILL
maxlrg = split_USE(MachSpillCopyNode::Bound, def,b,n,inpidx,maxlrg,dup,false, splits,slidx);
// If it wasn't split bail
if (!maxlrg) {
@@ -1186,11 +1186,11 @@
bool defup = dmask.is_UP();
uint ireg = n->ideal_reg();
bool is_vect = RegMask::is_vector(ireg);
// Only split at Def if this is a HRP block or bound (and spilled once)
if( !n->rematerialize() &&
- (((dmask.is_bound(ireg) || !is_vect && dmask.is_misaligned_pair()) &&
+ (((dmask.is_bound(ireg) || (!is_vect && dmask.is_misaligned_pair())) &&
(deflrg._direct_conflict || deflrg._must_spill)) ||
// Check for LRG being up in a register and we are inside a high
// pressure area. Spill it down immediately.
(defup && is_high_pressure(b,&deflrg,insidx))) ) {
assert( !n->rematerialize(), "" );
< prev index next >