Lines Matching defs:divisor

88 // Convert a division by constant divisor into an alternate Ideal graph.
90 static Node *transform_int_divide( PhaseGVN *phase, Node *dividend, jint divisor ) {
93 assert( divisor != 0 && divisor != min_jint,
94 "bad divisor for transforming to long multiply" );
96 bool d_pos = divisor >= 0;
97 jint d = d_pos ? divisor : -divisor;
195 // If the divisor is negative, swap the order of the input addends;
340 // Convert a division by constant divisor into an alternate Ideal graph.
342 static Node *transform_long_divide( PhaseGVN *phase, Node *dividend, jlong divisor ) {
344 assert( divisor != 0L && divisor != min_jlong,
345 "bad divisor for transforming to long multiply" );
347 bool d_pos = divisor >= 0;
348 jlong d = d_pos ? divisor : -divisor;
440 // If the divisor is negative, swap the order of the input addends;
457 // If the divisor is 1, we are an identity on the dividend.
476 jint i = ti->get_con(); // Get divisor
498 // x/x == 1 since we always generate the dynamic divisor check for 0.
509 // If divisor is a constant and not zero
556 // If the divisor is 1, we are an identity on the dividend.
575 jlong l = tl->get_con(); // Get divisor
597 // x/x == 1 since we always generate the dynamic divisor check for 0.
608 // If divisor is a constant and not zero
680 // If divisor is a constant and not zero, divide them numbers
699 // If the divisor is 1, we are an identity on the dividend.
774 // If divisor is a constant and not zero, divide them numbers
794 // If the divisor is 1, we are an identity on the dividend.
874 Node *divisor = in(2); // Also is mask
879 Node *xl = phase->transform( new (phase->C) AndINode(x,divisor) );
886 // int hack_res = (i >= 0) ? divisor : 1;
889 Node *cmov1= phase->transform( new (phase->C) CMoveINode(bol1, phase->intcon(1), divisor, TypeInt::POS) );
890 // if( x >= hack_res ) x -= divisor;
891 Node *sub = phase->transform( new (phase->C) SubINode( x, divisor ) );
1047 Node *divisor = in(2); // Also is mask
1052 Node *xl = phase->transform( new (phase->C) AndLNode(x,divisor) );
1059 // long hack_res = (i >= 0) ? divisor : CONST64(1);
1062 Node *cmov1= phase->transform( new (phase->C) CMoveLNode(bol1, phase->longcon(1), divisor, TypeLong::LONG) );
1063 // if( x >= hack_res ) x -= divisor;
1064 Node *sub = phase->transform( new (phase->C) SubLNode( x, divisor ) );
1208 // If an operand is infinity or the divisor is +/- zero, punt.
1252 // If an operand is infinity or the divisor is +/- zero, punt.
1268 DivModNode::DivModNode( Node *c, Node *dividend, Node *divisor ) : MultiNode(3) {
1271 init_req(2, divisor);