Re: [PATCH] Fix PR58775

2013-10-20 Thread Zhenqiang Chen
On 18 October 2013 19:09, Jakub Jelinek wrote: > On Fri, Oct 18, 2013 at 06:36:44PM +0800, Zhenqiang Chen wrote: > --- a/gcc/tree-ssa-reassoc.c > +++ b/gcc/tree-ssa-reassoc.c > @@ -2861,6 +2861,19 @@ swap_ops_for_binary_stmt (vec ops, > } > } > > +/* Determine if stmt A is in th next list of

Re: Honnor ix86_accumulate_outgoing_args again

2013-10-20 Thread Vladimir Makarov
On 13-10-19 4:30 PM, Jan Hubicka wrote: Jan, Does this seem reasonable to you? Oops, sorry, I missed your email. (I was travelling and I am finishing a paper now). Thanks, Igor -Original Message- From: Zamyatin, Igor Sent: Tuesday, October 15, 2013 3:48 PM To: Jan Hubicka Subject: RE

Re: patch to enable LRA for ppc

2013-10-20 Thread Vladimir Makarov
On 13-10-18 11:26 AM, David Edelsohn wrote: On Thu, Oct 3, 2013 at 5:02 PM, Vladimir Makarov wrote: The following patch permits today trunk to use LRA for ppc by default. To switch it off -mno-lra can be used. The patch was bootstrapped on ppc64. GCC testsuite does not have regressions too (i

Re: FW: MAX_PATH problems with mingw gcc

2013-10-20 Thread Joey Ye
Vladimir, I found no more issue on patch itself. But ChangeLogs are missing. Please refer to format in /include/ChangeLog, and generate yours in your next email for /include /libcpp /libiberty Maintainers of libiberty are in TO list. - Joey

Re: [PATCH] reimplement -fstrict-volatile-bitfields v4, part 1/2

2013-10-20 Thread Sandra Loosemore
On 10/18/2013 10:38 AM, Richard Biener wrote: Sandra Loosemore wrote: On 10/18/2013 04:50 AM, Richard Biener wrote: On Sat, Sep 28, 2013 at 4:19 AM, Sandra Loosemore wrote: This patch fixes various -fstrict-volatile-bitfields wrong-code bugs, including instances where bitfield values were

[PR libstdc++/58804][PR libstdc++/58729] tr2/dynamic_bitset issues.

2013-10-20 Thread Ed Smith-Rowland
Greetings. Here is a patch to correct tr2/dynamic_bitset to use __builtin_xxxll for long long instead of the long versions. Relevant bugs: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58804 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58729 Builds and *really* tests clean on x86_64-linux. OK?

Re: [PATCH, SH] Add support for inlined builtin-strcmp (2/2)

2013-10-20 Thread Kaz Kojima
Christian Bruel wrote: > thanks for having retested this, The tests are still not complete for > RTL generated functions, there are cases where no str/cmp wil be > emitted, because we can predict than the size is less than 4 and so have > a direct fallthru into the byte at a byte loop copying. >

Re: User-define literals for std::complex.

2013-10-20 Thread Ed Smith-Rowland
On 09/27/2013 05:39 AM, Jonathan Wakely wrote: On 27 September 2013 05:17, Ed Smith-Rowland wrote: The complex user-defined literals finally passed (n3779) with the resolution to DR1473 allowing the suffix id to touch the quotes (Can't find it but I put it in not too long ago). I think it's bee

Re: [PATCH]Fix computation of offset in ivopt

2013-10-20 Thread Bin.Cheng
On Fri, Oct 18, 2013 at 7:18 PM, Richard Biener wrote: > On Thu, Oct 17, 2013 at 7:52 AM, bin.cheng wrote: >> Hi, >> As noted in previous messages, GCC forces offset to unsigned in middle end. >> It also gets offset value and stores it in HOST_WIDE_INT then uses it in >> various computation. In

[wwwdocs] steering.html -- update list of members

2013-10-20 Thread Gerald Pfeifer
This updates the list of steering committee members after Joe stepped down a bit ago. Committed. Gerald Index: steering.html === RCS file: /cvs/gcc/wwwdocs/htdocs/steering.html,v retrieving revision 1.35 diff -u -3 -p -r1.35 steerin

[C++ Patch] PR 58647

2013-10-20 Thread Paolo Carlini
Hi, this ICE on valid, [4.7/4.8/4.9 Regression], happens only with -std=c++11 and is quite simple to analyze: cxx_eval_constant_expression sees a COMPONENT_REF and forwards to cxx_eval_component_reference, but the latter, evidently, only handles "fields" not functions (per the comment) and an

Re: [patch] Cleanup tree-ssa-ter.c exports

2013-10-20 Thread Eric Botcazou
> Unfortunately, tree-ssa-ter.c also has 2 functions > (find_replaceable_exprs() and dump_replaceable_exprs()) which are > exported and utilized by tree-outof-ssa.c (the file is a part of the > out-of-ssa module). So I moved the prototypes from tree-ssa-live.h into > a newly created tree-ssa-te

Re: [wide-int] Reduce the size of the scratch arrays

2013-10-20 Thread Richard Sandiford
Kenneth Zadeck writes: > On 10/20/2013 06:30 AM, Richard Sandiford wrote: >> If yesterday's patch goes in, we'll only need the scratch array for >> HWI inputs. We can therefore shrink it to 2 HWIs. >> >> Tested on x86_64-linux-gnu. OK for wide-int? >> >> Thanks, >> Richard >> >> >> Index: gcc/wi

Re: [wide-int] Reduce the size of the scratch arrays

2013-10-20 Thread Kenneth Zadeck
On 10/20/2013 06:30 AM, Richard Sandiford wrote: If yesterday's patch goes in, we'll only need the scratch array for HWI inputs. We can therefore shrink it to 2 HWIs. Tested on x86_64-linux-gnu. OK for wide-int? Thanks, Richard Index: gcc/wide-int.h =

Re: [PATCH, rs6000] Adjust vec_unpacku patterns for little endian

2013-10-20 Thread David Edelsohn
On Sun, Oct 20, 2013 at 12:00 AM, Bill Schmidt wrote: > Hi, > > For little endian, the permute control vector for unpacking high and low > halves of a vector register must be reversed from the one used for big > endian. Fixing this corrects 27 failing tests for > powerpc64le-unknown-linux-gnu. >

Re: changing a collision resolution strategy of the symbol table of identifiers

2013-10-20 Thread Ondřej Bílka
On Sun, Oct 20, 2013 at 06:55:40PM +0600, Roman Gareev wrote: > Dear gcc contributors, > > Recently I came across the list of "ideas for speeding up GCC" > (http://gcc.gnu.org/wiki/Speedup_areas). Among others, there was > suggested to replace identifier hash table with other data structure. > >

changing a collision resolution strategy of the symbol table of identifiers

2013-10-20 Thread Roman Gareev
Dear gcc contributors, Recently I came across the list of "ideas for speeding up GCC" (http://gcc.gnu.org/wiki/Speedup_areas). Among others, there was suggested to replace identifier hash table with other data structure. Please find attached a patch, that switches the resolution strategy of a has

RE: [PATCH] reimplement -fstrict-volatile-bitfields v4, part 2/2

2013-10-20 Thread Richard Biener
Bernd Edlinger wrote: >Hi, > >>> What I would suggest is to have a -fgnu-strict-volatile-bit-fields >> >> Why a new option? The -fstrict-volatile-bitfields option is already >> GCC-specific, and I think it can do what you want anyway. > >As I understand Richard's comment, he proposes to >have an o

Re: [wide-int] Add a copy helper routine

2013-10-20 Thread Richard Biener
Richard Sandiford wrote: >When the wi:: patch went in, Kenny rightly complained that there were >too many copy loops. This patch gets rid of an unnecessary loop in >wi::abs and consolidates the rest into a single function. Again, it >helps >the ::is_sign_extended patch. > >Tested on x86_64-linux

Re: [wide-int] Reduce the size of the scratch arrays

2013-10-20 Thread Richard Biener
Richard Sandiford wrote: >If yesterday's patch goes in, we'll only need the scratch array for >HWI inputs. We can therefore shrink it to 2 HWIs. >Tested on x86_64-linux-gnu. OK for wide-int? > Ok Thanks, Richard. >Thanks, >Richard > > >Index: gcc/wide-int.h >=

Re: [wide-int] Turn lts_p & co. back into template functions

2013-10-20 Thread Richard Biener
Richard Sandiford wrote: >This patch just converts some functions back to template functions, >for the benefit of the upcoming ::is_sign_extended patch. There's no >behavioural change. > >Tested on x86_64-linux-gnu. OK for wide-int? Ok. Thanks, Richard. >Thanks, >Richard > > >Index: gcc/gcc/w

Re: Always treat sext_hwi and zext_hwi as inline

2013-10-20 Thread Richard Biener
Richard Sandiford wrote: >At the moment there are two copies of sext_hwi and zext_hwi, one inline >for !ENABLE_CHECKING and one out-of-line for ENABLE_CHECKING. However, >there are several wide-int callers where it's obvious from context that >the precision is <= HOST_BITS_PER_WIDE_INT, so if the

Re: [PATCH, SH] Add support for inlined builtin-strcmp (2/2)

2013-10-20 Thread Christian Bruel
Hi Oleg, On 10/19/2013 11:30 AM, Oleg Endo wrote: > > > I've attached two test cases, tested with > make -k check-gcc RUNTESTFLAGS="sh.exp=strcmp* --target_board=sh-sim > \{-m2/-ml,-m2/-mb,-m2a/-mb,-m4/-ml,-m4/-mb,-m4a/-ml,-m4a/-mb}" > > Could you please include them? > > Cheers, > Oleg > > than

[wide-int] Add is_sign_extended optimisation

2013-10-20 Thread Richard Sandiford
Another follow-up to yesterday's patch. This one implements Richard's suggestion of having an is_sign_extended trait to optimise cases where excess upper bits are known to be signs rather than undefined. The uses so far are: * make to_shwi () equivalent to slow () * turn eq_p into a simple loop

[wide-int] Add a copy helper routine

2013-10-20 Thread Richard Sandiford
When the wi:: patch went in, Kenny rightly complained that there were too many copy loops. This patch gets rid of an unnecessary loop in wi::abs and consolidates the rest into a single function. Again, it helps the ::is_sign_extended patch. Tested on x86_64-linux-gnu. OK to install? Thanks, Ri

[wide-int] Reduce the size of the scratch arrays

2013-10-20 Thread Richard Sandiford
If yesterday's patch goes in, we'll only need the scratch array for HWI inputs. We can therefore shrink it to 2 HWIs. Tested on x86_64-linux-gnu. OK for wide-int? Thanks, Richard Index: gcc/wide-int.h === --- gcc/wide-int.h

[wide-int] Turn lts_p & co. back into template functions

2013-10-20 Thread Richard Sandiford
This patch just converts some functions back to template functions, for the benefit of the upcoming ::is_sign_extended patch. There's no behavioural change. Tested on x86_64-linux-gnu. OK for wide-int? Thanks, Richard Index: gcc/gcc/wide-int.h =

Always treat sext_hwi and zext_hwi as inline

2013-10-20 Thread Richard Sandiford
At the moment there are two copies of sext_hwi and zext_hwi, one inline for !ENABLE_CHECKING and one out-of-line for ENABLE_CHECKING. However, there are several wide-int callers where it's obvious from context that the precision is <= HOST_BITS_PER_WIDE_INT, so if the functions are inline for ENAB

Re: [Patch] Change default executor to DFS in regex

2013-10-20 Thread Tim Shen
On Sun, Oct 20, 2013 at 4:42 AM, Paolo Carlini wrote: > Ok with those changes. Committed. Thanks! -- Tim Shen a.patch Description: Binary data

Re: [PATCH i386 3/8] [AVX512] [19/n] Add AVX-512 patterns: Extracts and converts.

2013-10-20 Thread Uros Bizjak
On Thu, Oct 17, 2013 at 4:16 PM, Kirill Yukhin wrote: >> >> > I suspect gen_lowpart is bad turn when reload is completed, as >> >> > far as it can create new pseudo. gen_lowpart () may call >> >> > gen_reg_rtx (), which contain corresponging gcc_assert (). >> >> >> >> False. gen_lowpart is perfe

Re: [PATCH][i386] Enable vector_loop in memset expanding and merge expanders for memset and memmov

2013-10-20 Thread Jan Hubicka
> That's a good point. I added a check for this case - so if CONST_INT is > passed > we assume that mode is QI. But usually promoted value resides in a register, > so > we don't go over-conservative here. Hmm, so if we use broadcast constant, then we won't end up having CONST_INT here? It is O

Re: [PATCH][i386] Enable vector_loop in memset expanding and merge expanders for memset and memmov

2013-10-20 Thread Michael V. Zolotukhin
Hi Jan, Thanks for the review, please find my answers below. > > +/* Output "rep; mov" or "rep; stos" instruction depending on ISSETMEM > > argument. > > + When ISSETMEM is true, arguments SRCMEM and SRCPTR are ignored. > > + When ISSETMEM is false, arguments VALUE and ORIG_VALUE are ignored

Re: libstdc++ Testsuite extension for sort, partial_sort, partial_sort_copy, nth_element

2013-10-20 Thread Paolo Carlini
On 10/19/2013 11:10 PM, Christopher Jefferson wrote: I plan to write my tests if these are accepted (although writing this reminded me why gcc is the worst open source project for submitting code to I have ever worked with). Why? If you really think something is wrong and have constructive propo

[Patch, fortran] PR58793 - Wrong value for _vtab for intrinsic types with CLASS(*): storage_size of class(*) gives wrong result

2013-10-20 Thread Paul Richard Thomas
Dear All, This patch is fairly obvious and follows a suggestion from Tobias to use gfc_element_size. He even wrote the testcase! Bootstrapped and regested on FC17/x86_64 - OK for trunk? Cheers Paul PS In writing this, I have just noted that I need to trap ts->type == BT_HOLLERITH. It would b

Re: nth_element fix [58800]

2013-10-20 Thread Paolo Carlini
Hi, On 10/19/2013 11:02 PM, Christopher Jefferson wrote: A previous fix to a performance problem in std::sort unfortunately has lead to a crashing bug in std::nth_element. The following minimal patch fixes the problem (there are a couple of different ways of fixing it, this is the shortest and

Re: [Patch] Change default executor to DFS in regex

2013-10-20 Thread Paolo Carlini
On 10/19/2013 11:28 PM, Tim Shen wrote: I see. Here's the macro version. Thanks! Mostly Ok, but the macro is completely undocumented. Please change the comment which says: "... more than certain number of quantifiers..." to actually mention the macro, thus, say: "... more than _GLIBCXX_REGEX_D

Re: [wide-int] int_traits

2013-10-20 Thread Richard Sandiford
Kenneth Zadeck writes: > On 10/19/2013 10:18 AM, Richard Sandiford wrote: >> Kenneth Zadeck writes: >>> On 10/19/2013 05:01 AM, Richard Sandiford wrote: Mike Stump writes: > + // We optimize x < y, where y is 64 or fewer bits. > + // We have to be careful to not allow comparison t

[MIPS] Fix mips-ps-[57].c tests after cost model changes

2013-10-20 Thread Richard Sandiford
I could just have added an extra command-line option, but I went for this instead. Tested on mips64-linux-gnu and applied. Richard gcc/testsuite/ * gcc.target/mips/mips-ps-5.c: Add alignment attributes. * gcc.target/mips/mips-ps-7.c: Likewise. Index: gcc/testsuite/gcc.target/mi

[MIPS] Add bswap patterns

2013-10-20 Thread Richard Sandiford
Noticed the other day that we'd never added bswap patterns for WSBH & co. Tested on mips64-linux-gnu with --with-arch=mips64r2 and applied. Richard gcc/ * config/mips/mips.h (ISA_HAS_WSBH): Define. * config/mips/mips.md (UNSPEC_WSBH, UNSPEC_DSBH, UNSPEC_DSHD): New consta