1.1 --- a/src/cpu/sparc/vm/sharedRuntime_sparc.cpp Thu Feb 11 12:42:12 2016 +0100 1.2 +++ b/src/cpu/sparc/vm/sharedRuntime_sparc.cpp Mon Feb 29 16:08:11 2016 +0100 1.3 @@ -1326,9 +1326,12 @@ 1.4 } 1.5 } else if (dst.first()->is_stack()) { 1.6 // reg to stack 1.7 - __ st_ptr(src.first()->as_Register(), SP, reg2offset(dst.first()) + STACK_BIAS); 1.8 + // Some compilers (gcc) expect a clean 32 bit value on function entry 1.9 + __ signx(src.first()->as_Register(), L5); 1.10 + __ st_ptr(L5, SP, reg2offset(dst.first()) + STACK_BIAS); 1.11 } else { 1.12 - __ mov(src.first()->as_Register(), dst.first()->as_Register()); 1.13 + // Some compilers (gcc) expect a clean 32 bit value on function entry 1.14 + __ signx(src.first()->as_Register(), dst.first()->as_Register()); 1.15 } 1.16 } 1.17