[PATCH 1/3,ARM,libgcc]Code size optimization for the fmul/fdiv and dmul/ddiv function in libgcc

2014-08-21 Thread Tony Wang
Hi there, In libgcc the file ieee754-sf.S and ieee754-df.S have some function pairs which will be bundled into one .o file and sharing the same .text section. For example, the fmul and fdiv, the libgcc makefile will build them into one .o file and archived into libgcc.a. So when user only call

[PATCH 2/3,ARM,libgcc]Code size optimization for the fmul/fdiv and dmul/ddiv function in libgcc

2014-08-21 Thread Tony Wang
Step 2: Mark all the symbols around the fragment boundaries as function symbols, so as to generate veneer when the two section is too far away from each other. Also, I have both manually and using some test cases to verify that IP and PSR are not alive at such point. gcc/libgcc/ChangeLog:

[PATCH 3/3,ARM,libgcc]Code size optimization for the fmul/fdiv and dmul/ddiv function in libgcc

2014-08-21 Thread Tony Wang
Step 3: Test cases to verify the code size reduction. gcc/gcc/testsuite/ChangeLog: 2014-08-21 Tony Wang tony.w...@arm.com * gcc.target/arm/size-optimization-ieee-1.c: New test case * gcc.target/arm/size-optimization-ieee-2.c: New test case * lib/gcc-dg.exp: Add new

Fix tree-optimization/62091

2014-08-21 Thread Jan Hubicka
Hi, this should be hopefully last fix to tree-optimization/62091. The testcase triggers another unnecesary paranoia in get_dynamic_type: if location is of type A to start with and then it is re-initialized to type A, it should not count as dynamic type change. While looking into it, I added

Re: [PATCH v4] Add strict aliasing warning when inlining function.

2014-08-21 Thread lin zuojian
Hi Richard, Do you think this version is good enough to commit to trunk? I have asked Andrew to commit for me. If it is not good enough, I may ask him not to do this. --- Lin Zuojian

Re: [PATCH 040/236] Use rtx_insn internally within generated functions

2014-08-21 Thread David Malcolm
On Wed, 2014-08-13 at 12:03 -0600, Jeff Law wrote: On 08/06/14 11:20, David Malcolm wrote: With this patch, insn and curr_insn as used from C++ fragments in .md files are strengthened from rtx to rtx_insn *, allowing numerous target-specific functions to have their params be similiar

[PATCH][match-and-simplify] Do not match loads

2014-08-21 Thread Richard Biener
This avoids matching loads in the signle-rhs matching logic. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2014-08-21 Richard Biener rguent...@suse.de * genmatch.c (dt_operand::gen_gimple_expr): Only match non-reference-like GIMPLE single RHS.

Re: [PATCH 041/236] Debug hooks: use rtx_insn and rtx_code_label

2014-08-21 Thread David Malcolm
On Wed, 2014-08-13 at 12:05 -0600, Jeff Law wrote: On 08/06/14 11:20, David Malcolm wrote: gcc/ * debug.h (struct gcc_debug_hooks): Strengthen param 1 of hook label from rtx to rtx_code_label *. Strengthen param 1 o var_location hook from rtx to rtx_insn *.

Re: DSE calls to builtins (memset, etc)

2014-08-21 Thread Richard Biener
On Wed, Aug 20, 2014 at 5:05 PM, Marc Glisse marc.gli...@inria.fr wrote: On Wed, 20 Aug 2014, Richard Biener wrote: On Wed, Aug 20, 2014 at 4:18 PM, Marc Glisse marc.gli...@inria.fr wrote: On Wed, 20 Aug 2014, Richard Biener wrote: - if (stmt != use_stmt -

Re: [c++-concepts] variable concept fixes

2014-08-21 Thread Paolo Carlini
Hi Andrew, On 08/20/2014 11:08 PM, Andrew Sutton wrote: On 08/20/2014 08:56 PM, Andrew Sutton wrote: + return VAR_P (decl) + DECL_LANG_SPECIFIC (decl) + DECL_DECLARED_CONCEPT_P (decl); this is brittle from the formatting point of view. Please double check in detail what I'm

[PATCH GCC]Fix broken Canadian when checking isl library support

2014-08-21 Thread Bin Cheng
Hi, Canadian build of arm/aarch64 (and other targets) toolchains are broken because of isl library check. There is below code in top level gcc configuration. { $as_echo $as_me:${as_lineno-$LINENO}: checking for version 0.12 of ISL 5 $as_echo_n checking for version 0.12 of ISL... 6; } if

[PATCH, libstdc++, testsuite]Skip 62154.cc for target don't support the atomic builtins

2014-08-21 Thread Tony Wang
It's a very simple patch. Some target don't support atomic builtins, so all related test cases should be disabled. In folder libstdc++-v3/testsuite/18_support/nested_exception, all other test cases have already been disabled for target don't have atomic builtins. gcc/libstdc++-v3/ChangeLog:

Re: [PATCH, libstdc++, testsuite]Skip 62154.cc for target don't support the atomic builtins

2014-08-21 Thread Paolo Carlini
Hi, On 08/21/2014 10:34 AM, Tony Wang wrote: It's a very simple patch. Some target don't support atomic builtins, so all related test cases should be disabled. In folder libstdc++-v3/testsuite/18_support/nested_exception, all other test cases have already been disabled for target don't have

Re: [PATCH 042/236] try_split returns an rtx_insn

2014-08-21 Thread David Malcolm
On Wed, 2014-08-13 at 12:06 -0600, Jeff Law wrote: On 08/06/14 11:20, David Malcolm wrote: gcc/ * rtl.h (try_split): Strengthen return type from rtx to rtx_insn *. * emit-rtl.c (try_split): Likewise, also for locals before and after. For now, don't strengthen param trial,

Re: [Patch] Switch elimination pass for PR 54742

2014-08-21 Thread Richard Biener
On Tue, Aug 19, 2014 at 10:39 PM, Steve Ellcey sell...@mips.com wrote: Here is an official submission for the switch optimization described in PR 54742. I have addressed the formatting/comment issues that were raised and also added a test case based on comment #27 from PR 54742 and I fixed a

Re: [PATCH GCC]Fix broken Canadian when checking isl library support

2014-08-21 Thread Richard Biener
On Thu, Aug 21, 2014 at 10:28 AM, Bin Cheng bin.ch...@arm.com wrote: Hi, Canadian build of arm/aarch64 (and other targets) toolchains are broken because of isl library check. There is below code in top level gcc configuration. { $as_echo $as_me:${as_lineno-$LINENO}: checking for version

Re: [PATCH GCC]Fix broken Canadian when checking isl library support

2014-08-21 Thread Bin.Cheng
On Thu, Aug 21, 2014 at 5:08 PM, Richard Biener richard.guent...@gmail.com wrote: On Thu, Aug 21, 2014 at 10:28 AM, Bin Cheng bin.ch...@arm.com wrote: Hi, Canadian build of arm/aarch64 (and other targets) toolchains are broken because of isl library check. There is below code in top level gcc

Re: [PATCH 043/236] peephole returns an rtx_insn

2014-08-21 Thread David Malcolm
On Wed, 2014-08-13 at 12:06 -0600, Jeff Law wrote: On 08/06/14 11:20, David Malcolm wrote: gcc/ * output.h (peephole): Strengthen return type from rtx to rtx_insn *. * rtl.h (delete_for_peephole): Likewise for both params. * genpeep.c (main): In generated peephole function,

Re: [Patch] Switch elimination pass for PR 54742

2014-08-21 Thread James Greenhalgh
On Thu, Aug 21, 2014 at 09:57:56AM +0100, Richard Biener wrote: On Tue, Aug 19, 2014 at 10:39 PM, Steve Ellcey sell...@mips.com wrote: Here is an official submission for the switch optimization described in PR 54742. I have addressed the formatting/comment issues that were raised and also

Re: [PATCH 044/236] Pass insn as an rtx_insn within generated get_attr_ fns in insn-attrtab.c

2014-08-21 Thread David Malcolm
On Wed, 2014-08-13 at 12:07 -0600, Jeff Law wrote: On 08/06/14 11:20, David Malcolm wrote: Strengthen insn from rtx to rtx_insn * within the generated get_attr_ functions in insn-attrtab.c, without imposing a strengthening from rtx to rtx_insn * on the param itself and thus the callers.

Re: [Patch] Switch elimination pass for PR 54742

2014-08-21 Thread Richard Biener
On Thu, Aug 21, 2014 at 11:41 AM, James Greenhalgh james.greenha...@arm.com wrote: On Thu, Aug 21, 2014 at 09:57:56AM +0100, Richard Biener wrote: On Tue, Aug 19, 2014 at 10:39 PM, Steve Ellcey sell...@mips.com wrote: Here is an official submission for the switch optimization described in PR

[Patch 1/2] Don't put out a call to memcpy for volatile struct operations

2014-08-21 Thread James Greenhalgh
Hi, Andrew is quite right, we break the contract for volatile struct copies if we start double copying bytes. But, the generic code will call memcpy - at which point anything could happen. So, we must not put out a call to memcpy if either our source or destination operands are volatile. The

[Patch AArch64 2/2] Do not double-copy bytes in volatile struct operations

2014-08-21 Thread James Greenhalgh
Hi, We also need to be careful in AArch64's movmem implementation, we can't expand to our overlapping mode of operation. Bootstrapped with no issues. OK? Thanks, James --- 2014-08-21 James Greenhalgh james.greenha...@arm.com * config/aarch64/aarch64.c (aarch64_expand_movmem):

Re: spar-rtems add leon3 multlib to 4.9

2014-08-21 Thread Sebastian Huber
Hello Joel, this is the wrong patch. We need also the user mode CAS variants for hypervisor support, e.g. https://gcc.gnu.org/ml/gcc-patches/2014-05/msg00057.html We should also wait for Daniel's latest stuff. On 20/08/14 15:51, Joel Sherrill wrote: I would like to add this patch to the

[PATCH] Fix PR62175, avoid trapping expressions in niters

2014-08-21 Thread Richard Biener
This fixes PR62175 by avoiding trapping expressions in niter results. If those appear inside conditionals that are later re-gimplified the gimplifier will ICE (because it thinks it has to create control-flow). Now it seems we should use un-expanded expressions for code-generation (we use

Re: [Patch 1/2] Don't put out a call to memcpy for volatile struct operations

2014-08-21 Thread Richard Biener
On Thu, Aug 21, 2014 at 12:34 PM, James Greenhalgh james.greenha...@arm.com wrote: Hi, Andrew is quite right, we break the contract for volatile struct copies if we start double copying bytes. But, the generic code will call memcpy - at which point anything could happen. So, we must not

[PATCH][match-and-simplify] Auto-guess conversion types

2014-08-21 Thread Richard Biener
This adds the capability to auto-guess the type of non-outermost conversions by looking at the parent expression type. This also adds fatal () to the cases we can't auto-detect. Bootstrapped on x86_64-unknown-linux-gnu, testing in progress. Richard. 2014-08-21 Richard Biener

[PATCH][match-and-simplify] Merge dt_simplify::gen_gimple and dt_simplify::gen_generic

2014-08-21 Thread Richard Biener
This merges the two functions that have much in common and prettifies the code-gen. Committed. Richard. 2014-08-21 Richard Biener rguent...@suse.de * genmatch.c (dt_simplify::gen): New function merged from ... (dt_simplify::gen_gimple, dt_simplify::gen_generic): ...

Re: [PATCH, DOC]: New value 'default' for --enable-languages

2014-08-21 Thread Martin Liška
Ping. There was no explicit agreement that I can commit the change to trunk? Thanks, Martin On 07/30/2014 08:19 PM, Martin Liška wrote: On 07/30/2014 06:38 PM, Mike Stump wrote: On Jul 30, 2014, at 6:20 AM, Richard Biener richard.guent...@gmail.com wrote: On Wed, Jul 30, 2014 at 3:19 PM,

Re: [c++-concepts] variable concept fixes

2014-08-21 Thread Andrew Sutton
Ah... thanks for the clarification. Fixed (and committed). Andrew On Thu, Aug 21, 2014 at 4:26 AM, Paolo Carlini paolo.carl...@oracle.com wrote: Hi Andrew, On 08/20/2014 11:08 PM, Andrew Sutton wrote: On 08/20/2014 08:56 PM, Andrew Sutton wrote: + return VAR_P (decl) +

Re: [PATCH][RFC][match-and-simplify] Manually written patterns

2014-08-21 Thread Richard Biener
On Fri, 15 Aug 2014, Richard Biener wrote: The following introduces manually written patterns. That is, part of the matching and the transform are fully manual. An example where this is necessary is when the result isn't really an expression but a series of statements. For example take

Re: [PATCH][match-and-simplify] Auto-guess conversion types

2014-08-21 Thread Marc Glisse
On Thu, 21 Aug 2014, Richard Biener wrote: +/* From fold_unary. */ + +/* (T1)(~(T2) X) - ~(T1) X */ +(simplify + (convert (bit_not@0 (convert @1))) + (if (INTEGRAL_TYPE_P (type) + INTEGRAL_TYPE_P (TREE_TYPE (@0)) + TYPE_PRECISION (type) == TYPE_PRECISION (TREE_TYPE (@0)) +

[PATCH][match-and-simplify] Merge from trunk

2014-08-21 Thread Richard Biener
Committed. Richard. 2014-08-21 Richard Biener rguent...@suse.de Merge from trunk r213754 through r214265.

Re: [PATCH][match-and-simplify] Auto-guess conversion types

2014-08-21 Thread Richard Biener
On Thu, 21 Aug 2014, Marc Glisse wrote: On Thu, 21 Aug 2014, Richard Biener wrote: +/* From fold_unary. */ + +/* (T1)(~(T2) X) - ~(T1) X */ +(simplify + (convert (bit_not@0 (convert @1))) + (if (INTEGRAL_TYPE_P (type) + INTEGRAL_TYPE_P (TREE_TYPE (@0)) +

Re: [PATCH][match-and-simplify] Auto-guess conversion types

2014-08-21 Thread Marc Glisse
On Thu, 21 Aug 2014, Richard Biener wrote: 2014-08-21 Richard Biener rguent...@suse.de * match.pd ((T1)(~(T2) X) - ~(T1) X): Paste all comment from fold-const.c, fix simplification result. Index: gcc/match.pd

Re: [GOMP4, RFC] OpenMP4 offload support for Intel PHI targets.

2014-08-21 Thread Ilya Verbin
Hello, The branch was rebased and updated: https://gcc.gnu.org/git/?p=gcc.git;a=shortlog;h=refs/heads/kyukhin/gomp4-offload Now it requires even less actions to build and run an executable with offloading. Instructions on wiki were updated:

[c++-concepts] constrained friends

2014-08-21 Thread Andrew Sutton
Added tests for constrained friends. No code, we already to the right thing. 2014-08-15 Andrew Sutton andrew.n.sut...@gmail.com Add tests for constrained friends. * gcc/testsuite/g++.dg/concepts/friend1.C: New. * gcc/testsuite/g++.dg/concepts/friend2.C: New. Andrew Index:

Re: [PATCH 045/236] define_bypass guard functions take a pair of rtx_insn

2014-08-21 Thread David Malcolm
On Wed, 2014-08-13 at 12:07 -0600, Jeff Law wrote: On 08/06/14 11:20, David Malcolm wrote: (define_bypass) clauses in .md files can specify the name of a guard function as their final operand. Currently these functions are called with a pair of rtx. This patch strengthens insn-automata.c

Re: [RFC, PATCH 4/n] IPA C++ refactoring

2014-08-21 Thread Jan Hubicka
Hello, following patch introduces a new symbol_table class, encapsulating functions related to symbol table management. Apart from that, cgraph_edge related functions become members of the class. Finally, a portion of clean-up has been applied to cgraph.h. Bootstrapped on

[patch, nios2] testsuite cleanup

2014-08-21 Thread Sandra Loosemore
I've checked in this patch to tidy up some test cases observed to fail on nios2-elf; mostly tree-ssa tests that assume some non-default branch costs in the back end, plus a couple that pass -fPIC without requiring an effective target that supports that option. -Sandra 2014-08-21 Sandra

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

2014-08-21 Thread Marat Zakirov
On 08/14/2014 05:40 PM, Marat Zakirov wrote: 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

Re: [PATCH 046/236] delete_related_insns returns an rtx_insn

2014-08-21 Thread David Malcolm
On Wed, 2014-08-13 at 12:10 -0600, Jeff Law wrote: On 08/06/14 11:20, David Malcolm wrote: gcc/ * rtl.h (delete_related_insns): Strengthen return type from rtx to rtx_insn *. * jump.c (delete_related_insns): Likewise, also for locals next and prev. OK. Thanks;

Re: [PATCH 047/236] PHASE 2: Per-file commits in main source directory

2014-08-21 Thread David Malcolm
On Wed, 2014-08-13 at 12:10 -0600, Jeff Law wrote: On 08/06/14 11:20, David Malcolm wrote: This commit is a placeholder for me when rebasing, to help organize the patch kit. / * rtx-classes-status.txt: Update OK. Thanks; committed to trunk r214276.

Re: [C++ PATCH] Fix -Wlogical-not-parentheses (PR c++/62199)

2014-08-21 Thread Marek Polacek
On Wed, Aug 20, 2014 at 05:02:24PM -0400, Jason Merrill wrote: On 08/20/2014 04:02 PM, Marek Polacek wrote: On Wed, Aug 20, 2014 at 02:36:21PM -0400, Jason Merrill wrote: Could we set current.lhs_type to TRUTH_NOT_EXPR when we see a ! rather than track nots in two separate local variables?

[patch] propagate INSTALL Makefile variables down from gcc/

2014-08-21 Thread Olivier Hainque
Hello, Experiments with custom install programs exposed that the INSTALL series of Makefile variables aren't propagated down from the gcc subdir. This patch fixes this. Checked that it addressed the unexpected behavior we were observing + bootstrapped regtested on x86_64-linux-gnu. OK to

[PATCH] Fix condition in is_aligning_offset (PR c/61271)

2014-08-21 Thread Marek Polacek
This is one of the issues that -Wlogical-not-parentheses detected. Interestingly, this code has been added in 2002 (!). I believe the logical not there should be just removed; the comment above it says /* We must now have a BIT_AND_EXPR with a constant that is one less than power of 2 and

Re: [PATCH] gcc/gcc.c: XNEWVEC enough space for 'saved_suffix' using

2014-08-21 Thread Mike Stump
On Aug 18, 2014, at 3:06 AM, Chen Gang gang.chen.5...@gmail.com wrote: - one for original latest gcc source code (master for 20140816). - one for my modification based on the original latest gcc source code. - they passed building, but for make check, they reported same issues: So, I see

Re: [PATCH] Remove CALLER_SAVE_PROFITABLE since nobody use it now

2014-08-21 Thread Richard Earnshaw
On 19/08/14 15:24, Kito Cheng wrote: Hi Richard: Hmm, I'm not sure about this. It might not be used at present, but on: AArch64, with more call-clobbered registers than call-saved registers, I would expect this ought to be a win. The fact that it isn't on today may say more about the way it

Re: [PATCH 039/236] create_insn_rtx_from_pattern and create_copy_of_insn_rtx return rtx_insn

2014-08-21 Thread Mike Stump
On Aug 20, 2014, at 6:03 PM, David Malcolm dmalc...@redhat.com wrote: OK. Thanks; committed to trunk as r214253. So, unless there is a consumer of this information, in general, you don’t need to let us know you checked things in. We assume that by default. Cases were it is useful, you check

Re: [patch, nios2] testsuite cleanup

2014-08-21 Thread Mike Stump
On Aug 21, 2014, at 8:00 AM, Sandra Loosemore san...@codesourcery.com wrote: tests that assume some non-default branch costs in the back end Thanks. One comment, could you put in /* non default branch cost */ above the three where that is true. Even better would be to refactor those into

Re: [PATCH] Remove CALLER_SAVE_PROFITABLE since nobody use it now

2014-08-21 Thread Joseph S. Myers
On Thu, 21 Aug 2014, Richard Earnshaw wrote: On 19/08/14 15:24, Kito Cheng wrote: Hi Richard: Hmm, I'm not sure about this. It might not be used at present, but on: AArch64, with more call-clobbered registers than call-saved registers, I would expect this ought to be a win. The fact

Re: TAGs for variables created through common.opt

2014-08-21 Thread Aldy Hernandez
Well, whadayaknow... Tom Tromey pointed me at --regex which we can use to add patterns for not only the .opt files, but for a bunch of other files/languages we define in GCC. The following patch adds support for common.opt, rtl.def, tree.def, and gimple.def. Now you can use your editor to

Re: [patch, nios2] testsuite cleanup

2014-08-21 Thread Sandra Loosemore
On 08/21/2014 11:36 AM, Mike Stump wrote: On Aug 21, 2014, at 8:00 AM, Sandra Loosemore san...@codesourcery.com wrote: tests that assume some non-default branch costs in the back end Thanks. One comment, could you put in /* non default branch cost */ above the three where that is true. The

[PATCH] Fix condition in ira-color.c and lra-spills.c (PR c/61271)

2014-08-21 Thread Marek Polacek
Both ira-color.c and lra-spills.c contain this code, where -Wlogical-not-parentheses would warn: !FRAME_GROWS_DOWNWARD == STACK_GROWS_DOWNWARD I think the condition is semantically right, so I just tweaked it into a more common way with !=, so we don't warn on this anymore. Bootstrapped/regtested

[PATCH], Fix error in powerpc bootstrap

2014-08-21 Thread Michael Meissner
There was some code in the rs6000.c that new warnings prevented the powerpc compiler from bootstraping. I fixed it under the 'obvious' rule, after doing a bootstrap with the change: 2014-08-21 Michael Meissner meiss...@linux.vnet.ibm.com * config/rs6000/rs6000.c (print_operand, 'y'

Re: [C++ PATCH] Fix -Wlogical-not-parentheses (PR c++/62199)

2014-08-21 Thread Jason Merrill
On 08/21/2014 11:41 AM, Marek Polacek wrote: + current.lhs_type = cp_lexer_next_token_is (parser-lexer, CPP_NOT) +? TRUTH_NOT_EXPR : ERROR_MARK; ... + rhs_type = cp_lexer_next_token_is (parser-lexer, CPP_NOT) +? TRUTH_NOT_EXPR : ERROR_MARK; Again,

[patch, fortran, committed] Fix PR 62214

2014-08-21 Thread Thomas Koenig
Hello world, the attached patch fixes the PR. Committed to trunk as obvious after regression-testing. Will commit to 4.9 and 4.8 after regression testing there. Any idea why rather so many rather old bugs are coming up all of a sudden? Did a major distribution just upgrade its gcc version?

[PATCH, rs6000] PR 62195, Fix wi constraint

2014-08-21 Thread Michael Meissner
(I'm not sure if an earlier patch got mailed out, I'm sorry if there are duplicate postings). I had a thinko in my patch on August 11th, in that I allowed the wi constraint to be FLOAT_REGS on a non-VSX system, but I had a pattern in movdi that generated a VSX instruction. I have tightened wi,

Re: [PATCH] Fix condition in ira-color.c and lra-spills.c (PR c/61271)

2014-08-21 Thread Vladimir Makarov
On 08/21/2014 02:01 PM, Marek Polacek wrote: Both ira-color.c and lra-spills.c contain this code, where -Wlogical-not-parentheses would warn: !FRAME_GROWS_DOWNWARD == STACK_GROWS_DOWNWARD I think the condition is semantically right, so I just tweaked it into a more common way with !=, so we

[PATCH c++/57709] Wshadow is too strict / has false positives

2014-08-21 Thread Manuel López-Ibáñez
In GCC 4.8 I implemented: The option -Wshadow no longer warns if a declaration shadows a function declaration, unless the former declares a function or pointer to function, because this is a common and valid case in real-world code. This patch applies the same heuristic to member functions.

Re: __intN patch 3/5: main __int128 - __intN conversion.

2014-08-21 Thread Joseph S. Myers
On Wed, 13 Aug 2014, DJ Delorie wrote: + for (i = 0; i NUM_INT_N_ENTS; i ++) +{ + int_n_trees[i].signed_type = make_signed_type (int_n_data[i].bitsize); + int_n_trees[i].unsigned_type = make_unsigned_type (int_n_data[i].bitsize); + TYPE_SIZE

Re: __intN patch 3/5: main __int128 - __intN conversion.

2014-08-21 Thread DJ Delorie
Why are types only entered in integer_types if wider than long long? IIRC it was so that TImode (__int128) could get into the array (it was there before) without adding the other smaller types, which (I think) don't need to be in there. I don't recall why they're left out, but... ah, I

Re: [PATCH] gcc/gcc.c: XNEWVEC enough space for 'saved_suffix' using

2014-08-21 Thread Chen Gang
On 08/22/2014 12:18 AM, Mike Stump wrote: On Aug 18, 2014, at 3:06 AM, Chen Gang gang.chen.5...@gmail.com wrote: - one for original latest gcc source code (master for 20140816). - one for my modification based on the original latest gcc source code. - they passed building, but for make

Re: [PATCH c++/57709] Wshadow is too strict / has false positives

2014-08-21 Thread Jason Merrill
On 08/21/2014 04:22 PM, Manuel López-Ibáñez wrote: +TREE_CODE (x) != FUNCTION_DECL +!FUNCTION_POINTER_TYPE_P (TREE_TYPE (x How about pointer to member function? Jason

Re: __intN patch 3/5: main __int128 - __intN conversion.

2014-08-21 Thread Joseph S. Myers
On Thu, 21 Aug 2014, DJ Delorie wrote: + /* This must happen after the backend has a chance to process + command line options, but before the parsers are + initialized. */ + for (i = 0; i NUM_INT_N_ENTS; i ++) + if (targetm.scalar_mode_supported_p (int_n_data[i].m)

[PATCH v2] gcc/c/c-aux-info.c: Resize 'buff' from 10 to 23 bytes

2014-08-21 Thread Chen Gang
int_size_in_bytes() returns HOST_WIDE_INT (64-bit), theoretically, the maximized size is 23 -- it is sizeof([-9223372036854775808]) for 0x8000LL. It may not cause real world issue, but if another issues occur, it may lead things worse. It passes normal testsuite: ../gcc/configure

Re: [patch, nios2] testsuite cleanup

2014-08-21 Thread Mike Stump
On Aug 21, 2014, at 10:59 AM, Sandra Loosemore san...@codesourcery.com wrote: On 08/21/2014 11:36 AM, Mike Stump wrote: On Aug 21, 2014, at 8:00 AM, Sandra Loosemore san...@codesourcery.com wrote: tests that assume some non-default branch costs in the back end Thanks. One comment, could

Re: [PATCH c++/57709] Wshadow is too strict / has false positives

2014-08-21 Thread Manuel López-Ibáñez
On 21 August 2014 23:35, Jason Merrill ja...@redhat.com wrote: On 08/21/2014 04:22 PM, Manuel López-Ibáńez wrote: +TREE_CODE (x) != FUNCTION_DECL +!FUNCTION_POINTER_TYPE_P (TREE_TYPE (x How about pointer to member function? Maybe like

[patch] PR fortran/62135

2014-08-21 Thread Steven Bosscher
Hello, Low-hanging fruit, almost embarassing to fix. But then again I caused this bug -- in 1999 or so :-) Will commit after testing. Ciao! Steven fortran/ * resolve.c (resolve_select): Fix list traversal in case the last element of the CASE list was dropped as unreachable

Re: [patch] PR fortran/62135

2014-08-21 Thread Steve Kargl
On Fri, Aug 22, 2014 at 12:07:21AM +0200, Steven Bosscher wrote: Hello, Low-hanging fruit, almost embarassing to fix. But then again I caused this bug -- in 1999 or so :-) Will commit after testing. I already approved the patch in the PR. In my comment on the PR I had assumed you were

Re: __intN patch 3/5: main __int128 - __intN conversion.

2014-08-21 Thread DJ Delorie
I don't see any corresponding HOST_BITS_PER_WIDE_INT test for __int128 being removed (and anyway HOST_BITS_PER_WIDE_INT is now always 64, so such a test for __int128 would be dead code). It was there when I started the patch, honest! :-) Removed ;-) For each __intN we need to provide

Re: [PATCH c++/57709] Wshadow is too strict / has false positives

2014-08-21 Thread Paolo Carlini
Hi, On 08/22/2014 12:01 AM, Manuel López-Ibáñez wrote: On 21 August 2014 23:35, Jason Merrill ja...@redhat.com wrote: On 08/21/2014 04:22 PM, Manuel López-Ibáńez wrote: +TREE_CODE (x) != FUNCTION_DECL +!FUNCTION_POINTER_TYPE_P (TREE_TYPE (x

Re: __intN patch 3/5: main __int128 - __intN conversion.

2014-08-21 Thread Joseph S. Myers
On Thu, 21 Aug 2014, DJ Delorie wrote: Maybe you need to refactor __glibcxx_digits so there is a version taking the bitsize as an argument rather than using sizeof(T) * __CHAR_BIT__, but that should be the only change needed to handle such types with the existing macros. Since the

Re: [wwwdocs] Update GCC5 changes.html

2014-08-21 Thread Gerald Pfeifer
On Wed, 13 Aug 2014, Marek Polacek wrote: I've put together a few lines describing what I (except -fsanitize=alignment) implemented for GCC 5. It's the file wwwdocs/htdocs/gcc-5/changes.html. Nice! + licode-fsanitize=float-cast-overflow/code: check that the result +of

Re: [PATCH v2] gcc/c/c-aux-info.c: Resize 'buff' from 10 to 23 bytes

2014-08-21 Thread Joseph S. Myers
On Fri, 22 Aug 2014, Chen Gang wrote: 2014-08-17 Chen Gang gang.chen.5...@gmail.com * c/c-aux-info.c (gen_type): Resize 'buff' from 10 to 23 bytes, with using HOST_WIDE_INT without truncation to 'int' OK (without the c/ in the ChangeLog entry, as it should go in c/ChangeLog).

Re: [Patch 1/2] Don't put out a call to memcpy for volatile struct operations

2014-08-21 Thread Mike Stump
On Aug 21, 2014, at 4:22 AM, Richard Biener richard.guent...@gmail.com wrote: I still say we need to solve the issue at language level - that is, try to figure out what the language standard says about volatile struct X x, y; x = y; The definition of x = y doesn’t change wrt volatile

Re: [patch, nios2] testsuite cleanup

2014-08-21 Thread Sandra Loosemore
On 08/21/2014 03:50 PM, Mike Stump wrote: Sorry, I meant 4… Your patch has four instances of this change: -/* { dg-do run { target { ! m68k*-*-* mmix*-*-* mep*-*-* bfin*-*-* v850*-*-* picochip*-*-* moxie*-*-* cris*-*-* m32c*-*-* fr30*-*-* mcore*-*-* powerpc*-*-* xtensa*-*-* hppa*-*-*} } }

Re: [PATCH, g++, testsuite] Skip thread_local6.C on target using wrapper

2014-08-21 Thread Mike Stump
On Aug 20, 2014, at 3:31 AM, Tony Wang tony.w...@arm.com wrote: It's a very simple test case modification to fix the test case failure on ARM bare metal target. thread_local6.C is a test case to test the behavior of the deconstruct of a thread local variable, and it just use _exit(0) to

Re: [patch, nios2] testsuite cleanup

2014-08-21 Thread Mike Stump
On Aug 21, 2014, at 5:06 PM, Sandra Loosemore san...@codesourcery.com wrote: I'd really like the maintainers of these tree-ssa tests to figure out what target they're supposed to work for or come up with a suitable test for feature support, rather than me trying to guess the failure mode for

Re: [PATCH v2] gcc/c/c-aux-info.c: Resize 'buff' from 10 to 23 bytes

2014-08-21 Thread Chen Gang
On 8/22/14 7:11, Joseph S. Myers wrote: On Fri, 22 Aug 2014, Chen Gang wrote: 2014-08-17 Chen Gang gang.chen.5...@gmail.com * c/c-aux-info.c (gen_type): Resize 'buff' from 10 to 23 bytes, with using HOST_WIDE_INT without truncation to 'int' OK (without the c/ in the

RE: [PATCH, g++, testsuite] Skip thread_local6.C on target using wrapper

2014-08-21 Thread Tony Wang
Hi Mike Hum, another solution might be to wrap _exit as well. The patch is so simple and short, I'll approve the posted patch; it is a nice step forward. I'll let you contemplate if you want to try a wrap on _exit. Thanks for your reply, and I also thought of your suggestion to wrap

Re: [PATCH v4] Add strict aliasing warning when inlining function.

2014-08-21 Thread lin zuojian
Hi, Currently warning about strict aliasing is not strict enough. It has not considered tbaa. So a test case emit addition error. This patch is not good for commit. -- Lin Zuojian

Re: [PATCH v4] Add strict aliasing warning when inlining function.

2014-08-21 Thread lin zuojian
Hi, My patch for warning about strict aliasing violation is not strict enough. Current implementation of strict_aliasing_warn has not consider tbaa. So a test case gcc/testsuite/g++.dg/opt/pmf1.C will emit additional warning whereas it shouldn't do. My patch is not good for

Re: __intN patch 3/5: main __int128 - __intN conversion.

2014-08-21 Thread DJ Delorie
Maybe you need to refactor __glibcxx_digits so there is a version taking the bitsize as an argument rather than using sizeof(T) * __CHAR_BIT__, but that should be the only change needed to handle such types with the existing macros. The bitsize macros should be the only ones needing