375 * to the values in x_trans[n]. The x_flags indicates what compiler
376 * is being used and what flags have been set via the use of
377 * "x_arg".
378 */
379 typedef struct xarch_table {
380 char *x_arg;
381 int x_flags;
382 char *x_trans[TRANS_ENTRY];
383 } xarch_table_t;
384
385 /*
386 * The translation table for the -xarch= flag used in the Studio compilers.
387 */
388 static const xarch_table_t xtbl[] = {
389 #if defined(__x86)
390 { "generic", SS11 },
391 { "generic64", (SS11|M64), { "-m64", "-mtune=opteron" } },
392 { "amd64", (SS11|M64), { "-m64", "-mtune=opteron" } },
393 { "386", SS11, { "-march=i386" } },
394 { "pentium_pro", SS11, { "-march=pentiumpro" } },
395 #elif defined(__sparc)
396 { "generic", (SS11|M32), { "-m32", "-mcpu=v8" } },
397 { "generic64", (SS11|M64), { "-m64", "-mcpu=v9" } },
398 { "v8", (SS11|M32), { "-m32", "-mcpu=v8", "-mno-v8plus" } },
399 { "v8plus", (SS11|M32), { "-m32", "-mcpu=v9", "-mv8plus" } },
400 { "v8plusa", (SS11|M32), { "-m32", "-mcpu=ultrasparc", "-mv8plus",
401 "-mvis" } },
402 { "v8plusb", (SS11|M32), { "-m32", "-mcpu=ultrasparc3", "-mv8plus",
403 "-mvis" } },
404 { "v9", (SS11|M64), { "-m64", "-mcpu=v9" } },
405 { "v9a", (SS11|M64), { "-m64", "-mcpu=ultrasparc", "-mvis" } },
406 { "v9b", (SS11|M64), { "-m64", "-mcpu=ultrasparc3", "-mvis" } },
407 { "sparc", SS12, { "-mcpu=v9", "-mv8plus" } },
408 { "sparcvis", SS12, { "-mcpu=ultrasparc", "-mvis" } },
409 { "sparcvis2", SS12, { "-mcpu=ultrasparc3", "-mvis" } }
410 #endif
411 };
412
413 static int xtbl_size = sizeof (xtbl) / sizeof (xarch_table_t);
414
|
375 * to the values in x_trans[n]. The x_flags indicates what compiler
376 * is being used and what flags have been set via the use of
377 * "x_arg".
378 */
379 typedef struct xarch_table {
380 char *x_arg;
381 int x_flags;
382 char *x_trans[TRANS_ENTRY];
383 } xarch_table_t;
384
385 /*
386 * The translation table for the -xarch= flag used in the Studio compilers.
387 */
388 static const xarch_table_t xtbl[] = {
389 #if defined(__x86)
390 { "generic", SS11 },
391 { "generic64", (SS11|M64), { "-m64", "-mtune=opteron" } },
392 { "amd64", (SS11|M64), { "-m64", "-mtune=opteron" } },
393 { "386", SS11, { "-march=i386" } },
394 { "pentium_pro", SS11, { "-march=pentiumpro" } },
395 { "sse", SS11, { "-msse", "-mfpmath=sse" } },
396 { "sse2", SS11, { "-msse2", "-mfpmath=sse" } },
397 #elif defined(__sparc)
398 { "generic", (SS11|M32), { "-m32", "-mcpu=v8" } },
399 { "generic64", (SS11|M64), { "-m64", "-mcpu=v9" } },
400 { "v8", (SS11|M32), { "-m32", "-mcpu=v8", "-mno-v8plus" } },
401 { "v8plus", (SS11|M32), { "-m32", "-mcpu=v9", "-mv8plus" } },
402 { "v8plusa", (SS11|M32), { "-m32", "-mcpu=ultrasparc", "-mv8plus",
403 "-mvis" } },
404 { "v8plusb", (SS11|M32), { "-m32", "-mcpu=ultrasparc3", "-mv8plus",
405 "-mvis" } },
406 { "v9", (SS11|M64), { "-m64", "-mcpu=v9" } },
407 { "v9a", (SS11|M64), { "-m64", "-mcpu=ultrasparc", "-mvis" } },
408 { "v9b", (SS11|M64), { "-m64", "-mcpu=ultrasparc3", "-mvis" } },
409 { "sparc", SS12, { "-mcpu=v9", "-mv8plus" } },
410 { "sparcvis", SS12, { "-mcpu=ultrasparc", "-mvis" } },
411 { "sparcvis2", SS12, { "-mcpu=ultrasparc3", "-mvis" } }
412 #endif
413 };
414
415 static int xtbl_size = sizeof (xtbl) / sizeof (xarch_table_t);
416
|