Home | History | Annotate | Download | only in gcc

Lines Matching defs:vr0max

740 /* Intersect the two value-ranges { *VR0TYPE, *VR0MIN, *VR0MAX } and
741 { VR1TYPE, VR0MIN, VR0MAX } and store the result
742 in { *VR0TYPE, *VR0MIN, *VR0MAX }. This may not be the smallest
747 tree *vr0min, tree *vr0max,
752 bool maxeq = vrp_operand_equal_p (*vr0max, vr1max);
769 *vr0max = NULL_TREE;
774 else if (operand_less_p (*vr0max, vr1min) == 1
789 *vr0max = vr1max;
796 *vr0max = NULL_TREE;
802 if (TREE_CODE (*vr0max) == INTEGER_CST
804 && operand_less_p (*vr0max, vr1min) == 1
806 vr1min, *vr0max)))
807 *vr0max = vr1max;
817 else if ((maxeq || operand_less_p (vr1max, *vr0max) == 1)
827 *vr0max = vr1max;
851 *vr0max = vr1min;
854 *vr0max
858 *vr0max
864 && vrp_val_is_max (*vr0max))
868 *vr0max = vr1max;
882 *vr0max = NULL_TREE;
887 else if ((maxeq || operand_less_p (*vr0max, vr1max) == 1)
902 if (TREE_CODE (*vr0max) != INTEGER_CST)
903 *vr0min = *vr0max;
904 else if (TYPE_PRECISION (TREE_TYPE (*vr0max)) == 1
905 && !TYPE_UNSIGNED (TREE_TYPE (*vr0max)))
907 = int_const_binop (MINUS_EXPR, *vr0max,
908 build_int_cst (TREE_TYPE (*vr0max), -1));
911 = int_const_binop (PLUS_EXPR, *vr0max,
912 build_int_cst (TREE_TYPE (*vr0max), 1));
913 *vr0max = vr1max;
920 *vr0max = *vr0min;
923 *vr0max
927 *vr0max
940 else if (*vr0min == *vr0max
955 *vr0max = vr1max;
964 *vr0max = vr1max;
972 *vr0max = NULL_TREE;
977 else if ((operand_less_p (vr1min, *vr0max) == 1
978 || operand_equal_p (vr1min, *vr0max, 0))
980 && operand_less_p (*vr0max, vr1max) == 1)
985 *vr0max = vr1max;
993 *vr0max = int_const_binop (MINUS_EXPR, vr1min,
996 *vr0max = vr1min;
1002 if (TREE_CODE (*vr0max) == INTEGER_CST)
1003 *vr0min = int_const_binop (PLUS_EXPR, *vr0max,
1004 build_int_cst (TREE_TYPE (*vr0max), 1));
1006 *vr0min = *vr0max;
1007 *vr0max = vr1max;
1015 && operand_less_p (vr1max, *vr0max) == 1)
1023 *vr0max = vr1max;
1038 *vr0max = int_const_binop (MINUS_EXPR, *vr0min,
1041 *vr0max = *vr0min;
1053 /* As a fallback simply use { *VRTYPE, *VR0MIN, *VR0MAX } as
1063 *vr0max = vr1max;
1097 tree vr0max = vr0->max ();
1099 intersect_ranges (&vr0kind, &vr0min, &vr0max,
1112 vr0->set (vr0min, vr0max, vr0kind);
1115 /* Union the two value-ranges { *VR0TYPE, *VR0MIN, *VR0MAX } and
1116 { VR1TYPE, VR0MIN, VR0MAX } and store the result
1117 in { *VR0TYPE, *VR0MIN, *VR0MAX }. This may not be the smallest
1122 tree *vr0min, tree *vr0max,
1127 int cmpmax = compare_values (*vr0max, vr1max);
1149 else if (operand_less_p (*vr0max, vr1min) == 1
1167 *vr0max = vr1max;
1173 if (operand_less_p (*vr0max, vr1min) == 1)
1176 if (TREE_CODE (*vr0max) == INTEGER_CST
1182 *vr0max,
1183 build_int_cst (TREE_TYPE (*vr0max), 1));
1191 *vr0max = max;
1194 *vr0max = vr1max;
1197 *vr0max = vr1max;
1205 && vrp_val_is_max (*vr0max))
1217 *vr0max = max;
1241 *vr0max
1248 *vr0max = int_const_binop (MINUS_EXPR, vr1min,
1272 *vr0max = vr1max;
1283 *vr0max = int_const_binop (MINUS_EXPR, *vr0min,
1287 else if (!maxeq && TREE_CODE (*vr0max) == INTEGER_CST)
1289 *vr0min = int_const_binop (PLUS_EXPR, *vr0max,
1290 build_int_cst (TREE_TYPE (*vr0max), 1));
1291 *vr0max = vr1max;
1305 && (operand_less_p (vr1min, *vr0max) == 1
1306 || operand_equal_p (vr1min, *vr0max, 0)))
1311 *vr0max = vr1max;
1319 *vr0max = int_const_binop (MINUS_EXPR, vr1min,
1327 if (TREE_CODE (*vr0max) == INTEGER_CST)
1330 *vr0min = int_const_binop (PLUS_EXPR, *vr0max,
1331 build_int_cst (TREE_TYPE (*vr0max), 1));
1332 *vr0max = vr1max;
1351 *vr0max = vr1max;
1367 *vr0max = int_const_binop (MINUS_EXPR, *vr0min,
1385 *vr0max = NULL_TREE;
1418 tree vr0max = vr0->max ();
1420 union_ranges (&vr0kind, &vr0min, &vr0max,
1437 vr0->set (vr0min, vr0max, vr0kind);