1.1 --- a/src/share/vm/opto/subnode.cpp Wed Jan 13 23:05:52 2010 -0800 1.2 +++ b/src/share/vm/opto/subnode.cpp Fri Jan 15 11:53:33 2010 -0800 1.3 @@ -1,5 +1,5 @@ 1.4 /* 1.5 - * Copyright 1997-2009 Sun Microsystems, Inc. All Rights Reserved. 1.6 + * Copyright 1997-2010 Sun Microsystems, Inc. All Rights Reserved. 1.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 1.8 * 1.9 * This code is free software; you can redistribute it and/or modify it 1.10 @@ -1244,8 +1244,7 @@ 1.11 if( t1 == Type::TOP ) return Type::TOP; 1.12 if( t1->base() != Type::DoubleCon ) return Type::DOUBLE; 1.13 double d = t1->getd(); 1.14 - if( d < 0.0 ) return Type::DOUBLE; 1.15 - return TypeD::make( SharedRuntime::dcos( d ) ); 1.16 + return TypeD::make( StubRoutines::intrinsic_cos( d ) ); 1.17 } 1.18 1.19 //============================================================================= 1.20 @@ -1256,8 +1255,7 @@ 1.21 if( t1 == Type::TOP ) return Type::TOP; 1.22 if( t1->base() != Type::DoubleCon ) return Type::DOUBLE; 1.23 double d = t1->getd(); 1.24 - if( d < 0.0 ) return Type::DOUBLE; 1.25 - return TypeD::make( SharedRuntime::dsin( d ) ); 1.26 + return TypeD::make( StubRoutines::intrinsic_sin( d ) ); 1.27 } 1.28 1.29 //============================================================================= 1.30 @@ -1268,8 +1266,7 @@ 1.31 if( t1 == Type::TOP ) return Type::TOP; 1.32 if( t1->base() != Type::DoubleCon ) return Type::DOUBLE; 1.33 double d = t1->getd(); 1.34 - if( d < 0.0 ) return Type::DOUBLE; 1.35 - return TypeD::make( SharedRuntime::dtan( d ) ); 1.36 + return TypeD::make( StubRoutines::intrinsic_tan( d ) ); 1.37 } 1.38 1.39 //============================================================================= 1.40 @@ -1280,8 +1277,7 @@ 1.41 if( t1 == Type::TOP ) return Type::TOP; 1.42 if( t1->base() != Type::DoubleCon ) return Type::DOUBLE; 1.43 double d = t1->getd(); 1.44 - if( d < 0.0 ) return Type::DOUBLE; 1.45 - return TypeD::make( SharedRuntime::dlog( d ) ); 1.46 + return TypeD::make( StubRoutines::intrinsic_log( d ) ); 1.47 } 1.48 1.49 //============================================================================= 1.50 @@ -1292,8 +1288,7 @@ 1.51 if( t1 == Type::TOP ) return Type::TOP; 1.52 if( t1->base() != Type::DoubleCon ) return Type::DOUBLE; 1.53 double d = t1->getd(); 1.54 - if( d < 0.0 ) return Type::DOUBLE; 1.55 - return TypeD::make( SharedRuntime::dlog10( d ) ); 1.56 + return TypeD::make( StubRoutines::intrinsic_log10( d ) ); 1.57 } 1.58 1.59 //============================================================================= 1.60 @@ -1304,8 +1299,7 @@ 1.61 if( t1 == Type::TOP ) return Type::TOP; 1.62 if( t1->base() != Type::DoubleCon ) return Type::DOUBLE; 1.63 double d = t1->getd(); 1.64 - if( d < 0.0 ) return Type::DOUBLE; 1.65 - return TypeD::make( SharedRuntime::dexp( d ) ); 1.66 + return TypeD::make( StubRoutines::intrinsic_exp( d ) ); 1.67 } 1.68 1.69 1.70 @@ -1323,5 +1317,5 @@ 1.71 double d2 = t2->getd(); 1.72 if( d1 < 0.0 ) return Type::DOUBLE; 1.73 if( d2 < 0.0 ) return Type::DOUBLE; 1.74 - return TypeD::make( SharedRuntime::dpow( d1, d2 ) ); 1.75 + return TypeD::make( StubRoutines::intrinsic_pow( d1, d2 ) ); 1.76 }