On Tue, Oct 21, 2014 at 5:08 PM, Kirill Yukhin <kirill.yuk...@gmail.com> wrote: > On 21 Oct 18:47, Kirill Yukhin wrote: >> On 21 Oct 16:20, Jakub Jelinek wrote: >> > On Tue, Oct 21, 2014 at 06:08:15PM +0400, Kirill Yukhin wrote: >> > > --- a/gcc/tree.h >> > > +++ b/gcc/tree.h >> > > @@ -2334,6 +2334,10 @@ extern void decl_value_expr_insert (tree, tree); >> > > #define DECL_COMDAT(NODE) \ >> > > (DECL_WITH_VIS_CHECK (NODE)->decl_with_vis.comdat_flag) >> > > >> > > + /* In a FUNCTION_DECL indicates that a static chain is needed. */ >> > > +#define DECL_STATIC_CHAIN(NODE) \ >> > > + (DECL_WITH_VIS_CHECK (NODE)->decl_with_vis.regdecl_flag) >> > > + >> > >> > I would say that you should still keep it together with the FUNCTION_DECL >> > macros and use FUNCTION_DECL_CHECK there, to make it clear we don't want >> > the macro to be used on VAR_DECLs etc. >> > So just s/function_decl/decl_with_vis/ in the definition IMHO. >> Yeah, sure. >> >> > Also, with so many added builtins, how does it affect >> > int i; >> > compilation time at -O0? If it is significant, maybe it is highest time to >> > make the md builtin decl building more lazy. >> I've tried this: >> $ echo "int i;" > test.c >> $ time for i in `seq 10000` ; do ./build-x86_64-linux/gcc/xgcc >> -B./build-x86_64-linux/gcc -O0 -S test.c ; done >> >> For trunk w/ and w/o the patch applied. >> Got 106.86 vs. 106.85 secs. which looks equal. > Retested on clear machine (SandyBridge). Got 189 vs. 192 secs., i.e. ~1%
Can you test with -mavx512 (or whatever enables the builtins?) Richard.