Re: [PATCH][i386]Fix PR 57756

2013-10-22 Thread Uros Bizjak
On Tue, Oct 22, 2013 at 11:05 PM, Sriraman Tallam wrote: >This simple patch fixes the -m32 -mno-sse bugs you reported. A few > more places where I did not change references to global_options. > Uros/Richard: Is this ok to commit? > > * config/i386/i386.c (ix86_option_override_internal): > Cha

Re: [PING^2][PATCH][2 of 2] RTL expansion for zero sign extension elimination with VRP

2013-10-22 Thread Kugan
>>> tem = (char) 255 + (char) 1; >>> >>> which has a value-range of [0,0] but clearly when computed in >>> SImode the value-range is [256, 256]. That is, VRP computes >>> value-ranges in the expression type, not in some arbitrary >>> larger type. >>> >>> So what you'd have to do is take the val

Re: [PATCH] Cilk Keywords (_Cilk_spawn and _Cilk_sync) for C (and C++)

2013-10-22 Thread Jeff Law
On 10/16/13 15:49, Iyer, Balaji V wrote: In ira.c: + /* We need a frame pointer for all Cilk Plus functions that use + Cilk keywords. */ + || (flag_enable_cilkplus && cfun->is_cilk_function) Can you explain to me a bit more why you need a frame pointer? I'm trying to determ

Re: [PATCH] Small *-alias dump fixes

2013-10-22 Thread Jeff Law
On 10/22/13 13:23, Jakub Jelinek wrote: Hi! I've noticed that some -fdump-tree-*-alias dumps look badly, contain stuff like: : # # RANGE [0, 52] _1 = PHI <0(2), f2_12(3)> return _1; or: : # PT = { D.1732 } (glob) # ALIGN = 32, MISALIGN = 0 # p_1 = PHI <&MEM[(void *)&a + 1

Re: [PATCH, i386, MPX, 1/X] Support of Intel MPX ISA. 1/2 Bound type and modes

2013-10-22 Thread Jeff Law
On 09/17/13 02:18, Ilya Enkovich wrote: Hi, Here is a patch introducing new type and mode for bounds. It is a part of MPX ISA support patch (http://gcc.gnu.org/ml/gcc-patches/2013-07/msg01094.html). Bootstrapped and tested on linux-x86_64. Is it OK for trunk? Thanks, Ilya -- gcc/ 2013-09-16

[patch] Flatten tree-ssa.h

2013-10-22 Thread Andrew MacLeod
When moving all the prototypes out of tree-flow.h and into individual files, the "kitchen sink" #include list temporarily propagated it way into the new tree-ssa.h file. tree-ssa.h is now in a position to contain only it's own prototypes. Its include list was: #include "bitmap.h" #include "g

Re: [PATCH] Vectorizing abs(char/short/int) on x86.

2013-10-22 Thread pinskia
Sent from my iPad > On Oct 22, 2013, at 7:23 PM, Cong Hou wrote: > > This patch aims at PR58762. > > Currently GCC could not vectorize abs() operation for integers on x86 > with only SSE2 support. For int type, the reason is that the expand on > abs() is not defined for vector type. This patc

Re: [PATCH, PR 53001] Re: Patch to split out new warning flag for floating point conversion

2013-10-22 Thread Joshua J Cogliati
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Only one of these should be applied. The warn_float_patch_simple_trunk.diff just changes formatting from the previous version. The warn_float_patch_and_new_testcase.diff leaves existing testcases alone, and adds a new one that tests - -Wfloat-convers

Re: [C++14] implement [[deprecated]].

2013-10-22 Thread Jason Merrill
I don't think this patch should be blocked on those bugs. Jason

[PATCH] Vectorizing abs(char/short/int) on x86.

2013-10-22 Thread Cong Hou
This patch aims at PR58762. Currently GCC could not vectorize abs() operation for integers on x86 with only SSE2 support. For int type, the reason is that the expand on abs() is not defined for vector type. This patch defines such an expand so that abs(int) will be vectorized with only SSE2. For

Re: patch to enable LRA for ppc

2013-10-22 Thread Vladimir Makarov
On 13-10-22 10:21 AM, David Edelsohn wrote: On Mon, Oct 21, 2013 at 10:42 PM, Vladimir Makarov wrote: I would say lets add -mlra, but make the default OFF for the time being. We can always switch the default later. Sure, if you know some LRA problems it should not be on default. Moreover, if

[PATCH, rs6000] Fix mulv8hi3 pattern for little endian

2013-10-22 Thread Bill Schmidt
Hi, The RTL generation for mulv8hi3 is slightly different for big and little endian modes. In the latter case, the operands of the vector-pack instruction must be reversed to get the proper interleaving. Bootstrapped and tested on powerpc64{,le}-unknown-linux-gnu with no new regressions. This f

[c++-concepts] small tidbits to get it to build

2013-10-22 Thread Ed Smith-Rowland
I had to get past two small bugs to get c++-concepts to build. Take a good look because I'm not sure if they're right. The solutions should be harmless though. Ed 2013-10-23 Edward Smith-Rowland <3dw...@verizon.net> make concepts build. * constraint.cc (make_constraints):

Re: [C++14] implement [[deprecated]].

2013-10-22 Thread Ed Smith-Rowland
On 10/22/2013 12:00 PM, Jason Merrill wrote: OK. Jason There is discussion about several bugs in gnu::deprecated upon which this is based over on the libstdc++ list. I could see where we are with those bugs in a week or two. Or just wait until they are fixed. OTOH, I don't think my patch wou

Re: [google gcc-4_8] Reset the some cp states in LIPO

2013-10-22 Thread Xinliang David Li
ok after testing. David On Tue, Oct 22, 2013 at 4:43 PM, Rong Xu wrote: > you are right. > fixed in the attached patch. > > > On Tue, Oct 22, 2013 at 4:37 PM, Xinliang David Li > wrote: >> >> Why is it needed to encode module id in the name? If the statics are >> promoted later, it will be inse

Re: rename c1x-*.c to c11-*.c

2013-10-22 Thread Mike Stump
On Oct 22, 2013, at 2:29 PM, Joseph S. Myers wrote: > There's a whole g++.dg/cpp0x directory of tests, many of them using > -std=c++0x, for which the same principle would also suggest using the > non-deprecated option and the name for the actual standard…. I agree. C++11 looks nicer to my eye

[PATCH] more robust check for multiplier in addressing mode when determining the costs

2013-10-22 Thread Igor Shevlyakov
I'm working on a chip with some unusual addressing modes. it does have [base_rage+msize*index_reg] and one can't omit base_reg like on x86. But when ivopts tries to calculate the costs of different addressing modes it only checks [mult*reg] to determine allowable multipliers. I modified multiplier_

Re: [google gcc-4_8] Reset the some cp states in LIPO

2013-10-22 Thread Xinliang David Li
Why is it needed to encode module id in the name? If the statics are promoted later, it will be inserted at that time. David On Tue, Oct 22, 2013 at 4:28 PM, Rong Xu wrote: > Hi, > > The attached patch fixes some linking errors (undefined symbols) in LIPO-use > build. > r203583 does not seem to

Re: Debug functions review

2013-10-22 Thread Paolo Carlini
Hi, "François Dumont" ha scritto: >Hi > > Here is a patch to clean up a little some debug functions. I got >rid of the __check_singular_aux, simply playing with __check_singular >overloads was enough. I also added the missing __check_dereferenceable >for safe local iterators. This is proba

Ping Re: Add predefined macros for library use in defining __STDC_IEC_559*

2013-10-22 Thread Joseph S. Myers
Ping. This patch is pending review (hook addition, rs6000/powerpc changes). -- Joseph S. Myers jos...@codesourcery.com

Re: rename c1x-*.c to c11-*.c

2013-10-22 Thread Joseph S. Myers
There's a whole g++.dg/cpp0x directory of tests, many of them using -std=c++0x, for which the same principle would also suggest using the non-deprecated option and the name for the actual standard -- Joseph S. Myers jos...@codesourcery.com

Re: [Patch, Fortran] PR58793 - reject passing TYPE(*) to CLASS(*)

2013-10-22 Thread Paul Richard Thomas
Dear Tobias, This is OK for trunk. Thanks for the patch. Paul On 21 October 2013 19:32, Tobias Burnus wrote: > The issue came up while reviewing the patch for PR58793. > > Build and regtested on x86-64-gnu-linux > OK for the trunk? > > Tobias -- The knack of flying is learning how to throw

Re: [PATCH][i386]Fix PR 57756

2013-10-22 Thread Sriraman Tallam
Hi Jakub, This simple patch fixes the -m32 -mno-sse bugs you reported. A few more places where I did not change references to global_options. Uros/Richard: Is this ok to commit? * config/i386/i386.c (ix86_option_override_internal): Change TARGET_SSE2 to TARGET_SSE2_P (opts->...) (ix86_valid_ta

Debug functions review

2013-10-22 Thread François Dumont
Hi Here is a patch to clean up a little some debug functions. I got rid of the __check_singular_aux, simply playing with __check_singular overloads was enough. I also added the missing __check_dereferenceable for safe local iterators. 2013-10-22 François Dumont * include/debug/for

Re: [PATCH, i386, MPX, 1/X] Support of Intel MPX ISA. 1/2 Bound type and modes

2013-10-22 Thread Jeff Law
On 10/22/13 13:31, Richard Henderson wrote: Yes, which is where I believe the new types come from as well. OK. Thanks for clarifying. I'm about to go offline for a few hours, but will start working my way through the MPX stuff. jeff

[SH] PR 52483 - Fix volatile mem stores

2013-10-22 Thread Oleg Endo
Hello, The attached patch fixes volatile mem stores on SH so that they won't result in redundant sign/zero extensions and will utilize available addressing modes. This is similar to what has been done to fix memory loads in http://gcc.gnu.org/ml/gcc-patches/2013-06/msg01315.html Tested on rev 20

Re: [PATCH, PR58805] Add missing check in stmt_local_def for tail-merge

2013-10-22 Thread Jeff Law
On 10/22/13 03:58, Tom de Vries wrote: Richard, This patch adds a missing check for gimple_vdef in stmt_local_def for the tail-merge pass. Bootstrapped and reg-tested on x86_64. OK for trunk, gcc-4_8-branch? Thanks, - Tom 2013-10-22 Tom de Vries PR tree-optimization/58805

Re: [PATCH, i386, MPX, 1/X] Support of Intel MPX ISA. 1/2 Bound type and modes

2013-10-22 Thread Richard Henderson
On 10/22/2013 12:18 PM, Jeff Law wrote: >> The only way I could think to positively ensure that normal operations >> didn't get implemented via mpx insns is to describe the new patterns >> with distinct modes. > Presumably once we have a distinct mode, we do the right magic in > HARD_REGNO_MODE_OK

[PATCH] Use get_range_info in vect_recog_divmod_pattern

2013-10-22 Thread Jakub Jelinek
Hi! If VRP tells us that oprnd is always >= 0 or always < 0, we can generate better code for the divmode vectorization. Bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk? 2013-10-22 Jakub Jelinek * tree-vect-patterns.c (vect_recog_divmod_pattern): Optimize s

Re: [PING] 3 patches waiting for approval/review

2013-10-22 Thread Andreas Krebbel
On 16/10/13 22:25, Jeff Law wrote: > On 10/11/13 11:23, Andreas Krebbel wrote: >> On 10/10/13 18:41, Jeff Law wrote: >>> On 10/10/13 04:00, Andreas Krebbel wrote: On 09/10/13 21:46, Jeff Law wrote: > On 08/21/13 03:21, Andreas Krebbel wrote: >> [RFC] Allow functions calling mcount befo

[PATCH] Fix up pr58508.c testcase

2013-10-22 Thread Jakub Jelinek
Hi! I've noticed that this testcase fails on i686-linux. The problem is that the vect.exp infrastructure is terrible and dg-options overrides all the required flags. So, vect/ testcases either don't have to have explicit options at all (and the way to express options is through magic naming of t

[PATCH] Small *-alias dump fixes

2013-10-22 Thread Jakub Jelinek
Hi! I've noticed that some -fdump-tree-*-alias dumps look badly, contain stuff like: : # # RANGE [0, 52] _1 = PHI <0(2), f2_12(3)> return _1; or: : # PT = { D.1732 } (glob) # ALIGN = 32, MISALIGN = 0 # p_1 = PHI <&MEM[(void *)&a + 128B](2), &MEM[(void *)&a + 512B](3)> PT = { D.17

Re: *PING* Re: [Patch, Fortran] Use ANNOTATE_EXPR annot_expr_ivdep_kind for DO CONCURRENT

2013-10-22 Thread Steve Kargl
On Tue, Oct 22, 2013 at 08:30:44PM +0200, Tobias Burnus wrote: > Two weeks ago I submitted the patch, available at: > http://gcc.gnu.org/ml/fortran/2013-10/msg00022.html ; while the ME patch > is not yet approved, the C FE was approved (latest C/ME patch: > http://gcc.gnu.org/ml/gcc-patches/2013

Re: [Patch, C++] Add C++ FE support for #pragma ivdep

2013-10-22 Thread Tobias Burnus
*PING* - with a slightly updated patch attached. Changes: New test case for an error message plus matching the wording to the C version. Tobias On October 10, 2013, Tobias Burnus wrote: This patch depends on the middle-end / C FE patch: http://gcc.gnu.org/ml/gcc-patches/2013-10/msg00655.html

Re: [PATCH, i386, MPX, 1/X] Support of Intel MPX ISA. 1/2 Bound type and modes

2013-10-22 Thread Jeff Law
On 10/22/13 13:12, Richard Henderson wrote: On 10/21/2013 11:10 AM, Jeff Law wrote: So why are bounds distinct modes?Is there some inherent reason why bounds are something other than an integer mode (MODE_INT)? I suggested the distinct modes during the NDA phase. The primary reason for th

Re: [PATCH, i386, MPX, 1/X] Support of Intel MPX ISA. 1/2 Bound type and modes

2013-10-22 Thread Richard Henderson
On 10/21/2013 11:10 AM, Jeff Law wrote: > So why are bounds distinct modes?Is there some inherent reason why bounds > are something other than an integer mode (MODE_INT)? I suggested the distinct modes during the NDA phase. The primary reason for this is that MPX is designed to be kind of bac

Re: [Dwarf Patch] Generate -ggnu-pubnames

2013-10-22 Thread Sterling Augustine
On Tue, Oct 22, 2013 at 12:05 PM, Sterling Augustine wrote: > On Thu, Oct 17, 2013 at 12:09 PM, Sterling Augustine > wrote: >> The enclosed patch (which depends on >> http://gcc.gnu.org/ml/gcc-patches/2013-10/msg01395.html), ports the >> new -ggnu-pubnames option from google 4.8 to trunk. >> >> -

Re: [Dwarf Patch] Generate -ggnu-pubnames

2013-10-22 Thread Sterling Augustine
On Thu, Oct 17, 2013 at 12:09 PM, Sterling Augustine wrote: > The enclosed patch (which depends on > http://gcc.gnu.org/ml/gcc-patches/2013-10/msg01395.html), ports the > new -ggnu-pubnames option from google 4.8 to trunk. > > -gnu-pubnames enable the gold linker to to generate a better > .gdb_ind

Re: [RFC] Isolate & simplify paths with undefined behaviour

2013-10-22 Thread Jeff Law
On 10/18/13 14:31, Marc Glisse wrote: On Fri, 18 Oct 2013, Jeff Law wrote: On 10/18/13 12:47, Marc Glisse wrote: * tree-vrp has a function infer_nonnull_range, do you think we could share it? We now store the VRP ranges for integers, but not for pointers. If we did (or maybe just a non-null bi

Re: [PATCH] Fix various reassoc issues (PR tree-optimization/58791, tree-optimization/58775)

2013-10-22 Thread Jeff Law
On 10/22/13 07:09, Jakub Jelinek wrote: Hi! I've spent over two days looking at reassoc, fixing spots where we invalidly reused SSA_NAMEs (this results in wrong-debug, as the added guality testcases show, even some ICEs (pr58791-3.c) and wrong range info for SSA_NAMEs) This is something we all n

Re: [libstdc++,C++11] Library style for user-defined literal operators

2013-10-22 Thread Paolo Carlini
Hi 3dw...@verizon.net ha scritto: >Let me try that again. Sorry for the dupe and the bad subject in the >previous message. > >This patch fixes a small stylistic nit in the user-defined literal >operators in the standard library.I propose we prefer: operator""suf - >with no spacerather than: oper

Re: [GOOGLE] Check if varpool node exist for decl before checking if it's from auxiliary module.

2013-10-22 Thread Xinliang David Li
ok. David On Tue, Oct 22, 2013 at 10:51 AM, Dehao Chen wrote: > This is fixing a LIPO bug when there -fexception is on. > > When compilation is finished, compile_file calls > dw2_output_indirect_constants, which may generate decls like > DW.ref.__gxx_personality_v0 (generated in > dw2_output_ind

[PATCH, i386]: Fix PR 58779, wrong MINUS overflow checks

2013-10-22 Thread Uros Bizjak
Hello! As explained in the PR [1], the pattern that implements MINUS overflow checks is wrong. The combine pass is able to create *subsi3_cconly_overflow pattern, but since the functionality of the pattern depends on inverted conditions in put_condition_mode, the final jump in the combined sequenc

*PING* Re: [Patch, Fortran] Use ANNOTATE_EXPR annot_expr_ivdep_kind for DO CONCURRENT

2013-10-22 Thread Tobias Burnus
Two weeks ago I submitted the patch, available at: http://gcc.gnu.org/ml/fortran/2013-10/msg00022.html ; while the ME patch is not yet approved, the C FE was approved (latest C/ME patch: http://gcc.gnu.org/ml/gcc-patches/2013-10/msg01752.html). Additionally, I'd like to early ping for: http:/

[Google 4.8 Patch] For gnu-pubnames, Ignore unrecognized DW_TAGs to match gdb behavior

2013-10-22 Thread Sterling Augustine
I have checked in the enclosed patch, which makes GCC ignore unrecognized DW_TAGs when building gnu-pubnames, instead of ICEing. This matches GDB behavior. Google ref:11307370 Sterling Index: dwarf2out.c === --- dwarf2out.c (revision

Re: [patch, mips] Fix optimization bug involving nor instruction

2013-10-22 Thread Steve Ellcey
On Tue, 2013-10-22 at 19:12 +0100, Richard Sandiford wrote: > >> Richard > > > > OK, but I am curious why you put parenthesis around the right hand side > > of the total expression. I.e. *total = (); > > That's the "emacs formatting" rule: OK, I have checked in the patch with the parenthes

Re: Fwd: [PATCH] Add gdb/gdb-index.h to gcc tree.

2013-10-22 Thread Sterling Augustine
On Fri, Oct 18, 2013 at 4:45 PM, DJ Delorie wrote: > > I'm not sure either, but if it's been approved in gdb and you're > willing to cede control of it to gcc's policies, I'm OK with it. > > Note that this will be a new directory in gcc, and I think the > automerge scripts will automatically pick

Re: [patch, mips] Fix optimization bug involving nor instruction

2013-10-22 Thread Richard Sandiford
Steve Ellcey writes: > On Tue, 2013-10-22 at 18:34 +0100, Richard Sandiford wrote: >> Good spot! > >> We should use set_src_cost for both operands (the idea being that only >> a register is allowed, and that anything else will end up being a SET_SRC). >> I think the formatting should be something

Re: [GOOGLE] Check if varpool node exist for decl before checking if it's from auxiliary module.

2013-10-22 Thread Rong Xu
seems fine to me for google branches. -Rong On Tue, Oct 22, 2013 at 10:51 AM, Dehao Chen wrote: > This is fixing a LIPO bug when there -fexception is on. > > When compilation is finished, compile_file calls > dw2_output_indirect_constants, which may generate decls like > DW.ref.__gxx_personality

[GOOGLE] Check if varpool node exist for decl before checking if it's from auxiliary module.

2013-10-22 Thread Dehao Chen
This is fixing a LIPO bug when there -fexception is on. When compilation is finished, compile_file calls dw2_output_indirect_constants, which may generate decls like DW.ref.__gxx_personality_v0 (generated in dw2_output_indirect_constant_1). This function is a global function, but does not have ass

Re: [patch, mips] Fix optimization bug involving nor instruction

2013-10-22 Thread Steve Ellcey
On Tue, 2013-10-22 at 18:34 +0100, Richard Sandiford wrote: > Good spot! > We should use set_src_cost for both operands (the idea being that only > a register is allowed, and that anything else will end up being a SET_SRC). > I think the formatting should be something like: > > /* (AND (NOT

Re: [patch, mips] Fix optimization bug involving nor instruction

2013-10-22 Thread Richard Sandiford
Good spot! "Steve Ellcey " writes: > diff --git a/gcc/config/mips/mips.c b/gcc/config/mips/mips.c > index 5993aab..ffb0b53 100644 > --- a/gcc/config/mips/mips.c > +++ b/gcc/config/mips/mips.c > @@ -3796,6 +3796,18 @@ mips_rtx_costs (rtx x, int code, int outer_code, int > opno ATTRIBUTE_UNUSED, >

[jit] Add gcc_jit_context_get_first_error

2013-10-22 Thread David Malcolm
Committed to dmalcolm/jit: Add a way to query the first error message that occurred on a context. I expect there often will be a cascade of followup errors: the first error will often lead to a NULL return from an API call, which will then erroneously (but safely) be used for further API calls.

rename c1x-*.c to c11-*.c

2013-10-22 Thread Mike Stump
In gcc/testsuite/gcc.dg, we renamed c1x-*.c to c11-*.c. Tested on x86_64-apple-darwin12. Committed revision 203929.

[patch, mips] Fix optimization bug involving nor instruction

2013-10-22 Thread Steve Ellcey
While looking at some MIPS code I found that GCC was not making optimal use of the MIPS nor instruction. If you compile this function: int f (int a, int b) { return ~(a|b); } It generates: or $2,$4,$5 nor $2,$0,$2 instead of just: nor $2,$4,$5 The

Re: [libstdc++,C++11] Library style for user-defined literal operators

2013-10-22 Thread Mike Stump
On Oct 22, 2013, at 9:27 AM, 3dw...@verizon.net wrote: Can you arrange for your emails to have you name in them? Thanks.

c1x --> c11

2013-10-22 Thread Mike Stump
One last straggler I found: Tested on x86_64-apple-darwin12. Committed revision 203928. Index: builtin-complex-err-1.c === --- builtin-complex-err-1.c (revision 203926) +++ builtin-complex-err-1.c (working copy) @@ -1,6 +1,6

c1x --> c11

2013-10-22 Thread Mike Stump
This updates test cases to use the non-deprecated form of the option. c1x --> c11 Tested on x86_64-apple-darwin12. Committed revision 203927. Index: c1x-align-1.c === --- c1x-align-1.c (revision 203926) +++ c1x-align-1.c

Re: [C++14] implement [[deprecated]].

2013-10-22 Thread Jason Merrill
OK. Jason

Re: [RFC] By default if-convert only basic blocks that will be vectorized (take 3)

2013-10-22 Thread Sergey Ostanevich
still fails on 403 et al. regrename.c: In function 'regrename_optimize': regrename.c:200:1: internal compiler error: Segmentation fault regrename_optimize () ^ 0x96698f crash_signal ../../gcc/toplev.c:335 0x9a2657 ssa_default_def(function*, tree_node*) ../../gcc/tree-dfa.c:310 0x

[libstdc++,C++11] Library style for user-defined literal operators

2013-10-22 Thread 3dw4rd
Let me try that again. Sorry for the dupe and the bad subject in the previous message. This patch fixes a small stylistic nit in the user-defined literal operators in the standard library.I propose we prefer: operator""suf - with no spacerather than: operator"" suf - with spaceIt is only strict

Re: Patch: Add #pragma ivdep support to the ME and C FE

2013-10-22 Thread Frederic Riss
On 21 October 2013 22:09, Tobias Burnus wrote: > attached is a new version of the patch. Changes: > * "#pragma GCC ivdep" instead of "#pragma ivdep" > * Corrections to the error message in c-parser.c and a test case for it > * New wording in the .texi and examples Not that I have any authority he

Re: [c++-concepts] bitfield reference bugfix

2013-10-22 Thread Jason Merrill
On 10/22/2013 08:54 AM, Andrew Sutton wrote: This fixes the longstanding problem with bitfield references. The default dialect was set to cxx1y, which was resulting different conversions for bitfield references. I'm not sure if there's a change in semantics for 1y or if that's a separate bug, but

New prologue/epilogue code for i386 string functions

2013-10-22 Thread Jan Hubicka
Hi, this patch adds code to produce prologues/epilogues as suggested by Ondrej Bilka (I described more the approach in http://gcc.gnu.org/ml/gcc-patches/2013-09/msg02082.html) This patch is updated and cleaned up version after Mikhail changes merging memset/memcpy generation code. (I will contin

Re: patch to enable LRA for ppc

2013-10-22 Thread Michael Meissner
On Tue, Oct 22, 2013 at 10:21:32AM -0400, David Edelsohn wrote: > On Mon, Oct 21, 2013 at 10:42 PM, Vladimir Makarov > wrote: > > >> I would say lets add -mlra, but make the default OFF for the time being. > >> We > >> can always switch the default later. > > > > Sure, if you know some LRA probl

Re: [PATCH i386 4/8] [AVX512] [1/n] Add substed patterns.

2013-10-22 Thread Richard Henderson
On 10/22/2013 07:42 AM, Kirill Yukhin wrote: > Hello Richard, > Thanks for remarks, they all seems reasonable. > > One question > > On 21 Oct 16:01, Richard Henderson wrote: >>> +(define_insn "avx512f_moves_mask" >>> + [(set (match_operand:VF_128 0 "register_operand" "=v") >>> + (vec_merge:VF_

Re: [PATCH i386 4/8] [AVX512] [1/n] Add substed patterns.

2013-10-22 Thread Kirill Yukhin
Hello Richard, Thanks for remarks, they all seems reasonable. One question On 21 Oct 16:01, Richard Henderson wrote: > > +(define_insn "avx512f_moves_mask" > > + [(set (match_operand:VF_128 0 "register_operand" "=v") > > + (vec_merge:VF_128 > > + (vec_merge:VF_128 > > + (match_operan

Re: Patch: Add #pragma ivdep support to the ME and C FE

2013-10-22 Thread Joseph S. Myers
On Mon, 21 Oct 2013, Tobias Burnus wrote: > Dear all, > > attached is a new version of the patch. Changes: > * "#pragma GCC ivdep" instead of "#pragma ivdep" > * Corrections to the error message in c-parser.c and a test case for it > * New wording in the .texi and examples > > I am still not com

Re: [C PATCH] Warn for _Alignas in an array declarator (PR c/58267)

2013-10-22 Thread Joseph S. Myers
On Mon, 21 Oct 2013, Marek Polacek wrote: > Tested via make check -C gcc RUNTESTFLAGS=dg.exp=c1x-*.c, ok for > trunk? > > 2013-10-21 Marek Polacek > > c/ > * c-parser.c (c_parser_struct_declaration): Add a comment. > (c_parser_declarator): Don't allow _Alignas here. > testsuite/ >

Re: RFC: Add of type-demotion pass

2013-10-22 Thread Jakub Jelinek
On Fri, Oct 18, 2013 at 12:06:35PM +0200, Richard Biener wrote: > You can't move type conversion "out of the way" in most cases as > GIMPLE is stronly typed > and data sources and sinks can obviously not be "promoted" (nor can > function arguments). > So you'll very likely not be able to remove the

Re: [C++ Patch, obvious?] PR 58816

2013-10-22 Thread Paolo Carlini
On 10/22/2013 01:02 PM, Jason Merrill wrote: OK, thanks. Applied. Shall I apply this one too: http://gcc.gnu.org/ml/gcc-patches/2013-10/msg01166.html ? Thanks, Paolo.

Re: [PATCH, rs6000] Be careful with special permute masks for little endian, take 2

2013-10-22 Thread David Edelsohn
On Mon, Oct 21, 2013 at 8:03 PM, Bill Schmidt wrote: > Hi, > > This is a revision of my earlier patch on the subject, expanded to catch > a few more cases and with some attendant test-case adjustments: > > In altivec_expand_vec_perm_const, we look for special masks that match > the behavior of spe

Re: patch to enable LRA for ppc

2013-10-22 Thread David Edelsohn
On Mon, Oct 21, 2013 at 10:42 PM, Vladimir Makarov wrote: >> I would say lets add -mlra, but make the default OFF for the time being. >> We >> can always switch the default later. > > Sure, if you know some LRA problems it should not be on default. Moreover, > if we still have the problems when r

Re: [RFC] By default if-convert only basic blocks that will be vectorized (take 3)

2013-10-22 Thread Sergey Ostanevich
I use -march=core-avx2 -static -Ofast -flto -funroll-loops with all 3 patches applied to git version I mentioned the same is in progress for 'take 3' On Tue, Oct 22, 2013 at 5:26 PM, Jakub Jelinek wrote: > On Tue, Oct 22, 2013 at 05:16:29PM +0400, Sergey Ostanevich wrote: >> ouch.. html got me!

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

2013-10-22 Thread Kirill Yukhin
Hello, On 20 Oct 11:55, Uros Bizjak wrote: > Please also add back expanders with operand fixups and insn > constraints, as is the case with other commutative operators. They are > needed to hoist operand loads out of the loops (reload and later > passes won't hoist memory loads out of the loops whe

Re: [C++14] implement [[deprecated]].

2013-10-22 Thread Paolo Carlini
Hi, On 10/22/2013 03:07 PM, Iain Sandoe wrote: Is PR17729 still the most significant? (there are related test-suite ones). For example, PR33911: still no warning for the line "goo f2;" of the original testcase submitted by Benjamin. Funny that apparently current clang has the same issue; icc i

RE: [PATCH, PR 57748] Check for out of bounds access

2013-10-22 Thread Bernd Edlinger
Hi, On Tue, 17 Sep 2013 01:09:45, Martin Jambor wrote: >> @@ -4773,6 +4738,8 @@ expand_assignment (tree to, tree from, b >>        if (MEM_P (to_rtx) >>        && GET_MODE (to_rtx) == BLKmode >>        && GET_MODE (XEXP (to_rtx, 0)) != VOIDmode >> +      && bitregion_start == 0 >> +  

Re: [RFC] By default if-convert only basic blocks that will be vectorized (take 3)

2013-10-22 Thread Jakub Jelinek
On Tue, Oct 22, 2013 at 05:16:29PM +0400, Sergey Ostanevich wrote: > ouch.. html got me! > > applying to the same as before > > commit 0e3dfadd374c3045a926afa6d06af276cee2108d > Author: rguenth > Date: Fri Oct 18 08:36:28 2013 + > > trying '06 build. > > > for take 2 on HSW there were m

Re: [RFC] By default if-convert only basic blocks that will be vectorized (take 3)

2013-10-22 Thread Sergey Ostanevich
ouch.. html got me! applying to the same as before commit 0e3dfadd374c3045a926afa6d06af276cee2108d Author: rguenth Date: Fri Oct 18 08:36:28 2013 + trying '06 build. for take 2 on HSW there were mixed results for passed tests: 400.perlbench +0.25% 401.bzip2 -0.40% 429.mcf

[PATCH] Fix various reassoc issues (PR tree-optimization/58791, tree-optimization/58775)

2013-10-22 Thread Jakub Jelinek
Hi! I've spent over two days looking at reassoc, fixing spots where we invalidly reused SSA_NAMEs (this results in wrong-debug, as the added guality testcases show, even some ICEs (pr58791-3.c) and wrong range info for SSA_NAMEs) and cleaning up the stmt scheduling stuff (e.g. all gsi_move* calls

Re: [C++14] implement [[deprecated]].

2013-10-22 Thread Iain Sandoe
Hi Ed, Paolo, On 22 Oct 2013, at 13:55, Ed Smith-Rowland wrote: > On 10/22/2013 08:37 AM, Paolo Carlini wrote: >> On 10/22/2013 02:28 PM, Ed Smith-Rowland wrote: >>> I think this is pretty easy - gnu::deprecated has the same semantics. >> Unfortunately however, gnu::deprecated has a number of lon

Re: [PATCH, i386, MPX, 1/X] Support of Intel MPX ISA. 1/2 Bound type and modes

2013-10-22 Thread Ilya Enkovich
2013/10/21 Jeff Law : > On 10/15/13 07:31, Ilya Enkovich wrote: >> >> Hey guys, >> >> could please someone look at this small patch? It blocks approved MPX >> ISA support on i386 target. > > diff --git a/gcc/doc/rtl.texi b/gcc/doc/rtl.texi index 1d62223..02b1214 100644 --- a/gcc

Re: [C++14] implement [[deprecated]].

2013-10-22 Thread Ed Smith-Rowland
On 10/22/2013 08:37 AM, Paolo Carlini wrote: On 10/22/2013 02:28 PM, Ed Smith-Rowland wrote: I think this is pretty easy - gnu::deprecated has the same semantics. Unfortunately however, gnu::deprecated has a number of long standing issues (just search Bugzilla), personally I'm not sure we want

[c++-concepts] bitfield reference bugfix

2013-10-22 Thread Andrew Sutton
This fixes the longstanding problem with bitfield references. The default dialect was set to cxx1y, which was resulting different conversions for bitfield references. I'm not sure if there's a change in semantics for 1y or if that's a separate bug, but it's not related to concepts. Also prevent an

Re: [PATCH][buildrobot] tilepro/tilegx: fallout after tree.h refactoring (was: Re-factor inclusion of tree.h)

2013-10-22 Thread Diego Novillo
On Tue, Oct 22, 2013 at 4:22 AM, Jan-Benedict Glaw wrote: > On Mon, 2013-10-21 15:36:49 -0400, Diego Novillo wrote: >> Can anyone think of some way that we can use to automatically block >> inclusions of tree.h from header files? Code review is the only way >> that comes to mind. > > Grep once, t

Re: [C++14] implement [[deprecated]].

2013-10-22 Thread Paolo Carlini
On 10/22/2013 02:28 PM, Ed Smith-Rowland wrote: I think this is pretty easy - gnu::deprecated has the same semantics. Unfortunately however, gnu::deprecated has a number of long standing issues (just search Bugzilla), personally I'm not sure we want to say everybody that we have got [[deprecate

m68k: handle register conflict with PRE_DEC in notice_update_cc

2013-10-22 Thread Andreas Schwab
When compiling libxml2 with -O2 -fomit-frame-pointer the following pair of insns is generated: (insn 113 112 114 (set (mem:SI (pre_dec:SI (reg/f:SI 15 %sp)) [0 S4 A16]) (mem/c:SI (plus:SI (reg/f:SI 15 %sp) (const_int 44 [0x2c])) [5 strict+0 S4 A32])) xpath.i:269 38 {*movsi

[C++14] implement [[deprecated]].

2013-10-22 Thread Ed Smith-Rowland
I think this is pretty easy - gnu::deprecated has the same semantics. Bootstrapped and tested on x86_64-linux. OK? gcc/cp: 2013-10-22 Edward Smith-Rowland <3dw...@verizon.net> * parser.c (cp_parser_std_attribute): Interpret [[deprecated]] as [[gnu::deprecated]]. gcc/testsu

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

2013-10-22 Thread Jonathan Wakely
On 20 October 2013 22:18, Ed Smith-Rowland wrote: > 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 quo

Re: [C++ Patch, obvious?] PR 58816

2013-10-22 Thread Jason Merrill
OK, thanks. Jason

[Doc patch, committed] Update contrib.texi

2013-10-22 Thread Paolo Carlini
Hi, some due updates. Thanks, Paolo. / 2013-10-22 Paolo Carlini * doc/contrib.texi ([Fran@,{c}ois Dumont], [Tim Shen], [Ed Smith-Rowland]): New entries. ([Stephen M. Webb]): Update. Index: doc/contrib.texi =

RE: [PATCH, PR 57748] Check for out of bounds access, Part 2

2013-10-22 Thread Bernd Edlinger
Hi, > On Tue, 8 Oct 2013 22:50:21, Eric Botcazou wrote: >> >>> I agree, that assigning a non-BLKmode to structures with zero-sized arrays >>> should be considered a bug. >> >> Fine, then let's apply Martin's patch, on mainline at least. >> > > That would definitely be a good move. Maybe someone sh

[PATCH, PR58805] Add missing check in stmt_local_def for tail-merge

2013-10-22 Thread Tom de Vries
Richard, This patch adds a missing check for gimple_vdef in stmt_local_def for the tail-merge pass. Bootstrapped and reg-tested on x86_64. OK for trunk, gcc-4_8-branch? Thanks, - Tom 2013-10-22 Tom de Vries PR tree-optimization/58805 * tree-ssa-tail-merge.c (stmt_local_def)

RE: [PATCH 1/n] Add conditional compare support

2013-10-22 Thread Zhenqiang Chen
Hi, The patch is updated according to the comments. Changes include: * Rewrite codes according to Richard Biener's comments. * Change the algorithm to recursively combine compares. So it can handle any number of compares. * Add a set of instruction patterns in ARM backend to match the conditional

Re: [PATCH] Generate fused widening multiply-and-accumulate operations only when the widening multiply has single use

2013-10-22 Thread Andrew Stubbs
On 21/10/13 23:01, Yufeng Zhang wrote: Hi, This patch changes the widening_mul pass to fuse the widening multiply with accumulate only when the multiply has single use. The widening_mul pass currently does the conversion regardless of the number of the uses, which can cause poor code-gen in cas

[C++ Patch, obvious?] PR 58816

2013-10-22 Thread Paolo Carlini
Hi, this issue, where we should be using get_attribute_name, which works both with GNU and C++11 attributes, instead of TREE_PURPOSE, shows up as many unexpected fails of the cpp0x/gen-attrs* tests on AIX. David tested the patchlet on AIX and I double checked it on x86_64-linux. I think the c

[PATCH][buildrobot] tilepro/tilegx: fallout after tree.h refactoring (was: Re-factor inclusion of tree.h)

2013-10-22 Thread Jan-Benedict Glaw
On Mon, 2013-10-21 15:36:49 -0400, Diego Novillo wrote: > Can anyone think of some way that we can use to automatically block > inclusions of tree.h from header files? Code review is the only way > that comes to mind. Grep once, then install a commit hook. > Committed both patches to trunk. I g

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

2013-10-22 Thread Bernd Edlinger
Well, one more point where the current patch is probably wrong: the AAPCS states that for volatile bit-field access: "For a write operation the read must always occur even if the entire contents of the container will be replaced" that means struct s {   volatile int a:32; } ss; ss.a=1; //nee