PATCH: PR target/59587: cpu_names in i386.c is accessed with wrong index

H.J. Lu hjl.tools@gmail.com
Thu Dec 26 17:01:00 GMT 2013


On Wed, Dec 25, 2013 at 12:49 PM, Uros Bizjak <ubizjak@gmail.com> wrote:
>> TARGET_CPU_DEFAULT is left over for 32-bit target before --with-arch=
>> and --with-cpu= were added.  Today, -mtune=xxx -march=xxx are
>> always passed to cc1 by GCC driver.  If cc1 is run by hand and
>> -mtune=xxx -march=xxx aren't passed to cc1, we should do
>>
>> 1. For 64-bit, it should be the same as -mtune=generic -march=x86_64
>> are passed.
>> 2. For 32-bit, it should be the same as -mtune=cpu -march=cpu are
>> passed, where "cpu" is the target cpu used to configure GCC,
>> like i386 in i386-linux, i486 in i486-linux, .... But there is no i786
>> cpu.  i786 is treated as i686.  If SUBTARGET32_DEFAULT_CPU
>> is defined, it should be the same -mtune=SUBTARGET32_DEFAULT_CPU
>> -march=SUBTARGET32_DEFAULT_CPU.
>>
>> Here is the patch to implement this.
>
> Let's do one step at a time. So, let's split the patch back to target/59587 fix:
>

I am not formally submitting the patch to define target_cpu_default
for i[34567]86 targets:

http://gcc.gnu.org/git/?p=gcc.git;a=patch;h=c5d2157c8c9181286441317cf55570d8e33741c2

since it has no impact on x86-64 nor when GCC driver
is used.  It only changes the default arch/tune when
cc1/cc1plus is run by hand, which is very unusual.
I will leave the patch on hjl/arch branch just in case
someone is interested.

Thanks.

-- 
H.J.



More information about the Gcc-patches mailing list