Merge

Tue, 13 Mar 2012 15:37:50 -0700

author
collins
date
Tue, 13 Mar 2012 15:37:50 -0700
changeset 3671
21b94feb697c
parent 3670
f7c4174b33ba
parent 3637
61b82be3b1ff
child 3672
6522ad563f99

Merge

     1.1 --- a/src/cpu/sparc/vm/sparc.ad	Tue Mar 13 13:50:48 2012 -0400
     1.2 +++ b/src/cpu/sparc/vm/sparc.ad	Tue Mar 13 15:37:50 2012 -0700
     1.3 @@ -1832,6 +1832,8 @@
     1.4    case Op_CountLeadingZerosL:
     1.5    case Op_CountTrailingZerosI:
     1.6    case Op_CountTrailingZerosL:
     1.7 +  case Op_PopCountI:
     1.8 +  case Op_PopCountL:
     1.9      if (!UsePopCountInstruction)
    1.10        return false;
    1.11      break;
     2.1 --- a/src/cpu/x86/vm/x86_32.ad	Tue Mar 13 13:50:48 2012 -0400
     2.2 +++ b/src/cpu/x86/vm/x86_32.ad	Tue Mar 13 15:37:50 2012 -0700
     2.3 @@ -1293,6 +1293,14 @@
     2.4    if (!has_match_rule(opcode))
     2.5      return false;
     2.6  
     2.7 +  switch (opcode) {
     2.8 +    case Op_PopCountI:
     2.9 +    case Op_PopCountL:
    2.10 +      if (!UsePopCountInstruction)
    2.11 +        return false;
    2.12 +    break;
    2.13 +  }
    2.14 +  
    2.15    return true;  // Per default match rules are supported.
    2.16  }
    2.17  
     3.1 --- a/src/cpu/x86/vm/x86_64.ad	Tue Mar 13 13:50:48 2012 -0400
     3.2 +++ b/src/cpu/x86/vm/x86_64.ad	Tue Mar 13 15:37:50 2012 -0700
     3.3 @@ -1714,6 +1714,14 @@
     3.4    if (!has_match_rule(opcode))
     3.5      return false;
     3.6  
     3.7 +  switch (opcode) {
     3.8 +    case Op_PopCountI:
     3.9 +    case Op_PopCountL:
    3.10 +      if (!UsePopCountInstruction)
    3.11 +        return false;
    3.12 +    break;
    3.13 +  }
    3.14 +
    3.15    return true;  // Per default match rules are supported.
    3.16  }
    3.17  
     4.1 --- a/src/share/vm/opto/library_call.cpp	Tue Mar 13 13:50:48 2012 -0400
     4.2 +++ b/src/share/vm/opto/library_call.cpp	Tue Mar 13 15:37:50 2012 -0700
     4.3 @@ -338,11 +338,11 @@
     4.4      break;
     4.5  
     4.6    case vmIntrinsics::_bitCount_i:
     4.7 -    if (!Matcher::has_match_rule(Op_PopCountI)) return NULL;
     4.8 +    if (!Matcher::match_rule_supported(Op_PopCountI)) return NULL;
     4.9      break;
    4.10  
    4.11    case vmIntrinsics::_bitCount_l:
    4.12 -    if (!Matcher::has_match_rule(Op_PopCountL)) return NULL;
    4.13 +    if (!Matcher::match_rule_supported(Op_PopCountL)) return NULL;
    4.14      break;
    4.15  
    4.16    case vmIntrinsics::_numberOfLeadingZeros_i:

mercurial