Re: [patch ping] libstdc++ testsuite cxxflags

2014-05-16 Thread Mike Stump
On May 16, 2014, at 5:16 PM, Sandra Loosemore wrote: > It appears that this patch from last fall never got reviewed. > Can someone take a look? Tentative Ok. Let’s let the library people have a chance to weigh in… I’d say, let’s give them til Tuesday… should be enough time...

Re: [PATCH] Ensure count_scale is no larger than REG_BR_PROB_BASE

2014-05-16 Thread Jan Hubicka
> Do you mean adjusting bb->count? Because in > expand_call_inline(tree-inline.c), it will use bb->count to pass into > copy_body to calculate count_scale. What about taking here callee->count instead? For inline nodes without any capping hack, bb->count == edge->count = callee->count. When profi

Re: [DOC Patch] symbol rename pragmas

2014-05-16 Thread David Wohlferd
This patch is in response to Rainer Orth's comment (below). I have a release on file with the FSF, but don't have SVN write access. Problem description: The (already committed) patch at the top of this thread removed a reference to Solaris. It has been requested that this be restored to show

Re: [PATCH] Ensure count_scale is no larger than REG_BR_PROB_BASE

2014-05-16 Thread Dehao Chen
Do you mean adjusting bb->count? Because in expand_call_inline(tree-inline.c), it will use bb->count to pass into copy_body to calculate count_scale. Thanks, Dehao On Fri, May 16, 2014 at 5:22 PM, Jan Hubicka wrote: >> In AutoFDO, a basic block's count can be much larger than it's actual >> coun

Re: [PATCH] Ensure count_scale is no larger than REG_BR_PROB_BASE

2014-05-16 Thread Jan Hubicka
> In AutoFDO, a basic block's count can be much larger than it's actual > count because debug info might be incorrect. In this case, a call edge > count (calculated from BB count) could be much larger than callee's > header count, making the count_scale incorrectly large. In this case I still thin

[patch ping] libstdc++ testsuite cxxflags

2014-05-16 Thread Sandra Loosemore
It appears that this patch from last fall never got reviewed. https://gcc.gnu.org/ml/gcc-patches/2013-10/msg02340.html Can someone take a look? I'll commit the patch on Cesar's behalf if it's approved. -Sandra

Re: [PATCH] Ensure count_scale is no larger than REG_BR_PROB_BASE

2014-05-16 Thread Dehao Chen
On Fri, May 16, 2014 at 4:41 PM, Jan Hubicka wrote: > > > Is this patch ok for trunk? Bootstrapped and regression test on-going. > > > > Thanks, > > Dehao > > > > 2014-05-16 Dehao Chen > > > > * tree-inline.c (initialize_cfun): Ensure count_scale is no larger > > than REG_BR_PRO

Add a new test

2014-05-16 Thread Xinliang David Li
This test makes sure compiler does not wrongly devirtualize virtual calls into __cxa_pure_virtual or __buitlin_unreachable. Ok to checkin? David Index: testsuite/ChangeLog === --- testsuite/ChangeLog (revision 210479) +++ testsuite/C

Re: [PATCH] Ensure count_scale is no larger than REG_BR_PROB_BASE

2014-05-16 Thread Jan Hubicka
> Is this patch ok for trunk? Bootstrapped and regression test on-going. > > Thanks, > Dehao > > 2014-05-16 Dehao Chen > > * tree-inline.c (initialize_cfun): Ensure count_scale is no larger > than REG_BR_PROB_BASE. > (copy_cfg_body): Likewise. This seems like wrong pl

Re: [PATCH SH] Don't switch mode around fmov (pr61195)

2014-05-16 Thread Oleg Endo
On Fri, 2014-05-16 at 11:14 +0200, Christian Bruel wrote: > Hi, > > This patch reduces the number of unnecessary PR mode switches for single > precision moves. When FPSCR.SZ is not forced. Test illustration in the patch > > Regtested for sh-none-elf with -m4, (-m2a still running), bootstrapped >

Re: [PATCH SH] Don't switch mode around fmov (pr61195)

2014-05-16 Thread Kaz Kojima
Christian Bruel wrote: > This patch reduces the number of unnecessary PR mode switches for single > precision moves. When FPSCR.SZ is not forced. Test illustration in the patch > > Regtested for sh-none-elf with -m4, (-m2a still running), bootstrapped > on sh4-linux-elf board. ok for trunk ? OK.

[PATCH] Ensure count_scale is no larger than REG_BR_PROB_BASE

2014-05-16 Thread Dehao Chen
Is this patch ok for trunk? Bootstrapped and regression test on-going. Thanks, Dehao 2014-05-16 Dehao Chen * tree-inline.c (initialize_cfun): Ensure count_scale is no larger than REG_BR_PROB_BASE. (copy_cfg_body): Likewise. Index: gcc/tree-inline.c ===

[SH, committed] Fix some failing PR 54089 tests

2014-05-16 Thread Oleg Endo
Hi, since recently, some of the PR 54089 tests started to fail. The attached patch fixes that. Tested on rev 210305 with make -k check RUNTESTFLAGS="--target_board=sh-sim \{-m2/-ml,-m2/-mb,-m2a/-mb,-m4/-ml,-m4/-mb,-m4a/-ml,-m4a/-mb}" and no new failures. Committed as rev 210537. Cheers, Oleg

[SH, committed] Fix some failing PR 51244 tests

2014-05-16 Thread Oleg Endo
Hi, Since recently, some of the PR 51244 tests started to fail. The attached patch fixes that. Tested on rev 210305 with make -k check RUNTESTFLAGS="--target_board=sh-sim \{-m2/-ml,-m2/-mb,-m2a/-mb,-m4/-ml,-m4/-mb,-m4a/-ml,-m4a/-mb}" and no new failures. Committed as rev 210535. Cheers, Oleg

[SH, committed] Adjust default branch cost

2014-05-16 Thread Oleg Endo
Hi, I've noticed that on e.g. SH2 and SH2A it seems to be better to set the branch cost = 2, as it is done for the SH4 variants. This results in overall slightly smaller code (according to CSiBE) and better utilization of the various T bit patterns. Tested on rev 210305 with make -k check RUNTE

Re: [PATCH] Fix ARM NAN fraction bits

2014-05-16 Thread Maciej W. Rozycki
On Fri, 16 May 2014, Joseph S. Myers wrote: > > 2014-05-16 Maciej W. Rozycki > > > > PR libgcc/60166 > > * sysdeps/arm/soft-fp/sfp-machine.h (_FP_NANFRAC_S, _FP_NANFRAC_D) > > (_FP_NANSIGN_Q): Set the quiet bit. > > OK for glibc. Joseph, thanks for your review, this is now in.

Re: [PATCH 5/5] add libcc1

2014-05-16 Thread Mike Stump
On May 16, 2014, at 11:48 AM, Tom Tromey wrote: > This patch adds the plugin to the gcc tree So, this code isn’t as portable as gcc (I can run a native gcc bootstrap on my binutils sim simulator for my target, and I’m a newlib target), so it needs autoconf to explain if enough features are pres

Re: [PATCH (for next stage 1)] Add return type to gimple function dumps

2014-05-16 Thread David Malcolm
On Fri, 2014-05-16 at 12:17 -0400, David Malcolm wrote: > On Fri, 2014-05-16 at 14:59 +0200, Richard Biener wrote: > > On Tue, Apr 29, 2014 at 5:01 PM, David Malcolm wrote: > > > On Tue, 2014-04-29 at 11:16 +0200, Richard Biener wrote: > > >> On Tue, Apr 29, 2014 at 2:58 AM, David Malcolm > > >>

Re: [PATCH 5/5] add libcc1

2014-05-16 Thread Mike Stump
On May 16, 2014, at 11:48 AM, Tom Tromey wrote: > I've edited this one down by removing the auto-generated stuff , and > then compressed it. + // remove the "const" and handle deallcation from pointer types. sp: deallocation

Re: [PATCH] Update bb count and freq when merging two blocks

2014-05-16 Thread Jan Hubicka
> > This patch makes sure max count is used when merging two basic blocks. > > > > Bootstrapped and testing on-going. > > > > OK for trunk if test is ok? > > > > Thanks, > > Dehao > > > > gcc/ChangeLog: > > 2014-05-16 Dehao Chen > > > > * tree-cfg.c (gimple_merge_blocks): Updates bb

Re: [PATCH] Update bb count and freq when merging two blocks

2014-05-16 Thread Jan Hubicka
> This patch makes sure max count is used when merging two basic blocks. > > Bootstrapped and testing on-going. > > OK for trunk if test is ok? > > Thanks, > Dehao > > gcc/ChangeLog: > 2014-05-16 Dehao Chen > > * tree-cfg.c (gimple_merge_blocks): Updates bb count with max count. >

[PATCH] Update bb count and freq when merging two blocks

2014-05-16 Thread Dehao Chen
This patch makes sure max count is used when merging two basic blocks. Bootstrapped and testing on-going. OK for trunk if test is ok? Thanks, Dehao gcc/ChangeLog: 2014-05-16 Dehao Chen * tree-cfg.c (gimple_merge_blocks): Updates bb count with max count. Index: gcc/tree-cfg.c ==

Re: [PATCH] Use optimize_function_for_size_p to assign register frequency

2014-05-16 Thread Jan Hubicka
> This patch uses optimize_function_for_size_p to replace old > optimize_size check in regs.h and ira-int.h to make it consistent. > > Bootstrapped and testing on-going. > > OK for trunk if test passes? OK, thanks! Honza

Re: add dbgcnt and opt-info support for devirtualization

2014-05-16 Thread Xinliang David Li
Modified the patch according to yours and Richard's feedback. PTAL. thanks, David On Fri, May 16, 2014 at 9:03 AM, Jan Hubicka wrote: >> Hi, debugging runtime bugs due to devirtualization can be hard for >> very large C++ programs with complicated class hierarchy. This patch >> adds the support

RE: [RFC][PATCH][MIPS] Patch to enable LRA for MIPS backend

2014-05-16 Thread Robert Suchanek
I was thinking of something else but it doesn't appear to be good enough and most likely will follow the suggested way. Regards, Robert From: Richard Sandiford [rdsandif...@googlemail.com] Sent: 15 May 2014 22:34 To: Robert Suchanek Cc: Matthew Fortune; Vl

Re: [PATCH 5/5] add libcc1

2014-05-16 Thread Tom Tromey
> "Joseph" == Joseph S Myers writes: >> + self->args.push_back ("gcc"); Joseph> seems wrong - at least you should use the appropriate compiler Joseph> name after transformation for cross compilers / Joseph> --program-transform-name. Ok, we'll look into it. Joseph> I'm not clear on which l

[PATCH] Use optimize_function_for_size_p to assign register frequency

2014-05-16 Thread Dehao Chen
This patch uses optimize_function_for_size_p to replace old optimize_size check in regs.h and ira-int.h to make it consistent. Bootstrapped and testing on-going. OK for trunk if test passes? Thanks, Dehao gcc/ChangeLog: 2014-05-16 Dehao Chen * ira-int.h (REG_FREQ_FROM_EDGE_FREQ): Us

Re: [GCC RFC]A new and simple pass merging paired load store instructions

2014-05-16 Thread Oleg Endo
On Fri, 2014-05-16 at 18:10 +0800, Bin.Cheng wrote: > On Thu, May 15, 2014 at 6:31 PM, Oleg Endo wrote: > > > > How about the following. > > Instead of adding new hooks and inserting the pass to the general pass > > list, make the new > > pass class take the necessary callback functions directly.

Re: [PATCH 5/5] add libcc1

2014-05-16 Thread Joseph S. Myers
On Fri, 16 May 2014, Tom Tromey wrote: > This patch adds the plugin to the gcc tree and updates the top-level > configury. I don't see anything obvious that would disable the plugin if plugins are unsupported (e.g. on Windows host) or disabled (--disable-plugin). Probably the relevant support

Re: [PATCH][C-family] Fix PR61184

2014-05-16 Thread Jeff Law
On 05/14/14 03:06, Richard Biener wrote: The following fixes pre/post-inc/dec gimplification of promoted integer types. There is the issue with the way TYPE_OVERFLOW_UNDEFINED is related to TYPE_OVERFLOW_WRAPS and the (non-)semantics of -fno-strict-overflow. In this case, with -On -fno-strict-

Re: [patch, libstdc++] fix TCL error in abi.exp

2014-05-16 Thread Jeff Law
On 05/16/14 13:53, Sandra Loosemore wrote: As noted in PR 23867, the libstdc++ ABI testsuite doesn't work for installed compiler testing. There is some logic in abi.exp to check for the presence of the required bits and skip these tests if they're not there, but before it gets that far it's hitt

Re: Unreviewed Patch

2014-05-16 Thread Jeff Law
On 02/22/14 16:07, rbmj wrote: Hi all, Just a ping, I haven't gotten anything back on this patch: http://gcc.gnu.org/ml/gcc-patches/2014-02/msg00621.html The patch needs to be tested by bootstrapping on another platform and performing a regression test.Most folks use an x86_64 linux system

[patch, libstdc++] fix TCL error in abi.exp

2014-05-16 Thread Sandra Loosemore
As noted in PR 23867, the libstdc++ ABI testsuite doesn't work for installed compiler testing. There is some logic in abi.exp to check for the presence of the required bits and skip these tests if they're not there, but before it gets that far it's hitting a TCL error: ERROR: can't read "base

Re: [PATCH] Fix more typos in error messages

2014-05-16 Thread Jeff Law
On 02/25/14 09:21, Benno Schulenberg wrote: 2014-02-07 Benno Schulenberg * config/arc/arc.c (arc_init): Fix typo in error message. * config/i386/i386.c (ix86_expand_builtin): Likewise. (split_stack_prologue_scratch_regno): Likewise. * fortran/check.c (gfc_check_

Re: [PATCH, i386, Pointer Bounds Checker 2/x] Intel Memory Protection Extensions (MPX) instructions support

2014-05-16 Thread Jeff Law
On 04/16/14 05:35, Ilya Enkovich wrote: Hi, This patch introduces Intel MPX bound registers and instructions. It was approved earlier for 4.9 and had no significant changes since then. I'll assume patch is OK if no objections arise. Patch was bootstrapped and tested for linux-x86_64. Thank

Re: [patch] fix ppc spe bootstrap error in dwf_regno

2014-05-16 Thread Jeff Law
On 04/30/14 09:15, Cesar Philippidis wrote: I've been working on a patch to switch a few ppc targets to use softfp in libgcc instead of fpbit and I noticed that ppc-none-eabispe fails to bootstrap in both trunk and 4.9. The regression was introduced in

Re: [C++ patch] Reduce vtable alignment

2014-05-16 Thread Jan Hubicka
Hi, this patch makes also the rtti type info for A in the testcase: struct A { virtual void foo(void) {}; virtual void foo2(void) {}; virtual void foo3(void) {}; virtual void foo4(void) {}; virtual void foo5(void) {}; } a; aligned only to the ABI requirement (8) instead of being bumped

Re: [PATCH 3/5] introduce the binding oracle

2014-05-16 Thread Jeff Law
On 05/16/14 09:26, Tom Tromey wrote: gdb wants to supply any declarations that may be referred to by the user's code. Hooking into symbol lookup was an efficient way to accomplish this. This patch introducing a "binding oracle" that is consulted whenever a symbol binding is looked up for the fi

[PATCH 5/5] add libcc1

2014-05-16 Thread Tom Tromey
> "Tom" == Tom Tromey writes: Tom> This patch series is half of a project to let gdb reuse gcc (which Tom> half depends on which list you are seeing this on), so that users can Tom> compile small snippets of code and evaluate them in the current Tom> context of the inferior. Jeff noted that

Re: [PATCH 2/5] c_diagnostic_ignored_function hack

2014-05-16 Thread Tom Tromey
Jeff> BTW, didn't see patch #5 of the series. Maybe it was too big. I will try to resend it compressed. Tom

Re: [PATCH 2/5] c_diagnostic_ignored_function hack

2014-05-16 Thread Jeff Law
On 05/16/14 09:26, Tom Tromey wrote: In the typical case, when compiling a snippet of user code, gdb wraps the user's text in a dummy function. It's somewhat odd for users if an error in their code is mentioned as coming from this dummy function. This patch makes it possible to suppress the fun

Re: [PATCH 1/5] export finish_bitfield_layout from stor-layout

2014-05-16 Thread Jeff Law
On 05/16/14 09:26, Tom Tromey wrote: The gdb plugin handles some aspects of type layout on its own. It does this because it knows the layout of types, but not the path by which the layout was determined -- so normal gcc things like TYPE_PACKED cannot be used. This patch exposes one bit of stor-

Re: [PATCH 1/1][ira-costs] grammar fix of comments

2014-05-16 Thread Jeff Law
On 05/14/14 18:45, Zhouyi Zhou wrote: Fix grammar error for comments above process_bb_node_for_hard_reg_moves Signed-off-by: Zhouyi Zhou --- gcc/ira-costs.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/gcc/ira-costs.c b/gcc/ira-costs.c index 648806b..fbfb070 1006

Re: [DOC Patch] Incorrect @xref in #pragma visibility

2014-05-16 Thread Jeff Law
On 05/14/14 20:25, David Wohlferd wrote: 2014-05-14 David Wohlferd * doc/extend.texi: (Visibility Pragmas) Fix misplaced @xref Approved and installed on your behalf. Thanks, jeff

Re: [PATCH][1/n][RFC] Make FRE/PRE somewhat predicate aware

2014-05-16 Thread Richard Biener
On May 16, 2014 7:07:11 PM CEST, Jeff Law wrote: >On 05/16/14 02:02, Richard Biener wrote: >>> >> Quiet as usual. >Which strongly suggests folks trust you to do the right thing here :-) > I think the FRE/PRE reference in $SUBJECT made me ignore the patch >entirely -- my brain hurts when I look

Re: Avoiding some garbage rtl from instantiate_virtual_regs

2014-05-16 Thread Jeff Law
On 05/16/14 02:47, Richard Sandiford wrote: It seems that in a typical -O0 compile the amount of rtl that starts out as needed but becomes garbage is only slightly less than half of the total amount created. One of the big offenders is the vregs pass, which creates new PLUSes when instanstiating

[C++ patch] Reduce vtable alignment

2014-05-16 Thread Jan Hubicka
Hi, compiling: struct A { virtual void foo(void) {}; virtual void foo2(void) {}; virtual void foo3(void) {}; virtual void foo4(void) {}; virtual void foo5(void) {}; } a; give 32 byte alignment to the virtual table on i386, because we bump up alignments of arrays to size of vector operat

patch to fix PR60969

2014-05-16 Thread Vladimir Makarov
The following patch fixes https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60969 The patch was bootstrapped and tested on x86/x86-64. Committed as rev. 210519 to gcc 4.9 branch and as rev. 210520 to trunk. 2014-05-16 Vladimir Makarov PR rtl-optimization/60969 * ira-costs.c (r

Re: add dbgcnt and opt-info support for devirtualization

2014-05-16 Thread Xinliang David Li
On Fri, May 16, 2014 at 9:51 AM, Jan Hubicka wrote: >> >> I have been chasing a runtime failure of a very large test built with >> gcc-4_9. The bad code either calls a pure function or turn a virtual >> call into __builtin_unreachable (incomplete target set). The indirect >> info shows the otr typ

Re: Eliminate write-only variables

2014-05-16 Thread Jan Hubicka
> Jan Hubicka writes: > > > + /* Remove stores to variables we marked readonly. > > s/read/write/ > > > + /* For calls we can simply remove LHS when it is known to be read > > only. */ > > s/read/write/ Ah, thanks! Honza > > Andreas. > > -- > Andreas Schwab, sch...@linux-m68k.or

Re: Eliminate write-only variables

2014-05-16 Thread Andreas Schwab
Jan Hubicka writes: > + /* Remove stores to variables we marked readonly. s/read/write/ > + /* For calls we can simply remove LHS when it is known to be read > only. */ s/read/write/ Andreas. -- Andreas Schwab, sch...@linux-m68k.org GPG Key fingerprint = 58CA 54C7 6D53 942B 17

[PATCH] Use direct computation to calculate fallthrough edge count.

2014-05-16 Thread Dehao Chen
This patch uses direct computation (instead of indirect minus computation) to calculate fallthrough edge's count and frequency. This is less error-prone when the profile is inconsistent (e.g. all succ edge counts sums larger than bb count). Bootstrapped and regression test on-going. OK for trunk

Re: [PATCH] Use direct computation to calculate fallthrough edge count.

2014-05-16 Thread Jan Hubicka
> This patch uses direct computation (instead of indirect minus > computation) to calculate fallthrough edge's count and frequency. This > is less error-prone when the profile is inconsistent (e.g. all succ > edge counts sums larger than bb count). > > Bootstrapped and regression test on-going. >

Eliminate write-only variables

2014-05-16 Thread Jan Hubicka
Hi, this patch adds code to remove write only static variables. While analyzing effectivity of LTO on firefox, I noticed that surprisingly large part of binary's data segment is occupied by these. Fixed thus. (this is quite trivial transformation, I just never considered it important enough to wo

Re: [PATCH][1/n][RFC] Make FRE/PRE somewhat predicate aware

2014-05-16 Thread Jeff Law
On 05/16/14 02:02, Richard Biener wrote: Quiet as usual. Which strongly suggests folks trust you to do the right thing here :-) I think the FRE/PRE reference in $SUBJECT made me ignore the patch entirely -- my brain hurts when I look at our tree PRE implementation. Jeff

Re: PR 61084: Use widest_int in sparc_fold_builtin

2014-05-16 Thread Eric Botcazou
> This is the second part of PR 61084, which it seems I'd forgotten to post. > pdist calculates a wide result from narrower inputs, so I should have > used widest_int rather than wide_int. Is that documented? Because, if even you wide-int guys got it wrong... > PR target/61084 > * co

Re: [PATCH] Fix ARM NAN fraction bits

2014-05-16 Thread Joseph S. Myers
On Fri, 16 May 2014, Maciej W. Rozycki wrote: > 2014-05-16 Maciej W. Rozycki > > PR libgcc/60166 > * sysdeps/arm/soft-fp/sfp-machine.h (_FP_NANFRAC_S, _FP_NANFRAC_D) > (_FP_NANSIGN_Q): Set the quiet bit. OK for glibc. -- Joseph S. Myers jos...@codesourcery.com

Re: [PATCH] Fix PR54733 Optimize endian independent load/store

2014-05-16 Thread pinskia
> On May 16, 2014, at 4:13 AM, Richard Biener > wrote: > > On Fri, May 16, 2014 at 1:03 PM, Richard Biener > wrote: >> On Fri, May 16, 2014 at 12:56 PM, wrote: >>> >>> On May 16, 2014, at 3:48 AM, Richard Biener wrote: On Fri, May 16, 2014 at 12:07 PM, Thomas Preud'

Re: [PATCH] Fix ARM NAN fraction bits

2014-05-16 Thread Maciej W. Rozycki
On Thu, 27 Feb 2014, Joey Ye wrote: > Current ARM soft-float implementation is violating the RTABI > (http://infocenter.arm.com/help/topic/com.arm.doc.ihi0043d/IHI0043D_rtabi.pd > f) Section 4.1.1.1: > > When not otherwise specified by IEEE 754, the result on an invalid operation > should be the

Re: RFA: Fix calculation of size of builtin setjmp buffer

2014-05-16 Thread Eric Botcazou
> But, fails whenever the size of the mode of the save area is bigger than a > certain amount… On my port, the size taken up by the save area is large > enough to cause this to fail. :-( That's a bit unexpected, why do you need so big a save area exactly? The only architecture for which this

Re: RFA: Fix calculation of size of builtin setjmp buffer

2014-05-16 Thread Eric Botcazou
>OK - here is your version of the patch, extended with a comment which > I think is helpful for other people reading the code, and with the > changes to builtins.c and md.texi removed, since the size of the buffer > is not changing. > >Is this version OK to apply ? Yes, IMO that's fine, t

Re: we are starting the wide int merge

2014-05-16 Thread Gerald Pfeifer
On Sat, 10 May 2014, Gerald Pfeifer wrote: > Since (at least) 16:40 UTC that day my i386-unknown-freebsd10.0 builds > fail as follows: > > Comparing stages 2 and 3 > warning: gcc/cc1obj-checksum.o differs > warning: gcc/cc1-checksum.o differs > warning: gcc/cc1plus-checksum.o differs > B

Re: [GCC RFC]A new and simple pass merging paired load store instructions

2014-05-16 Thread Mike Stump
On May 16, 2014, at 3:07 AM, Bin.Cheng wrote: > >> I don't see how regrename will help resolve [base+offset] false >> dependencies. Can you explain? I'd expect effects from >> hardreg-copyprop "commoning" a base register. > It's the register operand's false dependency, rather than the base's > on

Re: add dbgcnt and opt-info support for devirtualization

2014-05-16 Thread Jan Hubicka
> > I have been chasing a runtime failure of a very large test built with > gcc-4_9. The bad code either calls a pure function or turn a virtual > call into __builtin_unreachable (incomplete target set). The indirect > info shows the otr type to be !maybe_derived_type, and the outer-type > gets cl

Re: [C++ Patch] PR 51640

2014-05-16 Thread Jason Merrill
OK. Jason

Re: [GCC RFC]A new and simple pass merging paired load store instructions

2014-05-16 Thread Jeff Law
On 05/16/14 04:07, Bin.Cheng wrote: Yes, I think this one does have a good reason. The target independent pass just makes sure that two consecutive memory access instructions are free of data-dependency with each other, then feeds it to back-end hook. It's back-end's responsibility to generate

Re: [PATCH 2/5] c_diagnostic_ignored_function hack

2014-05-16 Thread Manuel López-Ibáñez
> This patch makes it possible to suppress the function-name display in > a straightforward way: it adds a new global which the plugin can set > to declare the name of the dummy function. > > This patch seems like a bit of a hack, but there didn't seem to be a > notably cleaner approach. Can't you

Re: [PATCH 0/5] let gdb reuse gcc'c C compiler

2014-05-16 Thread Mike Stump
On May 16, 2014, at 8:26 AM, Tom Tromey wrote: > This patch series is half of a project to let gdb reuse gcc (which > half depends on which list you are seeing this on), so that users can > compile small snippets of code and evaluate them in the current > context of the inferior. Nice… I looked

Re: [patch,mips] avoid invalid register for JALR

2014-05-16 Thread Maciej W. Rozycki
On Wed, 14 May 2014, Sandra Loosemore wrote: > > > When I was trying to benchmark another patch (which I'll be sending > > > along shortly) with CSiBE for -mabi=64, I ran into an assembler error > > > like this: > > > > > > /tmp/ccJv2faG.s: Assembler messages: > > > /tmp/ccJv2faG.s:1605: Error: a

Re: [PATCH (for next stage 1)] Add return type to gimple function dumps

2014-05-16 Thread David Malcolm
On Fri, 2014-05-16 at 14:59 +0200, Richard Biener wrote: > On Tue, Apr 29, 2014 at 5:01 PM, David Malcolm wrote: > > On Tue, 2014-04-29 at 11:16 +0200, Richard Biener wrote: > >> On Tue, Apr 29, 2014 at 2:58 AM, David Malcolm wrote: > >> > On Thu, 2014-04-24 at 15:46 -0600, Jeff Law wrote: > >> >

Re: [GCC RFC]A new and simple pass merging paired load store instructions

2014-05-16 Thread Jeff Law
On 05/16/14 04:07, Bin.Cheng wrote: On Fri, May 16, 2014 at 1:13 AM, Jeff Law wrote: On 05/15/14 10:51, Mike Stump wrote: On May 15, 2014, at 12:26 AM, bin.cheng wrote: Here comes up with a new GCC pass looking through each basic block and merging paired load store even they are not adjace

Re: add dbgcnt and opt-info support for devirtualization

2014-05-16 Thread Xinliang David Li
On Fri, May 16, 2014 at 9:03 AM, Jan Hubicka wrote: >> Hi, debugging runtime bugs due to devirtualization can be hard for >> very large C++ programs with complicated class hierarchy. This patch >> adds the support to report this high level transformation via >> -fopt-info (not hidden inside dump f

Re: [PATCH 2/5] c_diagnostic_ignored_function hack

2014-05-16 Thread Joseph S. Myers
On Fri, 16 May 2014, Tom Tromey wrote: > In the typical case, when compiling a snippet of user code, gdb wraps > the user's text in a dummy function. > > It's somewhat odd for users if an error in their code is mentioned as > coming from this dummy function. > > This patch makes it possible to s

Re: add dbgcnt and opt-info support for devirtualization

2014-05-16 Thread Jan Hubicka
> Hi, debugging runtime bugs due to devirtualization can be hard for > very large C++ programs with complicated class hierarchy. This patch > adds the support to report this high level transformation via > -fopt-info (not hidden inside dump file) and the ability the do binary > search with cutoff.

Re: [PATCH] Implement -fsanitize=float-cast-overflow

2014-05-16 Thread Joseph S. Myers
On Fri, 16 May 2014, Jakub Jelinek wrote: > has variable. Guess the combination of IBM long double and __int128_t > (for long long it is still ok) is rare enough that we don't need to care > about it (alternative would be e.g. to compare against addition of There are existing problems with that

[C++ Patch] PR 51640

2014-05-16 Thread Paolo Carlini
Hi, the main issue in the bug report is luckily already fixed in mainline and 4.9 (had to do with a commit of mine ;( but I think we can do a little better in the diagnostic: avoid the final redundant "does not name a type" error after the error message about ambiguity. Tested x86_64-linux.

[PATCH 2/5] c_diagnostic_ignored_function hack

2014-05-16 Thread Tom Tromey
In the typical case, when compiling a snippet of user code, gdb wraps the user's text in a dummy function. It's somewhat odd for users if an error in their code is mentioned as coming from this dummy function. This patch makes it possible to suppress the function-name display in a straightforward

Re: add dbgcnt and opt-info support for devirtualization

2014-05-16 Thread Xinliang David Li
On Fri, May 16, 2014 at 4:00 AM, Richard Biener wrote: > On Fri, May 16, 2014 at 1:54 AM, Xinliang David Li wrote: >> Hi, debugging runtime bugs due to devirtualization can be hard for >> very large C++ programs with complicated class hierarchy. This patch >> adds the support to report this high

[PATCH 4/5] add gcc/gdb interface files

2014-05-16 Thread Tom Tromey
The gcc plugin is split into two parts. One part is an ordinary gcc plugin. The other part is a shared library that is loaded by gdb. This patch adds some files that define the interface exported by this shared library to gdb. These files also define the internal API by which the gdb- and gcc-s

[PATCH 1/5] export finish_bitfield_layout from stor-layout

2014-05-16 Thread Tom Tromey
The gdb plugin handles some aspects of type layout on its own. It does this because it knows the layout of types, but not the path by which the layout was determined -- so normal gcc things like TYPE_PACKED cannot be used. This patch exposes one bit of stor-layout so it can be used by the plugin.

[PATCH 3/5] introduce the binding oracle

2014-05-16 Thread Tom Tromey
gdb wants to supply any declarations that may be referred to by the user's code. Hooking into symbol lookup was an efficient way to accomplish this. This patch introducing a "binding oracle" that is consulted whenever a symbol binding is looked up for the first time. The oracle is just a global

[PATCH 0/5] let gdb reuse gcc'c C compiler

2014-05-16 Thread Tom Tromey
Hi! This patch series is half of a project to let gdb reuse gcc (which half depends on which list you are seeing this on), so that users can compile small snippets of code and evaluate them in the current context of the inferior. This first series implements this idea for C. A user can compile a

Re: [GCC RFC]A new and simple pass merging paired load store instructions

2014-05-16 Thread Ramana Radhakrishnan
> > Btw, the bswap pass enhancements that are currently in review may > also be an opportunity to catch these. They can merge adjacent > loads that are used "composed" (but not yet composed by storing > into adjacent memory). The basic-block vectorizer should also > handle this (if the compositio

Re: [GCC RFC]A new and simple pass merging paired load store instructions

2014-05-16 Thread Steven Bosscher
On Fri, May 16, 2014 at 12:51 PM, Richard Biener wrote: > Btw, the bswap pass enhancements that are currently in review may > also be an opportunity to catch these. They can merge adjacent > loads that are used "composed" (but not yet composed by storing > into adjacent memory). The basic-block v

[patch] fix recent libstdc++ test failures

2014-05-16 Thread Jonathan Wakely
Tested x86_64-linux, -m32 and -m64, committed to trunk. commit c5265e76b75cbfa0744c354f6d5aaf98c327ff8e Author: Jonathan Wakely Date: Fri May 16 13:26:18 2014 +0100 * testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Fix test for 32-bit target. * testsuite/20_util/mak

Re: [Committed] [PATCH,*/2] shrink wrap a function with a single loop: split live_edge

2014-05-16 Thread Dominique Dhumieres
> One of the two commits breaks several fortran tests in 32 bit mode, ... It it is not the default you need to compile the failing tests with -mtune=core2 or -mtune=corei7. Dominique

[PATCH][ARM] Vectorize bswap[16,32,64] operations

2014-05-16 Thread Kyrill Tkachov
Hi all, This is the aarch32 version of https://gcc.gnu.org/ml/gcc-patches/2014-04/msg00850.html that allows us to (auto-)vectorise the __builtin_bswap[16,32,64] functions using the vrev instructions. For that we create some new NEON builtins and get arm_builtin_vectorized_function to map to t

Re: avx runtime check

2014-05-16 Thread Mike Stump
On May 15, 2014, at 11:52 PM, Richard Biener wrote: > On May 16, 2014 4:47:11 AM CEST, Mike Stump wrote: >> This reorders the avx checks and gates on a target triplet check before >> compiling any code. > > Can you explain why? Sure, because check_avx_hw_available runs [istarget x86_64-*-*] ||

Re: [PATCH] [PING^2] Fix for PR libstdc++/60758

2014-05-16 Thread Alexey Merzlyakov
On 07.05.2014 13:28, Ramana Radhakrishnan wrote: On 05/07/14 09:19, Yury Gribov wrote: Original Message Subject: [PING] [PATCH] Fix for PR libstdc++/60758 Date: Thu, 17 Apr 2014 17:48:12 +0400 From: Alexey Merzlyakov To: Ramana Radhakrishnan CC: gcc-patches@gcc.gnu.org , Viac

Re: patch8.diff updated Was: Re: GCC's -fsplit-stack disturbing Mach's vm_allocate

2014-05-16 Thread Svante Signell
On Fri, 2014-05-16 at 06:20 -0700, Ian Lance Taylor wrote: > On Fri, May 16, 2014 at 1:03 AM, Svante Signell > wrote: > > > > For that part of the patch without it the build on GNU/Hurd fails. On > > the other hand SYS_FCNTL is not defined for e.g. GNU/Linux either. This > > is used in gcc-4.9-4.9

Re: [PATCH, PR52252] Vectorization for load/store groups of size 3.

2014-05-16 Thread Rainer Orth
Evgeny Stupachenko writes: > The test is on general changes. So we can wait for others and if there > are no more objections leave sparc-sun-solaris2 as target to skip. If so, use sparc*-*-* instead. > Or change to the following: > /* { dg-skip-if "The test should pass on x86, other architectur

Re: [PATCH, PR52252] Vectorization for load/store groups of size 3.

2014-05-16 Thread Evgeny Stupachenko
I'm not sure about other architectures. I can test it on x86. Most likely it will pass on Arm, but again I'm not sure that { arm*-*-* } is ok. The test is on general changes. So we can wait for others and if there are no more objections leave sparc-sun-solaris2 as target to skip. Or change to the

Re: [PATCH, PR52252] Vectorization for load/store groups of size 3.

2014-05-16 Thread Jakub Jelinek
On Fri, May 16, 2014 at 03:11:05PM +0200, Rainer Orth wrote: > Hi Evgeny, > > > Does the following fix ok? > > > > 2014-05-16 Evgeny Stupachenko > > > >* gcc.dg/vect/pr52252-ld.c: Fix target for the test. > > > > > > diff --git a/gcc/testsuite/gcc.dg/vect/pr52252-ld.c > > b/gcc/testsuit

Re: patch8.diff updated Was: Re: GCC's -fsplit-stack disturbing Mach's vm_allocate

2014-05-16 Thread Ian Lance Taylor
On Fri, May 16, 2014 at 1:03 AM, Svante Signell wrote: > > For that part of the patch without it the build on GNU/Hurd fails. On > the other hand SYS_FCNTL is not defined for e.g. GNU/Linux either. This > is used in gcc-4.9-4.9.0/src/libgo/go/net/fd_unix.go: > func dupCloseOnExec(fd int) (newfd in

Re: [PATCH, PR52252] Vectorization for load/store groups of size 3.

2014-05-16 Thread Rainer Orth
Hi Evgeny, > Does the following fix ok? > > 2014-05-16 Evgeny Stupachenko > >* gcc.dg/vect/pr52252-ld.c: Fix target for the test. > > > diff --git a/gcc/testsuite/gcc.dg/vect/pr52252-ld.c > b/gcc/testsuite/gcc.dg/vect/pr52252-ld.c > index 6e3cb52..301433b 100644 > --- a/gcc/testsuite/gc

Re: [PATCH, PR52252] Vectorization for load/store groups of size 3.

2014-05-16 Thread Evgeny Stupachenko
The test uses SSSE3 because of the following restriction in i386.c: static bool expand_vec_perm_pshufb2 (struct expand_vec_perm_d *d) { rtx rperm[2][16], vperm, l, h, op, m128; unsigned int i, nelt, eltsz; if (!TARGET_SSSE3 || GET_MODE_SIZE (d->vmode) != 16) return false; Does the foll

Re: [PATCH (for next stage 1)] Add return type to gimple function dumps

2014-05-16 Thread Richard Biener
On Tue, Apr 29, 2014 at 5:01 PM, David Malcolm wrote: > On Tue, 2014-04-29 at 11:16 +0200, Richard Biener wrote: >> On Tue, Apr 29, 2014 at 2:58 AM, David Malcolm wrote: >> > On Thu, 2014-04-24 at 15:46 -0600, Jeff Law wrote: >> >> On 03/10/14 13:22, David Malcolm wrote: >> >> > Gimple function d

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

2014-05-16 Thread Richard Earnshaw
On 08/05/14 18:36, Ian Bolton wrote: > Hi, > > It currently takes 4 instructions to generate certain immediates on > AArch64 (unless we put them in the constant pool). > > For example ... > > long long > beefcafebabe () > { > return 0xBEEFCAFEBABEll; > } > > leads to ... >

PR 61084: Use widest_int in sparc_fold_builtin

2014-05-16 Thread Richard Sandiford
This is the second part of PR 61084, which it seems I'd forgotten to post. pdist calculates a wide result from narrower inputs, so I should have used widest_int rather than wide_int. Tested by Rainer on SPARC Solaris. OK to install? Thanks, Richard gcc/ PR target/61084 * config

[PATCH] Fix one testcase from PR61194

2014-05-16 Thread Richard Biener
This fixes the non-regression testcase from PR61194 by also recognizing COND_EXPRs as sink for bool expressions in vectorizer pattern detection. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2014-05-16 Richard Biener PR tree-optimization/61194 * tree

  1   2   >