This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH][i386]Fix PR 57756
- From: Sriraman Tallam <tmsriram at google dot com>
- To: Uros Bizjak <ubizjak at gmail dot com>
- Cc: Richard Biener <richard dot guenther at gmail dot com>, GCC Patches <gcc-patches at gcc dot gnu dot org>, David Li <davidxl at google dot com>, Jakub Jelinek <jakub at redhat dot com>, David Edelsohn <dje at gcc dot gnu dot org>
- Date: Tue, 15 Oct 2013 14:45:23 -0700
- Subject: Re: [PATCH][i386]Fix PR 57756
- Authentication-results: sourceware.org; auth=none
- References: <CAAs8HmykvBN9u=69ZxEHpC5C1NDr6xAWsCrp2tRCiX+NgWf7GA at mail dot gmail dot com> <CAFiYyc14fviQxP3P7eYjsC6V7zgAp_F25agtBcxKeZ5-xPK+Yw at mail dot gmail dot com> <CAAs8HmztsmmpUNucXECgDd-GDjKGv-2CWwFMFC5=LUNeyasaZg at mail dot gmail dot com> <CAAs8Hmz1qS4ZvpN-jU96Y4h2QhpWwOAQ2iEuwyjHUXOoPGMJ5w at mail dot gmail dot com> <CAFiYyc2y5-6j5wqhgz30y4ZvZgMvekPwxTdxy7kt_0s=rpD+CA at mail dot gmail dot com> <CAAs8HmzaRuskG1AcVEmiYuVQCNzXp8kjY5oMTTdhhDhG5juJ5g at mail dot gmail dot com> <CAAs8Hmy7bU2fMRqtRUiX76EEe4Ma8NBdnPsbWCAJz5zAof8oLg at mail dot gmail dot com> <CAAs8Hmy0H4VB-0mJx_4=OE1eyMbSm7Lo40kcWi42CQzymtYU4Q at mail dot gmail dot com> <CAFULd4YguDhSbUtoEU+Qw60HoKkw+64s9hEJTcAv-9dGxdOy+Q at mail dot gmail dot com>
On Sat, Oct 12, 2013 at 12:10 AM, Uros Bizjak <ubizjak@gmail.com> wrote:
> On Sat, Oct 12, 2013 at 2:16 AM, Sriraman Tallam <tmsriram@google.com> wrote:
>
>> Ping.
>
>>>>> This looks nice. I suppose you grepped for effected targets and rs6000
>>>>> was the only one besides i386.
>>>>>
>>>>> This is ok given target maintainers do not object within 24h and the test
>>>>> successfully bootstrapped and passed regression tests.
>>>>
>>>> I changed this patch quite a bit after I realized I missed many other
>>>> places where global_options field was accessed. The two specific
>>>> changes are:
>>>>
>>>> * Particularly, ix86_function_specific_save and
>>>> ix86_function_specific_restore had to be changed to copy to a specific
>>>> gcc_options structure than to global_options.
>>>> * Function ix86_option_override_internal accesses global_options via
>>>> macros, like TARGET_64BIT etc. This had to be changed. So, I created
>>>> new macros to accept a parameter and named them like TARGET_64BIT_P
>>>> and replaced all the accesses in i386.c
>>>>
>>>> I also marked as TODO a copy in function ix86_function_specific_save.
>>>> Here, the cl_target_option structure has a ix86_target_flags_explicit
>>>> field whereas the global_options structure does not have one.
>>>> Previously, this used to get saved to the global_options target_flags
>>>> field but this did not make sense to me. I have commented this line
>>>> out. Please let me know if a new field needs to be added.
>>>>
>>>> This patch passes bootstrap and all tests. Please take another look.
>
> AFAICS, the patch was approved by Richard on 23. September. None of
> the target maintainers have had any further objections to it.
>
> Regarding the TODO in i386.c: some options depend on and enable other
> options, for example -msse3 enables SSE2, etc, although user didn't
> explicitly add -msse2 to the options. This is not the case with global
> options. Since this field is used extensively through i386.c, I'd say
> to play safe and save it.
>
> So, x86 part is OK with the above change. Middle end is already
> approved and rs6000 maintainer didn't object the approval, so please
> go ahead and commit the patch.
I committed this patch after making the above change.
Thanks
Sri
>
> Thanks,
> Uros.