- else
- if (tab == get_mode_min(mode)) {
- /* a compare with the MIN value */
- if (proj_nr == pn_Cmp_Ge)
- return get_tarval_b_true();
- else if (proj_nr == pn_Cmp_Lt)
- return get_tarval_b_false();
- }
- /* MAX >=/< x. This results in true/false. */
- else if (taa == get_mode_max(mode)) {
- if (proj_nr == pn_Cmp_Ge)
- return get_tarval_b_true();
- else if (proj_nr == pn_Cmp_Lt)
- return get_tarval_b_false();
- }
- /* x <=/> MAX. This results in true/false. */
- else if (tab == get_mode_max(mode)) {
- if (proj_nr == pn_Cmp_Le)
- return get_tarval_b_true();
- else if (proj_nr == pn_Cmp_Gt)
- return get_tarval_b_false();
+ if (pn_cmp == pn_Cmp_Ge)
+ return tarval_b_true;
+ else if (pn_cmp == pn_Cmp_Lt)
+ return tarval_b_false;
+ } else if (tv_l == get_mode_max(mode)) {
+ /* MAX >=/< x. This results in true/false. */
+ if (pn_cmp == pn_Cmp_Ge)
+ return tarval_b_true;
+ else if (pn_cmp == pn_Cmp_Lt)
+ return tarval_b_false;
+ } else if (tv_r == get_mode_max(mode)) {
+ /* x <=/> MAX. This results in true/false. */
+ if (pn_cmp == pn_Cmp_Le)
+ return tarval_b_true;
+ else if (pn_cmp == pn_Cmp_Gt)
+ return tarval_b_false;
+ }
+
+ cmp_result = vrp_cmp(left, right);
+ if (cmp_result != pn_Cmp_False) {
+ if (cmp_result == pn_Cmp_Lg) {
+ if (pn_cmp == pn_Cmp_Eq) {
+ return tarval_b_false;
+ } else if (pn_cmp == pn_Cmp_Lg) {
+ return tarval_b_true;