Re: [PATCH] Asan static optimization (draft)

2014-08-14 Thread Yuri Gribov
On Thu, Aug 14, 2014 at 8:53 PM, Konstantin Serebryany wrote: > In order for your work to be generally useful, I'd ask several things: > - Update > https://code.google.com/p/address-sanitizer/wiki/CompileTimeOptimizations > with examples that will be handled Done (to be honest I only plan to do

Re: [PATCH 2/3]Improve induction variable elimination

2014-08-14 Thread Bin.Cheng
On Thu, Aug 14, 2014 at 11:29 PM, Sebastian Pop wrote: > Bin.Cheng wrote: >> >> The overflow check can be improved by using deeper inspection to prove the >> >> equality. This patch deals with that by making below two improvements: >> >> a) Handles constant cases. >> >> b) Uses affine expansi

Re: [PATCH lto]Fix the mis-matched arguments of lto_define_builtins

2014-08-14 Thread Bin.Cheng
On Fri, Aug 8, 2014 at 4:54 PM, Richard Biener wrote: > On Fri, Aug 8, 2014 at 10:05 AM, Bin.Cheng wrote: >> On Thu, Aug 7, 2014 at 8:06 PM, Richard Biener >> wrote: >>> On Thu, Aug 7, 2014 at 11:46 AM, Bin Cheng wrote: Hi, As analyzed in PR62032, this patch fixes the latent lto bug b

Re: [PATCH 156/236] PHASE 4: Removal of scaffolding

2014-08-14 Thread Jeff Law
On 08/06/14 11:22, David Malcolm wrote: / * rtx-classes-status.txt: Update. --- rtx-classes-status.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rtx-classes-status.txt b/rtx-classes-status.txt index b22cb1e..90d6efd 100644 --- a/rtx-classes-status.txt +++

Re: [PATCH 007/236] New function: for_each_rtx_in_insn

2014-08-14 Thread Jeff Law
On 08/14/14 15:36, Richard Sandiford wrote: Right. I think they're held up on patch 40 (ironically the one that conflicts with yours). I think we could declare side effects in notes as invalid and add some ENABLE_CHECKING bits to enforce that. With those in place, my concerns around #40 from

[PATCH] cygwin: accept -pthread

2014-08-14 Thread Yaakov Selkowitz
The attached patch enables the -pthread flag for cygwin targets. While not strictly necessary for compiling or linking with pthread or _r functions on Cygwin, accepting it allows for better compatibility with other platforms. -- Yaakov Selkowitz Associate Software Engineer, ARM Red Hat, Inc.

[PING] [PATCH 1/2] Add -B support to gcc-ar/ranlib/nm

2014-08-14 Thread Andi Kleen
Andi Kleen writes: Ping! > From: Andi Kleen > > To use gcc-{ar,ranlib} for boot strap we need to add a -B option > to the tool. Since ar has weird and unusual argument conventions > implement the code by hand instead of using any libraries. > > v2: Fix typo > > gcc/: > > 2014-08-04 Andi Kleen

[rl78] allow global+acc

2014-08-14 Thread DJ Delorie
Minor optimization. Committed. * config/rl78/rl78-real.md (addqi3_real): Allow adding global variables to the accumulator. Index: config/rl78/rl78-real.md === --- config/rl78/rl78-real.md(revision 213996) +++ co

[rl78] split mem-mem moves

2014-08-14 Thread DJ Delorie
Letting GCC think that any mem-mem alternative is OK leads to trouble with far mem to far mem moves, so split out the moves we can make. Committed. * config/rl78/predicates.md (rl78_near_mem_operand): New. * config/rl78/rl78-virt.md (movqi_virt_mm, movqi_virt) (movhi_virt_

[rl78] disable umul for G10

2014-08-14 Thread DJ Delorie
The G10 family doesn't support this opcode. Committed. * config/rl78/rl78-expand.md (umulqihi3): Disable for G10. * config/rl78/rl78-virt.md (umulhi3_shift_virt): Likewise. (umulqihi3_virt): Likewise. * config/rl78/rl78-real.md (umulhi3_shift_real): Likewise.

Re: [PATCH testcase]fix failure of g++.dg/ext/arm-fp16/fp16-mangle-1.C

2014-08-14 Thread Bin.Cheng
On Thu, Aug 14, 2014 at 11:18 PM, Jason Merrill wrote: > On 08/14/2014 04:31 AM, Bin Cheng wrote: >> >> g++.dg/ext/arm-fp16/fp16-mangle-1.C is failed because GCC now sets >> DECL_COMDAT on template instantiations if flag_implicit_templates is in >> effect. Then DECL_WEAK will be set accordingly.

RE: [PATCH] Fix confusion between target, host and symbolic number byte sizes

2014-08-14 Thread Thomas Preud'homme
Ping? Best regards, Thomas > -Original Message- > From: gcc-patches-ow...@gcc.gnu.org [mailto:gcc-patches- > ow...@gcc.gnu.org] On Behalf Of Thomas Preud'homme > Sent: Thursday, August 07, 2014 1:57 PM > To: gcc-patches@gcc.gnu.org > Subject: RE: [PATCH] Fix confusion between target, hos

[rl78] allow const->far moves

2014-08-14 Thread DJ Delorie
Minor tweak, committed. * config/rl78/rl78-virt.md (movhi_virt): Allow const->far moves. Index: config/rl78/rl78-virt.md === --- config/rl78/rl78-virt.md(revision 213994) +++ config/rl78/rl78-virt.md(working copy) @@

Re: [testsuite patch] add __ARM_ARCH check for arm_v8_neon_ok

2014-08-14 Thread Janis Johnson
On 08/14/2014 01:06 AM, Ramana Radhakrishnan wrote: > On Mon, Aug 11, 2014 at 11:01 PM, Janis Johnson > wrote: >> The check for effective target arm_v8_neon_ok passes even if __ARM_ARCH >> is not 8 or greater, but then some tests fail because intrinsic functions >> used in the test have not been d

PR62091 (ipa-devirt disagreeing with ipa-prop)

2014-08-14 Thread Jan Hubicka
Hi, testcase in PR 62092 triggers assert I added to temporarily check that new ipa-devirt code handles all cases as ipa-prop devirtualization. In this case ipa-prop gives wrong answer because of bug I introduced into walk_aliased_vdefs. The function_entry_reached is supposed to be cleared at begg

[PATCH] Avoid redundant indirect_info computation during inderct edge cloning

2014-08-14 Thread Ilya Enkovich
Hi, I get a segafult in decl_maybe_in_construction_p during function versioning. We have following steps in clone creation (e.g. as in create_version_clone_with_body): 1. Create function decl 2. Create clone of cgraph node 3. Copy function body After the first step there is no body attached

Re: [C++ PATCH] PR c++/62101

2014-08-14 Thread Jason Merrill
On 08/13/2014 08:48 PM, Ville Voutilainen wrote: Ok, modified patch attached. The changelog entry was attached to the previous mail as an evil binary attachment (gmail...) Ah, so it was. here, for convenience: Thanks; having it in the body of the mail is more convenient for me as 'git am'

Re: [PATCH 007/236] New function: for_each_rtx_in_insn

2014-08-14 Thread Richard Sandiford
David Malcolm writes: > On Tue, 2014-08-12 at 15:08 -0600, Jeff Law wrote: >> On 08/06/14 11:19, David Malcolm wrote: >> > gcc/ >> >* rtl.h (for_each_rtx_in_insn): New function. >> >* rtlanal.c (for_each_rtx_in_insn): Likewise. >> OK. Note that we're moving away from for_each_rtx... I h

Re: [PATCH GCC]Add 'force-dwarf-lexical-blocks' command line option

2014-08-14 Thread Joseph S. Myers
On Mon, 28 Jul 2014, Herman, Andrei wrote: > Please find attached the fixed patch files for this change: > 1. Add command line option -fforce-dwarf-lexical-blocks. > 2. Support flag_force_dwarf_blocks in C. The front-end parts of these patches are OK with the changes indicated below

Re: [PATCH 007/236] New function: for_each_rtx_in_insn

2014-08-14 Thread David Malcolm
On Tue, 2014-08-12 at 15:08 -0600, Jeff Law wrote: > On 08/06/14 11:19, David Malcolm wrote: > > gcc/ > > * rtl.h (for_each_rtx_in_insn): New function. > > * rtlanal.c (for_each_rtx_in_insn): Likewise. > OK. Note that we're moving away from for_each_rtx... I haven't > looked, but there'

[PATCH] _cxa_thread_atexit fixes for Cygwin/MinGW-w64

2014-08-14 Thread Yaakov Selkowitz
The attached patch implements premature DLL unloading prevention in __cxa_thread_atexit for Cygwin and MinGW-w64 targets. The mingw.org target is welcome to do the same in their os_defines.h, but this code does require Windows XP/2003, and they have historically catered to older platforms. M

[PATCH] cygwin: __cxa_atexit support

2014-08-14 Thread Yaakov Selkowitz
This patch implements __cxa_atexit support for Cygwin targets. This requires Cygwin 1.7.32 and binutils master. Net difference in check-c++ results on i686-pc-cygwin: # of unexpected failures-11 # of unexpected successes -3 # of expected failures -61 # of unsupported test

Re: [GOOGLE] Fix the bug where implicit section names prevents function splitting

2014-08-14 Thread Yi Yang
Thank you. I fixed the typo and committed. On Thu, Aug 14, 2014 at 1:49 PM, Teresa Johnson wrote: > On Thu, Aug 14, 2014 at 1:46 PM, Yi Yang wrote: >> Patch v2. >> >> Trunk no longer set SECTION_NAME for implicit section names, so this >> probably does not apply to trunk. It's probably not neces

Re: [GOOGLE] Fix the bug where implicit section names prevents function splitting

2014-08-14 Thread Teresa Johnson
On Thu, Aug 14, 2014 at 1:46 PM, Yi Yang wrote: > Patch v2. > > Trunk no longer set SECTION_NAME for implicit section names, so this > probably does not apply to trunk. It's probably not necessary for > trunk either. > > Tested for Google 4.8(albeit unnecessary) and 4.9 branch. > > diff --git gcc/

Re: [GOOGLE] Fix the bug where implicit section names prevents function splitting

2014-08-14 Thread Yi Yang
Patch v2. Trunk no longer set SECTION_NAME for implicit section names, so this probably does not apply to trunk. It's probably not necessary for trunk either. Tested for Google 4.8(albeit unnecessary) and 4.9 branch. diff --git gcc/bb-reorder.c gcc/bb-reorder.c index a1b3e65..b9a829e 100644 ---

Re: [PATCH 012/236] Convert DF_REF_INSN to a function for now

2014-08-14 Thread David Malcolm
On Wed, 2014-08-13 at 20:55 -0600, Jeff Law wrote: > On 08/13/14 18:11, David Malcolm wrote: > > On Wed, 2014-08-13 at 14:34 -0600, Jeff Law wrote: > >> On 08/13/14 14:28, David Malcolm wrote: > >>> Thanks. Although this function gets converted back to a macro in patch > >>> 191, I just realized t

Re: [PATCH Fortran/Diagnostics] Move Fortran to common diagnostics machinery

2014-08-14 Thread Manuel López-Ibáñez
Hi Tobias (or any other Fortran maintainer), Is this patch OK? https://gcc.gnu.org/ml/gcc-patches/2014-08/msg00488.html Thanks, Manuel.

Re: [Google/4_9] A couple gcov-tool fixes

2014-08-14 Thread Teresa Johnson
On Thu, Aug 14, 2014 at 11:36 AM, Xinliang David Li wrote: > Ok. > > The interfaces of counter reading/getting now becomes confusing. Should it > be better documented somewhere so that developer knows what is the right one > to use in a certain context? I think it is documented in libgcov.h and a

Re: [PATCH 130/236] config/bfin: Use rtx_insn

2014-08-14 Thread Jeff Law
On 08/06/14 11:21, David Malcolm wrote: gcc/ * config/bfin/bfin-protos.h (asm_conditional_branch): Strengthen param 1 from rtx to rtx_insn *. * config/bfin/bfin.c (expand_prologue_reg_save): Likewise for the various locals named "insn". (expand_epilogue_reg

Re: [C++ Patch] pedwarn issues

2014-08-14 Thread Jason Merrill
OK, thanks. Jason

Re: [patch] No allocation for empty unordered containers

2014-08-14 Thread François Dumont
On 13/08/2014 11:50, Jonathan Wakely wrote: Yes you can, it's conforming to replace a (non-virtual) member function with default arguments by two or more member functions. We do it all the time. See 17.6.5.5 [member.functions] p2. You should have told it sooner ! But of course no-one is s

Re: [Patch] PR55189 enable -Wreturn-type by default

2014-08-14 Thread Manuel López-Ibáñez
--- a/gcc/fortran/options.c +++ b/gcc/fortran/options.c @@ -693,6 +693,10 @@ gfc_handle_option (size_t scode, const char *arg, int value, gfc_option.warn_line_truncation = value; break; +case OPT_Wmissing_return: + warn_missing_return = value; + break; + case OPT_W

Re: RFC: Patch for switch elimination (PR 54742)

2014-08-14 Thread Sebastian Pop
Steve Ellcey wrote: > I understand the desire not to add optimizations just for benchmarks but > we do know other compilers have added this optimization for coremark > (See > http://community.arm.com/groups/embedded/blog/2013/02/21/coremark-and-compiler-performance) > and the 13 people on the CC li

[C++ Patch] pedwarn issues

2014-08-14 Thread Paolo Carlini
Hi, a few cases where under SFINAE we just go ahead and we don't immediately return error_mark_node. During the work I also noticed a glitch in cxx_sizeof_or_alignof_type where we do complain & tf_warning_or_error but in that case complain is a bool. Tested x86_64-linux as usual. Thanks, Pa

[Google/4_9] A couple gcov-tool fixes

2014-08-14 Thread Teresa Johnson
Fix a couple problems found during testing. Backport from trunk (r212694) failed to fixup gcov_read_counter invocations in google-specific code. Also, forward port r211800 from google/4_8 to tolerate differences after COMDAT fixup. Passes manual testing, ok if passes regression tests? Thanks, Te

Re: RFC: Patch for switch elimination (PR 54742)

2014-08-14 Thread Steve Ellcey
On Thu, 2014-08-14 at 10:21 -0600, Jeff Law wrote: > On 08/14/14 10:12, David Malcolm wrote: > > On Thu, 2014-08-14 at 09:56 -0600, Jeff Law wrote: > >> On 08/14/14 04:32, Richard Biener wrote: > You'll note in a separate thread Steve and I discussed this during > Cauldron > and it

Re: [GOOGLE] Fix the bug where implicit section names prevents function splitting

2014-08-14 Thread Teresa Johnson
On Wed, Aug 13, 2014 at 9:03 PM, Yi Yang wrote: > This bug is caused by my last patch, which did not differentiate > between explicit section names (via attributes) and implicit section > names (via -ffunction-section). > > This patch fixes that. > > -- > > diff --git gcc/bb-reorder.c gcc/bb-reord

Re: [patch, fortran] Fix PR 62106

2014-08-14 Thread Steve Kargl
On Thu, Aug 14, 2014 at 07:40:52PM +0200, Thomas Koenig wrote: > Hello world, > > the attached patch fixes the regression by making sure we never > try to create a temporary variable from a temporary variable, > which happened in the wrong order. > > Regression-tested. OK for trunk and 4.9? >

Re: [C PATCH] Allow ATOMIC_*_LOCK_FREE in #if directive (DR#458)

2014-08-14 Thread Joseph S. Myers
On Thu, 14 Aug 2014, Marek Polacek wrote: > The DR#458 is about the usage of ATOMIC_*_LOCK_FREE macros defined in > stdatomic.h in the #if directives. Proposed Technical Corrigendum of > this DR is that these macros should expand to constant expressions > suitable for use in #if preprocessing dir

Re: [PATCH] Fix PR62031

2014-08-14 Thread Sebastian Pop
Richard Biener wrote: > > This fixes wrong answer from data-dependence analysis by realizing > that _all_ (even non-evolving) indirect accesses cannot be constrained > to a full object size. This also gets rid of that ugly > DR_UNCONSTRAINED_BASE hack (but effectively make it always active). >

[C PATCH] Allow ATOMIC_*_LOCK_FREE in #if directive (DR#458)

2014-08-14 Thread Marek Polacek
The DR#458 is about the usage of ATOMIC_*_LOCK_FREE macros defined in stdatomic.h in the #if directives. Proposed Technical Corrigendum of this DR is that these macros should expand to constant expressions suitable for use in #if preprocessing directives. This patch does that by mapping these mac

Re: RFC: Patch for switch elimination (PR 54742)

2014-08-14 Thread Steve Ellcey
On Wed, 2014-08-13 at 11:52 +0200, Richard Biener wrote: > On Wed, Aug 13, 2014 at 4:54 AM, Bin.Cheng wrote: > > On Wed, Aug 13, 2014 at 4:40 AM, Jeff Law wrote: > >> On 08/12/14 14:23, Richard Biener wrote: > >>> On August 12, 2014 8:31:16 PM CEST, Jeff Law wrote: > On 08/12/14 11:46, Stev

[patch, fortran] Fix PR 62106

2014-08-14 Thread Thomas Koenig
Hello world, the attached patch fixes the regression by making sure we never try to create a temporary variable from a temporary variable, which happened in the wrong order. Regression-tested. OK for trunk and 4.9? 2014-08-19 Thomas Koenig PR fortran/62106 * gfortran.h (symb

Re: [PATCH, AArch64] Use MOVN to generate 64-bit negative immediates where sensible

2014-08-14 Thread Richard Henderson
On 08/13/2014 05:29 AM, Kyrill Tkachov wrote: > Is the attached patch ok? It just moves the section as you suggested. I did a > build of the Linux kernel with and without this patch to make sure no code-gen > was accidentally affected. Looks good. > We'd need to store a mapping from constant to R

Re: [PATCH] Fix UB in diagnostic.c

2014-08-14 Thread Marek Polacek
On Wed, Aug 13, 2014 at 09:03:37PM +0200, Manuel López-Ibáñez wrote: > I don't think this is the right fix. The problem is that we are trying > to print the caret in a column that is larger than the line_width. We > do this because the file given by the line directive has nothing to do > with the a

Re: [PATCH] Fix PR62081

2014-08-14 Thread Sebastian Pop
Richard Biener wrote: > > The following fixes missing dominator computation before fixing loops. > Rather than doing even more such weird stuff in a pass gate function > this puts this into a new pass scheduled before the loop passes gate. > Ok. > +unsigned int > +pass_fix_loops::execute (funct

Re: [Patch] PR55189 enable -Wreturn-type by default

2014-08-14 Thread Sylvestre Ledru
On 12/08/2014 19:48, Joseph S. Myers wrote: > On Mon, 11 Aug 2014, Sylvestre Ledru wrote: > >>> The test Wmissing-return2.c only has one of the two warnings. But as per >>> "-Wreturn-type => Run both", and for backwards compatibility with the >>> existing definition of -Wreturn-type, both warnin

Re: [PATCH] Asan static optimization (draft)

2014-08-14 Thread Konstantin Serebryany
Indeed, thanks for working on this. We've been wanting such optimization phase from day one, but never got to implementing it (except for a few simple ones). https://code.google.com/p/address-sanitizer/wiki/CompileTimeOptimizations There have been several attempts outside of our team to do such opt

[committed] Two !$omp declare simd fixes (PR fortran/62076)

2014-08-14 Thread Jakub Jelinek
Hi! I've committed following fix for two issues revealed e.g. by valgrind on some of the udr*.f90 testcases. buffer could be uninitialized, and gfc_free_omp_udr could free symbols in the combiner_ns (or initializer_ns) when freeing those whole namespaces, so if some symbols were queued for commit/

Re: [C++ Patch] PR 54377

2014-08-14 Thread Jason Merrill
OK. Jason

[PATCH] Handle -fsanitize=leak more similarly to address/thread

2014-08-14 Thread Jakub Jelinek
Hi! Right now when -fsanitize=leak adds -llsan, it adds it late on the command line, so e.g. -lstdc++ comes after it, which seems to be bad. The following patch puts it early on the link command line like we do for -lasan or -ltsan. Bootstrapped/regtested on x86_64-linux and i686-linux, ok for tr

Re: [PATCH 000/236] Introduce rtx subclasses

2014-08-14 Thread David Malcolm
On Wed, 2014-08-13 at 20:13 -0400, David Malcolm wrote: > On Wed, 2014-08-06 at 13:19 -0400, David Malcolm wrote: > > This is the patch series I spoke about at Cauldron in the talk > > "A proposal for typesafe RTL"; slides here: > > http://dmalcolm.fedorapeople.org/presentations/cauldron-2014/rtl >

Re: RFC: Patch for switch elimination (PR 54742)

2014-08-14 Thread David Malcolm
On Thu, 2014-08-14 at 09:56 -0600, Jeff Law wrote: > On 08/14/14 04:32, Richard Biener wrote: > >> You'll note in a separate thread Steve and I discussed this during Cauldron > >> and it was at my recommendation Steve resurrected his proof of concept > >> plugin and started beating it into shape. >

Re: [PATCH] Fix PR62077

2014-08-14 Thread Jason Merrill
On 08/14/2014 05:07 AM, Richard Biener wrote: So - can you take over this C++ frontend issue? OK. Jason

Re: RFC: Patch for switch elimination (PR 54742)

2014-08-14 Thread Jeff Law
On 08/14/14 10:12, David Malcolm wrote: On Thu, 2014-08-14 at 09:56 -0600, Jeff Law wrote: On 08/14/14 04:32, Richard Biener wrote: You'll note in a separate thread Steve and I discussed this during Cauldron and it was at my recommendation Steve resurrected his proof of concept plugin and start

Re: [C++ Patch] PR 54377

2014-08-14 Thread Paolo Carlini
Hi, On 08/14/2014 04:18 PM, Jason Merrill wrote: On 08/14/2014 07:14 AM, Paolo Carlini wrote: + nparms -= variadic_p ? variadic_p : default_p; What if you have both default arguments and parameter packs? Right. Got distracted by the minor secondary issues... It seems to me that

[linaro/gcc-4_9-branch] Merge from gcc-4_9-branch and backports

2014-08-14 Thread Yvan Roux
Hi all we have merged the gcc-4_9-branch into linaro/gcc-4_9-branch up to revision 213803 as r213943. We have also backported this set of revisions: r211140 as r213455 [AArch64] Drop ISB after FPCR write. r211270 as r213790 [AArch64] Remove from arm_neon.h functions not in the spec r21

Re: RFC: Patch for switch elimination (PR 54742)

2014-08-14 Thread Jeff Law
On 08/14/14 04:32, Richard Biener wrote: You'll note in a separate thread Steve and I discussed this during Cauldron and it was at my recommendation Steve resurrected his proof of concept plugin and started beating it into shape. But do we really want a pass just to help coremark? And that's th

[linaro/gcc-4_9-branch] Merge from gcc-4_8-branch and backports

2014-08-14 Thread Yvan Roux
Hi all we have merged the gcc-4_8-branch into linaro/gcc-4_8-branch up to revision 213802 as r213944. We have also backported this set of revisions: r204251 as r213841 PR sanitizer/58543 r206529 as r213842 PR target/59744 r206530 as r213842 PR target/59744 / fix changelog typo Th

Re: [PATCH] Fix find_inc in the scheduler (PR target/62025)

2014-08-14 Thread Bernd Schmidt
On 08/14/2014 05:50 PM, Jakub Jelinek wrote: I hope the scheduler doesn't attempt to swap sp += 24 with flags setter because of the sp += 16 vs. flags setter dependency and sp += 24 vs. sp += 16 dependency, but I feel kind of uneasy with find_inc assuming the recorded dependency is the one for th

Re: [PATCH] Fix find_inc in the scheduler (PR target/62025)

2014-08-14 Thread Jakub Jelinek
On Thu, Aug 14, 2014 at 11:49:37AM +0200, Jakub Jelinek wrote: > On Thu, Aug 14, 2014 at 11:34:04AM +0200, Jakub Jelinek wrote: > > So, to set DEP_MULTIPLE even in the case where ask_depencency_caches > > returns DEP_PRESENT, you'd need to find the old dependency anyway (isn't > > that going to be

Re: [PATCH PR62011]

2014-08-14 Thread Yuri Rumyantsev
It does not help Silvermont, i.e. only Haswell and SandyBridge are affected. I don't use splitter since (1) it deletes zeroing of dest reg; (2) scheduler can hoist them up . I will try r16/r32 variants and tell you later. 2014-08-14 19:18 GMT+04:00 H.J. Lu : > On Thu, Aug 14, 2014 at 4:50 AM, Yuri

Re: [PATCH 2/3]Improve induction variable elimination

2014-08-14 Thread Sebastian Pop
Bin.Cheng wrote: > >> The overflow check can be improved by using deeper inspection to prove the > >> equality. This patch deals with that by making below two improvements: > >> a) Handles constant cases. > >> b) Uses affine expansion as deeper inspection to check the equality. Looks good to

Re: [PATCH testcase]fix failure of g++.dg/ext/arm-fp16/fp16-mangle-1.C

2014-08-14 Thread Jason Merrill
On 08/14/2014 04:31 AM, Bin Cheng wrote: g++.dg/ext/arm-fp16/fp16-mangle-1.C is failed because GCC now sets DECL_COMDAT on template instantiations if flag_implicit_templates is in effect. Then DECL_WEAK will be set accordingly. As a result, checking for ".global " would fail on this case.

Re: [PATCH PR62011]

2014-08-14 Thread H.J. Lu
On Thu, Aug 14, 2014 at 4:50 AM, Yuri Rumyantsev wrote: > Hi All, > > Here is a fix for PR 62011 - remove false dependency for unary > bit-manipulation instructions for latest BigCore chips (Sandybridge > and Haswell) by outputting in assembly file zeroing destination > register before bmi instruc

Re: [PATCH PR62011]

2014-08-14 Thread Uros Bizjak
On Thu, Aug 14, 2014 at 4:06 PM, Ilya Enkovich wrote: > 2014-08-14 18:00 GMT+04:00 Alexander Monakov : >> >> >> On Thu, 14 Aug 2014, Yuri Rumyantsev wrote: >> >>> Hi All, >>> >>> Here is a fix for PR 62011 - remove false dependency for unary >>> bit-manipulation instructions for latest BigCore chi

Re: [PATCH 1/2, x86] Add palignr support for AVX2.

2014-08-14 Thread H.J. Lu
On Thu, Aug 14, 2014 at 1:08 AM, Evgeny Stupachenko wrote: > Ping. > > On Thu, Jul 10, 2014 at 7:29 PM, Evgeny Stupachenko > wrote: >> On Mon, Jul 7, 2014 at 6:40 PM, Richard Henderson wrote: >>> On 07/03/2014 02:53 AM, Evgeny Stupachenko wrote: -expand_vec_perm_palignr (struct expand_vec_

Re: [PATCH PR62011]

2014-08-14 Thread Yuri Rumyantsev
For example, for the first loop for attached test-case we do not prepend xor to popcnt because of using destination register: .L23: leal 1(%rdx), %ecx popcntq (%rbx,%rax,8), %rax leal 2(%rdx), %r8d popcntq (%rbx,%rcx,8), %rcx addq %rax, %rcx leal 3(%rdx), %esi xorq %rax, %rax popcntq (%rbx,%r8,8),

[PATCH] Fix PR62031

2014-08-14 Thread Richard Biener
This fixes wrong answer from data-dependence analysis by realizing that _all_ (even non-evolving) indirect accesses cannot be constrained to a full object size. This also gets rid of that ugly DR_UNCONSTRAINED_BASE hack (but effectively make it always active). Bootstrapped on x86_64-unknown-linu

[PATCH][LTO] Hide string streaming details

2014-08-14 Thread Richard Biener
This hides a part of the internal strings processing detail by using appropriate APIs. LTO bootstrap ongoing on x86_64-unknown-linux-gnu. Richard. 2014-08-14 Richard Biener * data-streamer.h (streamer_string_index, string_for_index): Remove. * data-streamer-out.c (st

Re: Fix if-conversion pass for dead type-unsafe code

2014-08-14 Thread Richard Biener
On Sat, Aug 9, 2014 at 7:14 AM, Tom de Vries wrote: > On 08-08-14 17:17, Tom de Vries wrote: >>> >>> Maybe instead of a new mem_alias_equal_p simply compare MEM_ATTRs >>> with mem_attrs_eq_p? >> >> >> I propose to fix it this way (as attached) on 4.8/4.9/trunk, and maybe do >> a more >> efficient

Re: [PATCH, PR61776] verify_flow_info failed: control flow in the middle of basic block with -fprofile-generate

2014-08-14 Thread Richard Biener
On Mon, Jul 28, 2014 at 8:08 AM, Wei Mi wrote: >> But fact is that it is _not_ necessary to split the block because there >> are no outgoing abnormal edges from it. >> >> The verifier failure is an artifact from using the same predicates during >> CFG building and CFG verifying (usually ok, but fo

Re: [PATCH i386 AVX512] [15/n] Extend vcvtudq2ps to avx512vl.

2014-08-14 Thread Uros Bizjak
On Thu, Aug 14, 2014 at 2:20 PM, Kirill Yukhin wrote: > Hello, > This patch extends vcvtudq2ps to support > AVX-512VL new insns. > > Bootstrapped. > New tests on top of patch-set all pass > under simulator. > > Is it ok for trunk? > > gcc/ > * config/i386/sse.md > (define_mode_iter

Re: [C++ Patch] PR 54377

2014-08-14 Thread Jason Merrill
On 08/14/2014 07:14 AM, Paolo Carlini wrote: + nparms -= variadic_p ? variadic_p : default_p; What if you have both default arguments and parameter packs? Jason

Re: [PATCH i386 AVX512] [13/n] Add VF2_AVX512VL and vcvt[t]pd2 insns.

2014-08-14 Thread Uros Bizjak
On Thu, Aug 14, 2014 at 2:12 PM, Kirill Yukhin wrote: > Hello, > This patch introduces vcvt[t]pd2 patterns. > > Bootstrapped. > New tests on top of patch-set all pass > under simulator. > > Is it ok for trunk? > > gcc/ > * config/i386/i386.md > (define_code_attr ufix_bool): New. >

Re: [PATCH PR62011]

2014-08-14 Thread Ilya Enkovich
2014-08-14 18:00 GMT+04:00 Alexander Monakov : > > > On Thu, 14 Aug 2014, Yuri Rumyantsev wrote: > >> Hi All, >> >> Here is a fix for PR 62011 - remove false dependency for unary >> bit-manipulation instructions for latest BigCore chips (Sandybridge >> and Haswell) by outputting in assembly file ze

Re: [PATCH PR62011]

2014-08-14 Thread Alexander Monakov
On Thu, 14 Aug 2014, Yuri Rumyantsev wrote: > Hi All, > > Here is a fix for PR 62011 - remove false dependency for unary > bit-manipulation instructions for latest BigCore chips (Sandybridge > and Haswell) by outputting in assembly file zeroing destination > register before bmi instruction. I c

Re: [PATCH i386 AVX512] [12/n] Extend OI/TImode moves.

2014-08-14 Thread Uros Bizjak
On Thu, Aug 14, 2014 at 1:42 PM, Kirill Yukhin wrote: > Hello, > This patch extends moves to OI/TI mode. > > Bootstrapped. > New tests on top of patch-set all pass > under simulator. > > Is it ok for trunk? > > gcc/ > * config/i386/i386.md > (define_insn "*movoi_internal_avx"): Add

[PINGv3][PATCHv3] Fix vector tests on ARM platforms with disabled unaligned accesses

2014-08-14 Thread Marat Zakirov
On 08/07/2014 12:52 PM, Marat Zakirov wrote: On 07/31/2014 04:08 PM, Marat Zakirov wrote: On 07/24/2014 07:40 PM, Marat Zakirov wrote: On 07/24/2014 04:27 PM, Marat Zakirov wrote: On 07/23/2014 06:23 PM, Marat Zakirov wrote: Hi there! I made a patch which fixes regressions on ARM platfo

Re: [PATCH] Bump BASE-VER, change snapshots to gcc-5-2014xxxxx

2014-08-14 Thread Jakub Jelinek
On Thu, Aug 14, 2014 at 03:09:26PM +0200, Richard Biener wrote: > > See $subject. > > Ok? > > Thanks, > Richard. > > 2014-08-14 Richard Biener > > maintainer-scripts/ > * crontab: Change trunk snapshots from 4.10 to 5. > > gcc/ > * BASE-VER: Change to 5.0.0 LGTM.

Re: [PATCH] fix hardreg_cprop to honor HARD_REGNO_MODE_OK.

2014-08-14 Thread Ilya Tocar
> >I've observed SPEC2006 failure on avx512-vlbwdq branch. > >It was caused by hardreg_cprop. In maybe_mode_change it was > >assumed, that all values of the same register class and same mode. > >are ok. This is not the case for i386/avx512. We need to honor > >HARD_REGNO_MODE_OK. > One could argu

[PATCH] Bump BASE-VER, change snapshots to gcc-5-2014xxxxx

2014-08-14 Thread Richard Biener
See $subject. Ok? Thanks, Richard. 2014-08-14 Richard Biener maintainer-scripts/ * crontab: Change trunk snapshots from 4.10 to 5. gcc/ * BASE-VER: Change to 5.0.0 Index: maintainer-scripts/crontab ===

Re: [PATCH i386 AVX512] [10/n] Add vector move/load/store.

2014-08-14 Thread Kirill Yukhin
On 14 Aug 13:45, Uros Bizjak wrote: > Please update the above entry. Whoops. Updated ChangeLog: gcc/ * config/i386/i386.c (ix86_expand_special_args_builtin): Handle avx512vl_storev8sf_mask, avx512vl_storev8si_mask, avx512vl_storev4df_mask, avx512vl_storev4di_mask, a

Fwd: [PATCH i386 AVX512] [14/n] Add convert to PS insn patterns.

2014-08-14 Thread Kirill Yukhin
Adding community. -- Forwarded message -- From: Kirill Yukhin Date: Thu, Aug 14, 2014 at 4:16 PM Subject: [PATCH i386 AVX512] [14/n] Add convert to PS insn patterns. To: Uros Bizjak Hello, This patch introduces new patterns for conversions to PS. Bootstrapped. New tests on to

[PATCH i386 AVX512] [15/n] Extend vcvtudq2ps to avx512vl.

2014-08-14 Thread Kirill Yukhin
Hello, This patch extends vcvtudq2ps to support AVX-512VL new insns. Bootstrapped. New tests on top of patch-set all pass under simulator. Is it ok for trunk? gcc/ * config/i386/sse.md (define_mode_iterator VF1_AVX512VL): New. (define_insn "ufloatv16siv16sf2"): Delete.

[PATCH i386 AVX512] [13/n] Add VF2_AVX512VL and vcvt[t]pd2 insns.

2014-08-14 Thread Kirill Yukhin
Hello, This patch introduces vcvt[t]pd2 patterns. Bootstrapped. New tests on top of patch-set all pass under simulator. Is it ok for trunk? gcc/ * config/i386/i386.md (define_code_attr ufix_bool): New. * config/i386/sse.md (define_mode_iterator VF2_AVX512VL): New.

Re: [PATCH i386 AVX512] [11/n] AVX-512DQ extract.

2014-08-14 Thread Uros Bizjak
On Thu, Aug 14, 2014 at 1:36 PM, Kirill Yukhin wrote: > This patch extends "vec_extract_hi_" > pattern to support AVX-512DQ insn. > > Bootstrapped. > > Bootstrapped. > New tests on top of patch-set all pass > under simulator. > > Is it ok for trunk? > > gcc/ > * config/i386/i386.md >

Re: [PATCH i386 AVX512] [9/n] Extend iterators and attributes.

2014-08-14 Thread Kirill Yukhin
Hello Uroš, On 14 Aug 13:35, Uros Bizjak wrote: > OK (although I'd put single-use attributes - blendbits and probably > new dbpsadbwmode - nearby their users). Thanks! I'll move `blendbits' to its user. As far as currently no user for `dbpsadbwmode' exists in main trunk - I'll move it to the user i

[PATCH] Fix PR62081

2014-08-14 Thread Richard Biener
The following fixes missing dominator computation before fixing loops. Rather than doing even more such weird stuff in a pass gate function this puts this into a new pass scheduled before the loop passes gate. Bootstrap and regtest running on x86_64-unknown-linux-gnu. Richard. 2014-08-14 Richa

[PATCH PR62011]

2014-08-14 Thread Yuri Rumyantsev
Hi All, Here is a fix for PR 62011 - remove false dependency for unary bit-manipulation instructions for latest BigCore chips (Sandybridge and Haswell) by outputting in assembly file zeroing destination register before bmi instruction. I checked that performance restored for popcnt, lzcnt and tzcn

[PATCH] Fix PR62067

2014-08-14 Thread Richard Biener
A static checker determined that LTO def_fn_type has erratic va_start/end combinations on error paths. The following fixes that. Bootstrap and regtest running on x86_64-unknown-linux-gnu. Richard. 2014-08-14 Richard Biener * lto-lang.c (def_fn_type): Fix error handling wrt va_end.

Re: [PATCH i386 AVX512] [10/n] Add vector move/load/store.

2014-08-14 Thread Uros Bizjak
On Thu, Aug 14, 2014 at 1:30 PM, Kirill Yukhin wrote: > Hello, > This patch extends load/store insns. > No built-ins added in this patch. > > Bootstrapped. > New tests on top of patch-set all pass > under simulator. > > Is it ok for trunk? > > gcc/ > * config/i386/i386.c > (ix86_ex

[PATCH i386 AVX512] [12/n] Extend OI/TImode moves.

2014-08-14 Thread Kirill Yukhin
Hello, This patch extends moves to OI/TI mode. Bootstrapped. New tests on top of patch-set all pass under simulator. Is it ok for trunk? gcc/ * config/i386/i386.md (define_insn "*movoi_internal_avx"): Add EVEX version. (define_insn "*movti_internal"): Ditto. -- Thanks, K

[PATCH i386 AVX512] [11/n] AVX-512DQ extract.

2014-08-14 Thread Kirill Yukhin
Hello, This patch extends "vec_extract_hi_" pattern to support AVX-512DQ insn. Bootstrapped. Bootstrapped. New tests on top of patch-set all pass under simulator. Is it ok for trunk? gcc/ * config/i386/i386.md (define_attr "isa"): Add avx512dq, noavx512dq. (define_attr "

Re: [PATCH i386 AVX512] [9/n] Extend iterators and attributes.

2014-08-14 Thread Uros Bizjak
On Thu, Aug 14, 2014 at 1:20 PM, Kirill Yukhin wrote: > This patch extends iterators and iterator modes > to support new patterns (future patches). > > Bootstrapped. > > Is it ok trunk? > > * config/i386/sse.md (define_mode_attr avx512): New. > (define_mode_attr sse2_avx_avx512f):

[PATCH i386 AVX512] [10/n] Add vector move/load/store.

2014-08-14 Thread Kirill Yukhin
Hello, This patch extends load/store insns. No built-ins added in this patch. Bootstrapped. New tests on top of patch-set all pass under simulator. Is it ok for trunk? gcc/ * config/i386/i386.c (ix86_expand_special_args_builtin): Handle avx512vl_storev8sf_mask, avx512vl_s

[PATCH i386 AVX512] [9/n] Extend iterators and attributes.

2014-08-14 Thread Kirill Yukhin
Hello, This patch extends iterators and iterator modes to support new patterns (future patches). Bootstrapped. Is it ok trunk? * config/i386/sse.md (define_mode_attr avx512): New. (define_mode_attr sse2_avx_avx512f): Allow V8HI, V16HI, V32HI, V2DI, V4DI modes. (de

Re: [patch,gomp4] make fortran loop variables implicitly private in openacc

2014-08-14 Thread Thomas Schwinge
Hi! On Wed, 13 Aug 2014 22:41:47 +0200, Tobias Burnus wrote: > Cesar Philippidis wrote: > > According to section 2.6.1 in the openacc spec, fortran loop variables > > should be implicitly private like in openmp. This patch does just so. > > Makes sense. Looking at the patch, I wonder whether the

[C++ Patch] PR 54377

2014-08-14 Thread Paolo Carlini
Hi, this is a diagnostic issue about the error message for a wrong number of template arguments vs default arguments. The fix is simple but also replacing the second error with a default, as recommended by Manuel in the audit trail, means that we have to adjust a few existing testcases. Note,

[PATCH] Speed up type_hash_canon

2014-08-14 Thread Richard Biener
This speeds up type_hash_canon by avoiding a 2nd hashtable lookup in the case no previous same type is in the hashtable. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2014-08-14 Richard Biener * tree.c (type_hash_lookup, type_hash_add): Merge into ...

  1   2   >