src/share/vm/interpreter/bytecodeInterpreter.cpp

changeset 2324
6a2d73358ff7
parent 2314
f95d63e2154a
child 2462
8012aa3ccede
equal deleted inserted replaced
2323:3c205c4f1cda 2324:6a2d73358ff7
1321 CASE(_f2d): /* convert top of stack float to double */ 1321 CASE(_f2d): /* convert top of stack float to double */
1322 { 1322 {
1323 jfloat f; 1323 jfloat f;
1324 jdouble r; 1324 jdouble r;
1325 f = STACK_FLOAT(-1); 1325 f = STACK_FLOAT(-1);
1326 #ifdef IA64
1327 // IA64 gcc bug
1328 r = ( f == 0.0f ) ? (jdouble) f : (jdouble) f + ia64_double_zero;
1329 #else
1330 r = (jdouble) f; 1326 r = (jdouble) f;
1331 #endif
1332 MORE_STACK(-1); // POP 1327 MORE_STACK(-1); // POP
1333 SET_STACK_DOUBLE(r, 1); 1328 SET_STACK_DOUBLE(r, 1);
1334 UPDATE_PC_AND_TOS_AND_CONTINUE(1, 2); 1329 UPDATE_PC_AND_TOS_AND_CONTINUE(1, 2);
1335 } 1330 }
1336 1331

mercurial