* Intel 386 and AMD x86-64 Options
@ 2003-03-03 21:07 Ander
2003-03-03 23:51 ` Richard Henderson
2003-03-10 21:47 ` Falk Hueffner
0 siblings, 2 replies; 6+ messages in thread
From: Ander @ 2003-03-03 21:07 UTC (permalink / raw)
To: gcc
[-- Attachment #1: Type: text/plain, Size: 707 bytes --]
Hi,
I want to know if there is any difference in using -march=i686,
-march=pentium3, -march=athlon, -march=athlon-xp or if they are all
synonyms of -march=i686. I'm writing code in the configure.ac to add the
optios for the detected CPU, and I don't know if it will be enougth to
detect the family of the processor and use -march=i386, -march=i486,
-march=i586 and -march=i686, or if I have to find the CPU model and use
the specific option.
I'm not subscribed to this list, so please send a copy of the answer to
my personal address.
Thanks.
--
Ander Lozano Pérez
ander1@wanadoo.es
Desarrollador de DiaSCE
http://diasce.es.gnome.org
diasce@es.gnome.org
irc.gnome.org #DiaSCE
[-- Attachment #2: Esta parte del mensaje esta firmada digitalmente --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Intel 386 and AMD x86-64 Options
2003-03-03 21:07 Intel 386 and AMD x86-64 Options Ander
@ 2003-03-03 23:51 ` Richard Henderson
2003-03-04 0:00 ` Ander
2003-03-10 21:47 ` Falk Hueffner
1 sibling, 1 reply; 6+ messages in thread
From: Richard Henderson @ 2003-03-03 23:51 UTC (permalink / raw)
To: Ander; +Cc: gcc
On Mon, Mar 03, 2003 at 10:00:48PM +0100, Ander wrote:
> I want to know if there is any difference in using -march=i686,
> -march=pentium3, -march=athlon, -march=athlon-xp or if they are all
> synonyms of -march=i686.
They are not synonyms. P3 adds SSE1, Athlon has different
scheduling characteristics, etc. You also failed to mention P4,
but perhaps that was obvious.
r~
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Intel 386 and AMD x86-64 Options
2003-03-03 23:51 ` Richard Henderson
@ 2003-03-04 0:00 ` Ander
2003-03-04 11:12 ` Allan Sandfeld
0 siblings, 1 reply; 6+ messages in thread
From: Ander @ 2003-03-04 0:00 UTC (permalink / raw)
To: Richard Henderson; +Cc: gcc
[-- Attachment #1: Type: text/plain, Size: 780 bytes --]
> > I want to know if there is any difference in using -march=i686,
> > -march=pentium3, -march=athlon, -march=athlon-xp or if they are all
> > synonyms of -march=i686.
>
> They are not synonyms. P3 adds SSE1, Athlon has different
> scheduling characteristics, etc. You also failed to mention P4,
> but perhaps that was obvious.
Yes, I did not mention P4 because it belongs to family 15. Where can I
get a list of which parameter corresponds with each procesor. In the
"AMD processor recognition application note" (#20734) There is no Athlon
Tbird, and there is an option for that processor in the -march
parameter.
--
Ander Lozano Pérez
ander1@wanadoo.es
Desarrollador de DiaSCE
http://diasce.es.gnome.org
diasce@es.gnome.org
irc.gnome.org #DiaSCE
[-- Attachment #2: Esta parte del mensaje esta firmada digitalmente --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Intel 386 and AMD x86-64 Options
2003-03-04 0:00 ` Ander
@ 2003-03-04 11:12 ` Allan Sandfeld
2003-03-04 13:49 ` Ander
0 siblings, 1 reply; 6+ messages in thread
From: Allan Sandfeld @ 2003-03-04 11:12 UTC (permalink / raw)
To: Ander; +Cc: gcc
On Tuesday 04 March 2003 00:58, Ander wrote:
> > > I want to know if there is any difference in using -march=i686,
> > > -march=pentium3, -march=athlon, -march=athlon-xp or if they are all
> > > synonyms of -march=i686.
> >
> > They are not synonyms. P3 adds SSE1, Athlon has different
> > scheduling characteristics, etc. You also failed to mention P4,
> > but perhaps that was obvious.
>
> Yes, I did not mention P4 because it belongs to family 15. Where can I
> get a list of which parameter corresponds with each procesor. In the
> "AMD processor recognition application note" (#20734) There is no Athlon
> Tbird, and there is an option for that processor in the -march
> parameter.
I think what you want to know is in this table from gcc/configI/i386/i386.c:
const processor_alias_table[] =
{
{"i386", PROCESSOR_I386, 0},
{"i486", PROCESSOR_I486, 0},
{"i586", PROCESSOR_PENTIUM, 0},
{"pentium", PROCESSOR_PENTIUM, 0},
{"pentium-mmx", PROCESSOR_PENTIUM, PTA_MMX},
{"winchip-c6", PROCESSOR_I486, PTA_MMX},
{"winchip2", PROCESSOR_I486, PTA_MMX | PTA_3DNOW},
{"c3", PROCESSOR_I486, PTA_MMX | PTA_3DNOW},
{"i686", PROCESSOR_PENTIUMPRO, 0},
{"pentiumpro", PROCESSOR_PENTIUMPRO, 0},
{"pentium2", PROCESSOR_PENTIUMPRO, PTA_MMX},
{"pentium3", PROCESSOR_PENTIUMPRO, PTA_MMX | PTA_SSE |
PTA_PREFETCH_SSE},
{"pentium4", PROCESSOR_PENTIUM4, PTA_SSE | PTA_SSE2 |
PTA_MMX | PTA_PREFETCH_SSE},
{"k6", PROCESSOR_K6, PTA_MMX},
{"k6-2", PROCESSOR_K6, PTA_MMX | PTA_3DNOW},
{"k6-3", PROCESSOR_K6, PTA_MMX | PTA_3DNOW},
{"athlon", PROCESSOR_ATHLON, PTA_MMX | PTA_PREFETCH_SSE | PTA_3DNOW
| PTA_3DNOW_A},
{"athlon-tbird", PROCESSOR_ATHLON, PTA_MMX | PTA_PREFETCH_SSE
| PTA_3DNOW | PTA_3DNOW_A},
{"athlon-4", PROCESSOR_ATHLON, PTA_MMX | PTA_PREFETCH_SSE | PTA_3DNOW
| PTA_3DNOW_A | PTA_SSE},
{"athlon-xp", PROCESSOR_ATHLON, PTA_MMX | PTA_PREFETCH_SSE | PTA_3DNOW
| PTA_3DNOW_A | PTA_SSE},
{"athlon-mp", PROCESSOR_ATHLON, PTA_MMX | PTA_PREFETCH_SSE | PTA_3DNOW
| PTA_3DNOW_A | PTA_SSE},
};
As you can see there is no difference between athlon and athlon-tbird.
`Allan
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Intel 386 and AMD x86-64 Options
2003-03-04 11:12 ` Allan Sandfeld
@ 2003-03-04 13:49 ` Ander
0 siblings, 0 replies; 6+ messages in thread
From: Ander @ 2003-03-04 13:49 UTC (permalink / raw)
To: Allan Sandfeld; +Cc: gcc
[-- Attachment #1: Type: text/plain, Size: 1845 bytes --]
> I think what you want to know is in this table from gcc/configI/i386/i386.c:
>
> const processor_alias_table[] =
> {
> {"i386", PROCESSOR_I386, 0},
> {"i486", PROCESSOR_I486, 0},
> {"i586", PROCESSOR_PENTIUM, 0},
> {"pentium", PROCESSOR_PENTIUM, 0},
> {"pentium-mmx", PROCESSOR_PENTIUM, PTA_MMX},
> {"winchip-c6", PROCESSOR_I486, PTA_MMX},
> {"winchip2", PROCESSOR_I486, PTA_MMX | PTA_3DNOW},
> {"c3", PROCESSOR_I486, PTA_MMX | PTA_3DNOW},
> {"i686", PROCESSOR_PENTIUMPRO, 0},
> {"pentiumpro", PROCESSOR_PENTIUMPRO, 0},
> {"pentium2", PROCESSOR_PENTIUMPRO, PTA_MMX},
> {"pentium3", PROCESSOR_PENTIUMPRO, PTA_MMX | PTA_SSE |
> PTA_PREFETCH_SSE},
> {"pentium4", PROCESSOR_PENTIUM4, PTA_SSE | PTA_SSE2 |
> PTA_MMX | PTA_PREFETCH_SSE},
> {"k6", PROCESSOR_K6, PTA_MMX},
> {"k6-2", PROCESSOR_K6, PTA_MMX | PTA_3DNOW},
> {"k6-3", PROCESSOR_K6, PTA_MMX | PTA_3DNOW},
> {"athlon", PROCESSOR_ATHLON, PTA_MMX | PTA_PREFETCH_SSE | PTA_3DNOW
> | PTA_3DNOW_A},
> {"athlon-tbird", PROCESSOR_ATHLON, PTA_MMX | PTA_PREFETCH_SSE
> | PTA_3DNOW | PTA_3DNOW_A},
> {"athlon-4", PROCESSOR_ATHLON, PTA_MMX | PTA_PREFETCH_SSE | PTA_3DNOW
> | PTA_3DNOW_A | PTA_SSE},
> {"athlon-xp", PROCESSOR_ATHLON, PTA_MMX | PTA_PREFETCH_SSE | PTA_3DNOW
> | PTA_3DNOW_A | PTA_SSE},
> {"athlon-mp", PROCESSOR_ATHLON, PTA_MMX | PTA_PREFETCH_SSE | PTA_3DNOW
> | PTA_3DNOW_A | PTA_SSE},
> };
>
> As you can see there is no difference between athlon and athlon-tbird.
I think that is all I will need.
Thanks
--
Ander Lozano Pérez
ander1@wanadoo.es
Desarrollador de DiaSCE
http://diasce.es.gnome.org
diasce@es.gnome.org
irc.gnome.org #DiaSCE
[-- Attachment #2: Esta parte del mensaje esta firmada digitalmente --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Intel 386 and AMD x86-64 Options
2003-03-03 21:07 Intel 386 and AMD x86-64 Options Ander
2003-03-03 23:51 ` Richard Henderson
@ 2003-03-10 21:47 ` Falk Hueffner
1 sibling, 0 replies; 6+ messages in thread
From: Falk Hueffner @ 2003-03-10 21:47 UTC (permalink / raw)
To: Ander; +Cc: gcc
Ander <ander1@wanadoo.es> writes:
> I want to know if there is any difference in using -march=i686,
> -march=pentium3, -march=athlon, -march=athlon-xp or if they are all
> synonyms of -march=i686. I'm writing code in the configure.ac to add
> the optios for the detected CPU, and I don't know if it will be
> enougth to detect the family of the processor and use -march=i386,
> -march=i486, -march=i586 and -march=i686, or if I have to find the
> CPU model and use the specific option.
I wrote a small script (http://people.debian.org/~falk/gcc-arch) that
tries to do this, maybe it is of use to you. It only handles i386 and
Alpha. I'm not sure I got it 100% correct, though, suggestions are
welcomed.
--
Falk
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2003-03-10 21:21 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-03-03 21:07 Intel 386 and AMD x86-64 Options Ander
2003-03-03 23:51 ` Richard Henderson
2003-03-04 0:00 ` Ander
2003-03-04 11:12 ` Allan Sandfeld
2003-03-04 13:49 ` Ander
2003-03-10 21:47 ` Falk Hueffner
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).