< prev index next >

src/share/vm/opto/subnode.cpp

Print this page




1493   const Type *t1 = phase->type( in(1) );
1494   if( t1 == Type::TOP ) return Type::TOP;
1495   if( t1->base() != Type::DoubleCon ) return Type::DOUBLE;
1496   double d = t1->getd();
1497   return TypeD::make( StubRoutines::intrinsic_sin( d ) );
1498 }
1499 
1500 //=============================================================================
1501 //------------------------------Value------------------------------------------
1502 // Compute tan
1503 const Type *TanDNode::Value( PhaseTransform *phase ) const {
1504   const Type *t1 = phase->type( in(1) );
1505   if( t1 == Type::TOP ) return Type::TOP;
1506   if( t1->base() != Type::DoubleCon ) return Type::DOUBLE;
1507   double d = t1->getd();
1508   return TypeD::make( StubRoutines::intrinsic_tan( d ) );
1509 }
1510 
1511 //=============================================================================
1512 //------------------------------Value------------------------------------------
1513 // Compute log
1514 const Type *LogDNode::Value( PhaseTransform *phase ) const {
1515   const Type *t1 = phase->type( in(1) );
1516   if( t1 == Type::TOP ) return Type::TOP;
1517   if( t1->base() != Type::DoubleCon ) return Type::DOUBLE;
1518   double d = t1->getd();
1519   return TypeD::make( StubRoutines::intrinsic_log( d ) );
1520 }
1521 
1522 //=============================================================================
1523 //------------------------------Value------------------------------------------
1524 // Compute log10
1525 const Type *Log10DNode::Value( PhaseTransform *phase ) const {
1526   const Type *t1 = phase->type( in(1) );
1527   if( t1 == Type::TOP ) return Type::TOP;
1528   if( t1->base() != Type::DoubleCon ) return Type::DOUBLE;
1529   double d = t1->getd();
1530   return TypeD::make( StubRoutines::intrinsic_log10( d ) );
1531 }
1532 
1533 //=============================================================================
1534 //------------------------------Value------------------------------------------
1535 // Compute pow
1536 const Type *PowDNode::Value( PhaseTransform *phase ) const {
1537   const Type *t1 = phase->type( in(1) );
1538   if( t1 == Type::TOP ) return Type::TOP;
1539   if( t1->base() != Type::DoubleCon ) return Type::DOUBLE;
1540   const Type *t2 = phase->type( in(2) );
1541   if( t2 == Type::TOP ) return Type::TOP;
1542   if( t2->base() != Type::DoubleCon ) return Type::DOUBLE;
1543   double d1 = t1->getd();


1493   const Type *t1 = phase->type( in(1) );
1494   if( t1 == Type::TOP ) return Type::TOP;
1495   if( t1->base() != Type::DoubleCon ) return Type::DOUBLE;
1496   double d = t1->getd();
1497   return TypeD::make( StubRoutines::intrinsic_sin( d ) );
1498 }
1499 
1500 //=============================================================================
1501 //------------------------------Value------------------------------------------
1502 // Compute tan
1503 const Type *TanDNode::Value( PhaseTransform *phase ) const {
1504   const Type *t1 = phase->type( in(1) );
1505   if( t1 == Type::TOP ) return Type::TOP;
1506   if( t1->base() != Type::DoubleCon ) return Type::DOUBLE;
1507   double d = t1->getd();
1508   return TypeD::make( StubRoutines::intrinsic_tan( d ) );
1509 }
1510 
1511 //=============================================================================
1512 //------------------------------Value------------------------------------------











1513 // Compute log10
1514 const Type *Log10DNode::Value( PhaseTransform *phase ) const {
1515   const Type *t1 = phase->type( in(1) );
1516   if( t1 == Type::TOP ) return Type::TOP;
1517   if( t1->base() != Type::DoubleCon ) return Type::DOUBLE;
1518   double d = t1->getd();
1519   return TypeD::make( StubRoutines::intrinsic_log10( d ) );
1520 }
1521 
1522 //=============================================================================
1523 //------------------------------Value------------------------------------------
1524 // Compute pow
1525 const Type *PowDNode::Value( PhaseTransform *phase ) const {
1526   const Type *t1 = phase->type( in(1) );
1527   if( t1 == Type::TOP ) return Type::TOP;
1528   if( t1->base() != Type::DoubleCon ) return Type::DOUBLE;
1529   const Type *t2 = phase->type( in(2) );
1530   if( t2 == Type::TOP ) return Type::TOP;
1531   if( t2->base() != Type::DoubleCon ) return Type::DOUBLE;
1532   double d1 = t1->getd();
< prev index next >