Hi Richard:

thanks you comment :)

I send new patch for move -fno-builtin to common.opt and check it in
lto-lang.c (lto_post_options).
https://gcc.gnu.org/ml/gcc-patches/2014-08/msg02555.html
https://gcc.gnu.org/ml/gcc-patches/2014-08/msg02556.html

On Thu, Aug 28, 2014 at 5:29 PM, Richard Biener <rguent...@suse.de> wrote:
> On Thu, 28 Aug 2014, Kito Cheng wrote:
>
>> Hi Richard:
>>
>> I think preserve -fno-builtin is better than
>> -fno-tree-loop-distribute-patterns too,
>>
>> However if we preserve -fno-builtin, the coming problem is should we
>> preserve all -fbuiltin-* and do the check logic[1] in common code in
>> gcc?
>
> No, just -fno-builtin.
>
>> btw, in our internal gcc 4.9.x tree is move -fno-builtin to common
>> group (CL_COMMON) (preserve in lto since it's in CL_COMMON)  and check
>> it in tree-loop-distribution.c for temporary workaround .
>>
>> [1] gcc/c-family/c-common.c:disable_builtin_function
>>
>> On Thu, Aug 28, 2014 at 4:45 PM, Richard Biener
>> <richard.guent...@gmail.com> wrote:
>> > On Wed, Aug 27, 2014 at 4:42 PM, Kito Cheng <kito.ch...@gmail.com> wrote:
>> >> Hi all:
>> >>
>> >> This patch basically is extension for r210100[1], stream out
>> >> non-explicit -fno-tree-loop-distribute-patterns since compile with
>> >> `-flto -O3 -fno-builtin` still may gen builtin function call during
>> >> LTO phase.
>> >>
>> >> LTO bootstrapped and tested on x86_64-unknown-linux-gnu.
>> >
>> > Hmm, but that will for two units, one compiled with -O2 and one
>> > compiled with -O3, produce -O3 -fno-tree-loop-distribute-patterns.
>> > The previous patch restricted this to -ffreestanding / -fno-builtin.
>> >
>> > I think it makes more sense to preserve -fno-builtin, that is,
>> > add 'LTO' to the list of FEs supporting 'fbuiltin' (the non-joined version)
>> > and stream '-fno-builtin' if set, doing similar option post-processing
>> > in the LTO frontend as I added to the C family frontends.
>> >
>> > Richard.
>> >
>> >> 2014-09-27  Kito Cheng  <k...@0xlab.org>
>> >>
>> >>     * lto-opts.c (lto_write_options): Output non-explicit
>> >>     -fno-tree-loop-distribute-patterns.
>> >>     * lto-wrapper.c (merge_and_complain): Merge
>> >>     -fno-tree-loop-distribute-patterns conservatively.
>> >>     (run_gcc): Pass through -fno-tree-loop-distribute-patterns.
>> >>
>> >>
>> >> [1] https://gcc.gnu.org/viewcvs/gcc?view=revision&revision=210100
>>
>>
>
> --
> Richard Biener <rguent...@suse.de>
> SUSE / SUSE Labs
> SUSE LINUX Products GmbH - Nuernberg - AG Nuernberg - HRB 16746
> GF: Jeff Hawn, Jennifer Guild, Felix Imend"orffer

Reply via email to