Deleted Added
full compact
i386.h (171836) i386.h (219374)
1/* Definitions of target machine for GCC for IA-32.
2 Copyright (C) 1988, 1992, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
3 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
4
5This file is part of GCC.
6
7GCC is free software; you can redistribute it and/or modify
8it under the terms of the GNU General Public License as published by

--- 116 unchanged lines hidden (view full) ---

125
126#define HAS_LONG_COND_BRANCH 1
127#define HAS_LONG_UNCOND_BRANCH 1
128
129#define TARGET_386 (ix86_tune == PROCESSOR_I386)
130#define TARGET_486 (ix86_tune == PROCESSOR_I486)
131#define TARGET_PENTIUM (ix86_tune == PROCESSOR_PENTIUM)
132#define TARGET_PENTIUMPRO (ix86_tune == PROCESSOR_PENTIUMPRO)
1/* Definitions of target machine for GCC for IA-32.
2 Copyright (C) 1988, 1992, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
3 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
4
5This file is part of GCC.
6
7GCC is free software; you can redistribute it and/or modify
8it under the terms of the GNU General Public License as published by

--- 116 unchanged lines hidden (view full) ---

125
126#define HAS_LONG_COND_BRANCH 1
127#define HAS_LONG_UNCOND_BRANCH 1
128
129#define TARGET_386 (ix86_tune == PROCESSOR_I386)
130#define TARGET_486 (ix86_tune == PROCESSOR_I486)
131#define TARGET_PENTIUM (ix86_tune == PROCESSOR_PENTIUM)
132#define TARGET_PENTIUMPRO (ix86_tune == PROCESSOR_PENTIUMPRO)
133#define TARGET_GEODE (ix86_tune == PROCESSOR_GEODE)
133#define TARGET_K6 (ix86_tune == PROCESSOR_K6)
134#define TARGET_ATHLON (ix86_tune == PROCESSOR_ATHLON)
135#define TARGET_PENTIUM4 (ix86_tune == PROCESSOR_PENTIUM4)
136#define TARGET_K8 (ix86_tune == PROCESSOR_K8)
137#define TARGET_ATHLON_K8 (TARGET_K8 || TARGET_ATHLON)
138#define TARGET_NOCONA (ix86_tune == PROCESSOR_NOCONA)
134#define TARGET_K6 (ix86_tune == PROCESSOR_K6)
135#define TARGET_ATHLON (ix86_tune == PROCESSOR_ATHLON)
136#define TARGET_PENTIUM4 (ix86_tune == PROCESSOR_PENTIUM4)
137#define TARGET_K8 (ix86_tune == PROCESSOR_K8)
138#define TARGET_ATHLON_K8 (TARGET_K8 || TARGET_ATHLON)
139#define TARGET_NOCONA (ix86_tune == PROCESSOR_NOCONA)
140#define TARGET_CORE2 (ix86_tune == PROCESSOR_CORE2)
139#define TARGET_GENERIC32 (ix86_tune == PROCESSOR_GENERIC32)
140#define TARGET_GENERIC64 (ix86_tune == PROCESSOR_GENERIC64)
141#define TARGET_GENERIC (TARGET_GENERIC32 || TARGET_GENERIC64)
142
143#define TUNEMASK (1 << ix86_tune)
144extern const int x86_use_leave, x86_push_memory, x86_zero_extend_with_and;
145extern const int x86_use_bit_test, x86_cmove, x86_deep_branch;
146extern const int x86_branch_hints, x86_unroll_strlen;

--- 224 unchanged lines hidden (view full) ---

371 case '3': \
372 builtin_define ("__tune_pentium3__"); \
373 /* FALLTHRU */ \
374 case '2': \
375 builtin_define ("__tune_pentium2__"); \
376 break; \
377 } \
378 } \
141#define TARGET_GENERIC32 (ix86_tune == PROCESSOR_GENERIC32)
142#define TARGET_GENERIC64 (ix86_tune == PROCESSOR_GENERIC64)
143#define TARGET_GENERIC (TARGET_GENERIC32 || TARGET_GENERIC64)
144
145#define TUNEMASK (1 << ix86_tune)
146extern const int x86_use_leave, x86_push_memory, x86_zero_extend_with_and;
147extern const int x86_use_bit_test, x86_cmove, x86_deep_branch;
148extern const int x86_branch_hints, x86_unroll_strlen;

--- 224 unchanged lines hidden (view full) ---

373 case '3': \
374 builtin_define ("__tune_pentium3__"); \
375 /* FALLTHRU */ \
376 case '2': \
377 builtin_define ("__tune_pentium2__"); \
378 break; \
379 } \
380 } \
381 else if (TARGET_GEODE) \
382 { \
383 builtin_define ("__tune_geode__"); \
384 } \
379 else if (TARGET_K6) \
380 { \
381 builtin_define ("__tune_k6__"); \
382 if (last_tune_char == '2') \
383 builtin_define ("__tune_k6_2__"); \
384 else if (last_tune_char == '3') \
385 builtin_define ("__tune_k6_3__"); \
386 } \

--- 5 unchanged lines hidden (view full) ---

392 builtin_define ("__tune_athlon_sse__"); \
393 } \
394 else if (TARGET_K8) \
395 builtin_define ("__tune_k8__"); \
396 else if (TARGET_PENTIUM4) \
397 builtin_define ("__tune_pentium4__"); \
398 else if (TARGET_NOCONA) \
399 builtin_define ("__tune_nocona__"); \
385 else if (TARGET_K6) \
386 { \
387 builtin_define ("__tune_k6__"); \
388 if (last_tune_char == '2') \
389 builtin_define ("__tune_k6_2__"); \
390 else if (last_tune_char == '3') \
391 builtin_define ("__tune_k6_3__"); \
392 } \

--- 5 unchanged lines hidden (view full) ---

398 builtin_define ("__tune_athlon_sse__"); \
399 } \
400 else if (TARGET_K8) \
401 builtin_define ("__tune_k8__"); \
402 else if (TARGET_PENTIUM4) \
403 builtin_define ("__tune_pentium4__"); \
404 else if (TARGET_NOCONA) \
405 builtin_define ("__tune_nocona__"); \
406 else if (TARGET_CORE2) \
407 builtin_define ("__tune_core2__"); \
400 \
401 if (TARGET_MMX) \
402 builtin_define ("__MMX__"); \
403 if (TARGET_3DNOW) \
404 builtin_define ("__3dNOW__"); \
405 if (TARGET_3DNOW_A) \
406 builtin_define ("__3dNOW_A__"); \
407 if (TARGET_SSE) \

--- 24 unchanged lines hidden (view full) ---

432 } \
433 else if (ix86_arch == PROCESSOR_PENTIUMPRO) \
434 { \
435 builtin_define ("__i686"); \
436 builtin_define ("__i686__"); \
437 builtin_define ("__pentiumpro"); \
438 builtin_define ("__pentiumpro__"); \
439 } \
408 \
409 if (TARGET_MMX) \
410 builtin_define ("__MMX__"); \
411 if (TARGET_3DNOW) \
412 builtin_define ("__3dNOW__"); \
413 if (TARGET_3DNOW_A) \
414 builtin_define ("__3dNOW_A__"); \
415 if (TARGET_SSE) \

--- 24 unchanged lines hidden (view full) ---

440 } \
441 else if (ix86_arch == PROCESSOR_PENTIUMPRO) \
442 { \
443 builtin_define ("__i686"); \
444 builtin_define ("__i686__"); \
445 builtin_define ("__pentiumpro"); \
446 builtin_define ("__pentiumpro__"); \
447 } \
448 else if (ix86_arch == PROCESSOR_GEODE) \
449 { \
450 builtin_define ("__geode"); \
451 builtin_define ("__geode__"); \
452 } \
440 else if (ix86_arch == PROCESSOR_K6) \
441 { \
442 \
443 builtin_define ("__k6"); \
444 builtin_define ("__k6__"); \
445 if (last_arch_char == '2') \
446 builtin_define ("__k6_2__"); \
447 else if (last_arch_char == '3') \

--- 17 unchanged lines hidden (view full) ---

465 builtin_define ("__pentium4"); \
466 builtin_define ("__pentium4__"); \
467 } \
468 else if (ix86_arch == PROCESSOR_NOCONA) \
469 { \
470 builtin_define ("__nocona"); \
471 builtin_define ("__nocona__"); \
472 } \
453 else if (ix86_arch == PROCESSOR_K6) \
454 { \
455 \
456 builtin_define ("__k6"); \
457 builtin_define ("__k6__"); \
458 if (last_arch_char == '2') \
459 builtin_define ("__k6_2__"); \
460 else if (last_arch_char == '3') \

--- 17 unchanged lines hidden (view full) ---

478 builtin_define ("__pentium4"); \
479 builtin_define ("__pentium4__"); \
480 } \
481 else if (ix86_arch == PROCESSOR_NOCONA) \
482 { \
483 builtin_define ("__nocona"); \
484 builtin_define ("__nocona__"); \
485 } \
486 else if (ix86_arch == PROCESSOR_CORE2) \
487 { \
488 builtin_define ("__core2"); \
489 builtin_define ("__core2__"); \
490 } \
473 } \
474 while (0)
475
476#define TARGET_CPU_DEFAULT_i386 0
477#define TARGET_CPU_DEFAULT_i486 1
478#define TARGET_CPU_DEFAULT_pentium 2
479#define TARGET_CPU_DEFAULT_pentium_mmx 3
480#define TARGET_CPU_DEFAULT_pentiumpro 4
481#define TARGET_CPU_DEFAULT_pentium2 5
482#define TARGET_CPU_DEFAULT_pentium3 6
483#define TARGET_CPU_DEFAULT_pentium4 7
491 } \
492 while (0)
493
494#define TARGET_CPU_DEFAULT_i386 0
495#define TARGET_CPU_DEFAULT_i486 1
496#define TARGET_CPU_DEFAULT_pentium 2
497#define TARGET_CPU_DEFAULT_pentium_mmx 3
498#define TARGET_CPU_DEFAULT_pentiumpro 4
499#define TARGET_CPU_DEFAULT_pentium2 5
500#define TARGET_CPU_DEFAULT_pentium3 6
501#define TARGET_CPU_DEFAULT_pentium4 7
484#define TARGET_CPU_DEFAULT_k6 8
485#define TARGET_CPU_DEFAULT_k6_2 9
486#define TARGET_CPU_DEFAULT_k6_3 10
487#define TARGET_CPU_DEFAULT_athlon 11
488#define TARGET_CPU_DEFAULT_athlon_sse 12
489#define TARGET_CPU_DEFAULT_k8 13
490#define TARGET_CPU_DEFAULT_pentium_m 14
491#define TARGET_CPU_DEFAULT_prescott 15
492#define TARGET_CPU_DEFAULT_nocona 16
493#define TARGET_CPU_DEFAULT_generic 17
502#define TARGET_CPU_DEFAULT_geode 8
503#define TARGET_CPU_DEFAULT_k6 9
504#define TARGET_CPU_DEFAULT_k6_2 10
505#define TARGET_CPU_DEFAULT_k6_3 11
506#define TARGET_CPU_DEFAULT_athlon 12
507#define TARGET_CPU_DEFAULT_athlon_sse 13
508#define TARGET_CPU_DEFAULT_k8 14
509#define TARGET_CPU_DEFAULT_pentium_m 15
510#define TARGET_CPU_DEFAULT_prescott 16
511#define TARGET_CPU_DEFAULT_nocona 17
512#define TARGET_CPU_DEFAULT_core2 18
513#define TARGET_CPU_DEFAULT_generic 19
494
495#define TARGET_CPU_DEFAULT_NAMES {"i386", "i486", "pentium", "pentium-mmx",\
496 "pentiumpro", "pentium2", "pentium3", \
514
515#define TARGET_CPU_DEFAULT_NAMES {"i386", "i486", "pentium", "pentium-mmx",\
516 "pentiumpro", "pentium2", "pentium3", \
497 "pentium4", "k6", "k6-2", "k6-3",\
517 "pentium4", "geode", "k6", "k6-2", "k6-3", \
498 "athlon", "athlon-4", "k8", \
499 "pentium-m", "prescott", "nocona", \
518 "athlon", "athlon-4", "k8", \
519 "pentium-m", "prescott", "nocona", \
500 "generic"}
520 "core2", "generic"}
501
502#ifndef CC1_SPEC
503#define CC1_SPEC "%(cc1_cpu) "
504#endif
505
506/* This macro defines names of additional specifications to put in the
507 specs that can be used in various specifications like CC1_SPEC. Its
508 definition is an initializer with a subgrouping for each command option.

--- 1563 unchanged lines hidden (view full) ---

2072 mirrors this list, so changes to i386.md must be made at the same time. */
2073
2074enum processor_type
2075{
2076 PROCESSOR_I386, /* 80386 */
2077 PROCESSOR_I486, /* 80486DX, 80486SX, 80486DX[24] */
2078 PROCESSOR_PENTIUM,
2079 PROCESSOR_PENTIUMPRO,
521
522#ifndef CC1_SPEC
523#define CC1_SPEC "%(cc1_cpu) "
524#endif
525
526/* This macro defines names of additional specifications to put in the
527 specs that can be used in various specifications like CC1_SPEC. Its
528 definition is an initializer with a subgrouping for each command option.

--- 1563 unchanged lines hidden (view full) ---

2092 mirrors this list, so changes to i386.md must be made at the same time. */
2093
2094enum processor_type
2095{
2096 PROCESSOR_I386, /* 80386 */
2097 PROCESSOR_I486, /* 80486DX, 80486SX, 80486DX[24] */
2098 PROCESSOR_PENTIUM,
2099 PROCESSOR_PENTIUMPRO,
2100 PROCESSOR_GEODE,
2080 PROCESSOR_K6,
2081 PROCESSOR_ATHLON,
2082 PROCESSOR_PENTIUM4,
2083 PROCESSOR_K8,
2084 PROCESSOR_NOCONA,
2101 PROCESSOR_K6,
2102 PROCESSOR_ATHLON,
2103 PROCESSOR_PENTIUM4,
2104 PROCESSOR_K8,
2105 PROCESSOR_NOCONA,
2106 PROCESSOR_CORE2,
2085 PROCESSOR_GENERIC32,
2086 PROCESSOR_GENERIC64,
2087 PROCESSOR_max
2088};
2089
2090extern enum processor_type ix86_tune;
2091extern enum processor_type ix86_arch;
2092

--- 192 unchanged lines hidden ---
2107 PROCESSOR_GENERIC32,
2108 PROCESSOR_GENERIC64,
2109 PROCESSOR_max
2110};
2111
2112extern enum processor_type ix86_tune;
2113extern enum processor_type ix86_arch;
2114

--- 192 unchanged lines hidden ---