6875026: CTW failure jdk6_18/hotspot/src/share/vm/c1/c1_LinearScan.cpp:5486

Wed, 01 Dec 2010 15:47:52 -0800

author
never
date
Wed, 01 Dec 2010 15:47:52 -0800
changeset 2347
0cb042fd2d4b
parent 2346
4da76e32c0be
child 2348
bbefa3ca1543

6875026: CTW failure jdk6_18/hotspot/src/share/vm/c1/c1_LinearScan.cpp:5486
Reviewed-by: kvn, iveresov

src/cpu/x86/vm/c1_LIRGenerator_x86.cpp file | annotate | diff | comparison | revisions
     1.1 --- a/src/cpu/x86/vm/c1_LIRGenerator_x86.cpp	Wed Dec 01 10:16:31 2010 -0800
     1.2 +++ b/src/cpu/x86/vm/c1_LIRGenerator_x86.cpp	Wed Dec 01 15:47:52 2010 -0800
     1.3 @@ -874,6 +874,10 @@
     1.4  
     1.5  void LIRGenerator::do_ArrayCopy(Intrinsic* x) {
     1.6    assert(x->number_of_arguments() == 5, "wrong type");
     1.7 +
     1.8 +  // Make all state_for calls early since they can emit code
     1.9 +  CodeEmitInfo* info = state_for(x, x->state());
    1.10 +
    1.11    LIRItem src(x->argument_at(0), this);
    1.12    LIRItem src_pos(x->argument_at(1), this);
    1.13    LIRItem dst(x->argument_at(2), this);
    1.14 @@ -916,7 +920,6 @@
    1.15    ciArrayKlass* expected_type;
    1.16    arraycopy_helper(x, &flags, &expected_type);
    1.17  
    1.18 -  CodeEmitInfo* info = state_for(x, x->state()); // we may want to have stack (deoptimization?)
    1.19    __ arraycopy(src.result(), src_pos.result(), dst.result(), dst_pos.result(), length.result(), tmp, expected_type, flags, info); // does add_safepoint
    1.20  }
    1.21  

mercurial