- case iro_Eor: if (ta && tb) { res = tarval_eor (ta, tb); } break;
- case iro_Not: if (ta) { res = tarval_neg (ta); } break;
- case iro_Shl: if (ta && tb) { res = tarval_shl (ta, tb); } break;
- /* tarval_shr is faulty !! */
- case iro_Shr: if (ta && tb) { res = tarval_shr (ta, tb); } break;
- case iro_Shrs:if (ta && tb) { /*res = tarval_shrs (ta, tb)*/; } break;
- case iro_Rot: if (ta && tb) { /*res = tarval_rot (ta, tb)*/; } break;
- case iro_Conv:if (ta) { res = tarval_convert_to (ta, get_irn_mode (n)); }
+ case iro_Eor:
+ if ((ta != tarval_bad) && (tb != tarval_bad)) {
+ res = tarval_eor (ta, tb);
+ }
+ break;
+ case iro_Not:
+ if ((ta != tarval_bad)) {
+ res = tarval_not (ta);
+ }
+ break;
+ case iro_Shl:
+ if ((ta != tarval_bad) && (tb != tarval_bad)) {
+ res = tarval_shl (ta, tb);
+ }
+ break;
+ case iro_Shr:
+ if ((ta != tarval_bad) && (tb != tarval_bad)) {
+ res = tarval_shr (ta, tb);
+ }
+ break;
+ case iro_Shrs:
+ if ((ta != tarval_bad) && (tb != tarval_bad)) {
+ res = tarval_shrs (ta, tb);
+ }
+ break;
+ case iro_Rot:
+ if ((ta != tarval_bad) && (tb != tarval_bad)) {
+ /*res = tarval_rot (ta, tb)*/;
+ }
+ break;
+ case iro_Conv:
+ if (ta != tarval_bad) {
+ res = tarval_convert_to (ta, get_irn_mode (n));
+ }