src/share/vm/c1/c1_LIR.cpp

changeset 5290
87a6f2df28e2
parent 4947
acadb114c818
child 5353
b800986664f4
     1.1 --- a/src/share/vm/c1/c1_LIR.cpp	Fri Jun 14 16:33:34 2013 -0700
     1.2 +++ b/src/share/vm/c1/c1_LIR.cpp	Mon Jun 17 12:35:53 2013 -0400
     1.3 @@ -201,23 +201,24 @@
     1.4  
     1.5  #ifdef ASSERT
     1.6    if (!is_pointer() && !is_illegal()) {
     1.7 +    OprKind kindfield = kind_field(); // Factored out because of compiler bug, see 8002160
     1.8      switch (as_BasicType(type_field())) {
     1.9      case T_LONG:
    1.10 -      assert((kind_field() == cpu_register || kind_field() == stack_value) &&
    1.11 +      assert((kindfield == cpu_register || kindfield == stack_value) &&
    1.12               size_field() == double_size, "must match");
    1.13        break;
    1.14      case T_FLOAT:
    1.15        // FP return values can be also in CPU registers on ARM and PPC (softfp ABI)
    1.16 -      assert((kind_field() == fpu_register || kind_field() == stack_value
    1.17 -             ARM_ONLY(|| kind_field() == cpu_register)
    1.18 -             PPC_ONLY(|| kind_field() == cpu_register) ) &&
    1.19 +      assert((kindfield == fpu_register || kindfield == stack_value
    1.20 +             ARM_ONLY(|| kindfield == cpu_register)
    1.21 +             PPC_ONLY(|| kindfield == cpu_register) ) &&
    1.22               size_field() == single_size, "must match");
    1.23        break;
    1.24      case T_DOUBLE:
    1.25        // FP return values can be also in CPU registers on ARM and PPC (softfp ABI)
    1.26 -      assert((kind_field() == fpu_register || kind_field() == stack_value
    1.27 -             ARM_ONLY(|| kind_field() == cpu_register)
    1.28 -             PPC_ONLY(|| kind_field() == cpu_register) ) &&
    1.29 +      assert((kindfield == fpu_register || kindfield == stack_value
    1.30 +             ARM_ONLY(|| kindfield == cpu_register)
    1.31 +             PPC_ONLY(|| kindfield == cpu_register) ) &&
    1.32               size_field() == double_size, "must match");
    1.33        break;
    1.34      case T_BOOLEAN:
    1.35 @@ -229,7 +230,7 @@
    1.36      case T_OBJECT:
    1.37      case T_METADATA:
    1.38      case T_ARRAY:
    1.39 -      assert((kind_field() == cpu_register || kind_field() == stack_value) &&
    1.40 +      assert((kindfield == cpu_register || kindfield == stack_value) &&
    1.41               size_field() == single_size, "must match");
    1.42        break;
    1.43  

mercurial