Re: [PATCH] Speed-up def_builtin_const (ix86_valid_target_attribute)

2015-03-20 Thread Martin Liška
On 03/20/2015 01:10 AM, Jan Hubicka wrote: Hi. Explanation of the patch is introduced. thanks mask = ~OPTION_MASK_ISA_64BIT; if (mask == 0 @@ -30670,6 +30673,14 @@ def_builtin_const (HOST_WIDE_INT mask, const char *name, static void ix86_add_new_builtins

Re: [PATCH] Speed-up def_builtin_const (ix86_valid_target_attribute)

2015-03-20 Thread Jakub Jelinek
On Fri, Mar 20, 2015 at 11:33:09AM +0100, Martin Liška wrote: @@ -30670,6 +30673,20 @@ def_builtin_const (HOST_WIDE_INT mask, const char *name, static void ix86_add_new_builtins (HOST_WIDE_INT isa) { + /* Last cached isa value. */ + static HOST_WIDE_INT last_tested_isa_value = 0; +

Re: [PATCH] Speed-up def_builtin_const (ix86_valid_target_attribute)

2015-03-20 Thread Martin Liška
solution. I've just implemented new patch, which I've been testing. What do you think about it? Martin From 3469163018d3c8ad2849bb9d241e12ae8723da90 Mon Sep 17 00:00:00 2001 From: mliska mli...@suse.cz Date: Fri, 20 Mar 2015 14:51:47 +0100 Subject: [PATCH] Speed-up def_builtin_const

Re: [PATCH] Speed-up def_builtin_const (ix86_valid_target_attribute)

2015-03-20 Thread Jan Hubicka
gcc/ChangeLog: 2015-03-20 Martin Liska mli...@suse.cz Jakub Jelinek ja...@redhat.com * config/i386/i386.c (def_builtin): Set deferred_isa_values for masks that can potentially include a builtin. (ix86_add_new_builtins): Introduce fast filter for isa values

Re: [PATCH] Speed-up def_builtin_const (ix86_valid_target_attribute)

2015-03-19 Thread Jan Hubicka
Hi. Explanation of the patch is introduced. thanks mask = ~OPTION_MASK_ISA_64BIT; if (mask == 0 @@ -30670,6 +30673,14 @@ def_builtin_const (HOST_WIDE_INT mask, const char *name, static void ix86_add_new_builtins (HOST_WIDE_INT isa) { + /* Last cached isa

Re: [PATCH] Speed-up def_builtin_const (ix86_valid_target_attribute)

2015-03-19 Thread Martin Liška
On 03/13/2015 05:42 AM, Jan Hubicka wrote: 2015-03-09 Martin Liska marxin.li...@gmail.com * config/i386/i386.c (def_builtin): Collect union of all possible masks. (ix86_add_new_builtins): Do not iterate over all builtins in cases that isa value has no

Re: [PATCH] Speed-up def_builtin_const (ix86_valid_target_attribute)

2015-03-12 Thread Jan Hubicka
2015-03-09 Martin Liska marxin.li...@gmail.com * config/i386/i386.c (def_builtin): Collect union of all possible masks. (ix86_add_new_builtins): Do not iterate over all builtins in cases that isa value has no intersection with possible masks and(or) last

[PATCH] Speed-up def_builtin_const (ix86_valid_target_attribute)

2015-03-09 Thread Martin Liška
Hello. During compilation of Chromium project, I noticed (perf top) that ix86_valid_target_attribute is utilized by about 0.8-1.9%. Following patch introduces simple optimization that reduces the utilization to ~0.05%. Tests have been running on x86_64-linux-pc. Ready for trunk? Martin From