Print this page
cw: don't shadow pure pre-processing


1454         case (SS11|M64):
1455                 break;
1456         case (SS12|M32):
1457 #if defined(__sparc)
1458                 /*
1459                  * Need to add in further 32 bit options because with SS12
1460                  * the xarch=sparcvis option can be applied to 32 or 64
1461                  * bit, and so the translatation table (xtbl) cannot handle
1462                  * that.
1463                  */
1464                 newae(ctx->i_ae, "-mv8plus");
1465 #endif
1466                 break;
1467         case (SS12|M64):
1468                 break;
1469         default:
1470                 (void) fprintf(stderr,
1471                     "Incompatible -xarch= and/or -m32/-m64 options used.\n");
1472                 exit(2);
1473         }
1474         if (op == CW_O_LINK && (ctx->i_flags & CW_F_SHADOW))


1475                 exit(0);
1476 
1477         if (model && !pic)
1478                 newae(ctx->i_ae, model);
1479         if (!nolibc)
1480                 newae(ctx->i_ae, "-lc");
1481         if (!seen_o && (ctx->i_flags & CW_F_SHADOW)) {
1482                 newae(ctx->i_ae, "-o");
1483                 newae(ctx->i_ae, ctx->i_discard);
1484         }
1485 }
1486 
1487 static void
1488 do_cc(cw_ictx_t *ctx)
1489 {
1490         int in_output = 0, seen_o = 0;
1491         cw_op_t op = CW_O_LINK;
1492         char *nameflag;
1493 
1494         if (ctx->i_flags & CW_F_PROG) {




1454         case (SS11|M64):
1455                 break;
1456         case (SS12|M32):
1457 #if defined(__sparc)
1458                 /*
1459                  * Need to add in further 32 bit options because with SS12
1460                  * the xarch=sparcvis option can be applied to 32 or 64
1461                  * bit, and so the translatation table (xtbl) cannot handle
1462                  * that.
1463                  */
1464                 newae(ctx->i_ae, "-mv8plus");
1465 #endif
1466                 break;
1467         case (SS12|M64):
1468                 break;
1469         default:
1470                 (void) fprintf(stderr,
1471                     "Incompatible -xarch= and/or -m32/-m64 options used.\n");
1472                 exit(2);
1473         }
1474 
1475         if ((op == CW_O_LINK || op == CW_O_PREPROCESS) &&
1476             (ctx->i_flags & CW_F_SHADOW))
1477                 exit(0);
1478 
1479         if (model && !pic)
1480                 newae(ctx->i_ae, model);
1481         if (!nolibc)
1482                 newae(ctx->i_ae, "-lc");
1483         if (!seen_o && (ctx->i_flags & CW_F_SHADOW)) {
1484                 newae(ctx->i_ae, "-o");
1485                 newae(ctx->i_ae, ctx->i_discard);
1486         }
1487 }
1488 
1489 static void
1490 do_cc(cw_ictx_t *ctx)
1491 {
1492         int in_output = 0, seen_o = 0;
1493         cw_op_t op = CW_O_LINK;
1494         char *nameflag;
1495 
1496         if (ctx->i_flags & CW_F_PROG) {