[committed] Add testcase from PR57131

2013-05-02 Thread Jakub Jelinek
Hi! This got fixed by Vlad in PR57097, I've committed the testcase as obvious (so far to trunk, because the fix hasn't been backported to 4.8 branch yet, will commit there too afterwards). 2013-05-02 Jakub Jelinek ja...@redhat.com PR rtl-optimization/57131 *

Re: [PATCH, AArch64] Fix for LDR/STR to/from S and D registers

2013-05-02 Thread Marcus Shawcroft
On 1 May 2013, at 19:41, Ian Bolton ian.bol...@arm.com wrote: This is a fix for this patch: http://gcc.gnu.org/ml/gcc-patches/2013-04/msg01621.html If someone compiles with -mgeneral-regs-only then those instructions shouldn't be used. We can enforce that by adding the fp attribute to the

Re: [PATCH, AArch64] Support BICS instruction in the backend

2013-05-02 Thread Marcus Shawcroft
On 1 May 2013, at 21:12, Ian Bolton ian.bol...@arm.com wrote: Can we have the patch attached ? OK aarch64-bics-implementation-svn-patch-v4.txt OK /Marcus

Re: [RFA][PATCH] Fix tree-optimization/57124

2013-05-02 Thread Richard Biener
On Wed, May 1, 2013 at 10:26 PM, Jeff Law l...@redhat.com wrote: range_fits_type_p erroneously returns true in cases where the range has overflowed. So for example, we might have a range [0, +INF(OVF)] and conclude the range fits in an unsigned type. This in turn can cause VRP to rewrite a

[v3] Add std::is_null_pointer

2013-05-02 Thread Paolo Carlini
Hi, this adds the trait per LWG 2247 [Ready]. For the time being I'm keeping __is_nullptr_t, which maybe somebody was using as an extension... Tested x86_64-linux. Thanks, Paolo. / 2013-05-02 Paolo Carlini paolo.carl...@oracle.com *

[Fortran-dev, committed] scan-dump fix, iso_ts29113.c lower_bound corrections

2013-05-02 Thread Tobias Burnus
I have committed the attached patch to the Fortran-dev branch (Rev. 198513). Dump scan: Using scan-tree-dump-times does not seem to handle patterns; thus, scan-tree-dump is now used. runtime/iso_ts29113.c: Correctly set lower_bound for CFI_establish and CFI_select_part, I think it should now

[PATCH RX] Added target specific macros for macros for RX100, RX200, and RX600

2013-05-02 Thread Sandeep Kumar Singh
Hi, Please find the attached patch to add specific macros related to targets. The current RX port does not contain specific macros related to targets. For the compiler option -mcpu=name, the valid names are rx600, rx200 and rx610. RX610 was first target supported, so this macro may have been

[PATCH] Move instantiate_scev/resolve_mixers cache from GC to heap

2013-05-02 Thread Richard Biener
This moves the very short-lived hashtable used by instantiate_scev and resolve_mixers out of GC memory. See my mail to g...@gcc.gnu.org for how hash_table is lacking to improve the new code even further. I've timed the patch for aermod from polyhedron (the benchmark with the largest

Re: [PATCH] Loop distribution improvements

2013-05-02 Thread Richard Biener
On Fri, 5 Apr 2013, Marc Glisse wrote: On Fri, 5 Apr 2013, Marc Glisse wrote: Shouldn't we change integer_all_onesp to do what its name says and create a separate integer_minus_onep for the single place I could find where it would break, the folding of x * -1 ? 2013-04-05 Marc Glisse

Re: [PING] SLSR for conditional candidates

2013-05-02 Thread Richard Biener
On Mon, 29 Apr 2013, Bill Schmidt wrote: Half-hearted ping for http://gcc.gnu.org/ml/gcc-patches/2013-03/msg01291.html ... I promise this is the last major code dump for SLSR. ;) + if (!operand_equal_p (arg_cand-stride, integer_one_node, 0)) + return; !integer_onep

Re: Logic operators ! || for vectors

2013-05-02 Thread Richard Biener
On Fri, Apr 26, 2013 at 2:23 PM, Marc Glisse marc.gli...@inria.fr wrote: Ping http://gcc.gnu.org/ml/gcc-patches/2013-04/msg00783.html Even if we decide not to implement logic operators in the front-end, we still need the fix for the wrong code (the 2 save_expr in cp_build_binary_op, is that

Re: [PATCH] Convert profile scaling computations to rounding divides (issue9050044)

2013-05-02 Thread Richard Biener
On Tue, Apr 30, 2013 at 4:21 PM, Teresa Johnson tejohn...@google.com wrote: Follow-on patch to r197595 to complete the replacement of truncating divides in profile scaling code with rounding divide equivalents using helper routines in basic-block.h. See

[v3] Add some tests for std::integral_constant

2013-05-02 Thread Paolo Carlini
Hi, committed to mainline. Thanks, Paolo. /// Index: testsuite/20_util/integral_constant/operator_value_type.cc === --- testsuite/20_util/integral_constant/operator_value_type.cc (revision 0) +++

[PATCH] Use an obstack for graphds graph vertices and edges

2013-05-02 Thread Richard Biener
I've noticed quite some malloc/free load coming from graphds. The following uses an obstack for both, simplifying freeing the graph. This reduces the allocator load by a constant factor as well and eventually improves cache locality. graphds users may use the obstack to allocate auxiliar data

Re: [PATCH] Move instantiate_scev/resolve_mixers cache from GC to heap

2013-05-02 Thread Richard Biener
On Thu, 2 May 2013, Jakub Jelinek wrote: On Thu, May 02, 2013 at 12:56:05PM +0200, Richard Biener wrote: + + ~instantiate_cache_type(); Missing space. Fixed and committed after bootstrap / regtest on x86_64-unknown-linux-gnu. Richard.

Re: Ping: [PATCH, PR 42371] Remove references to functions from symbol table during inlining

2013-05-02 Thread Jan Hubicka
2013-03-22 Martin Jambor mjam...@suse.cz PR middle-end/42371 * ipa-prop.h (IPA_UNDESCRIBED_USE): New macro. (ipa_constant_data): New type. (ipa_jump_func): Use ipa_constant_data to hold information about constant jump functions. (ipa_get_jf_constant):

[PATCH,ARM] Fix PR56732

2013-05-02 Thread Greta Yorsh
Epilogue in RTL (r188743) generated for naked functions adds simple return jump insn and causes an ICE, as described here: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56732 There is a missing check of really_return argument in arm_expand_epilogue. This patch adds the missing check and a new test.

Re: [PATCH,ARM] Fix PR56732

2013-05-02 Thread Richard Earnshaw
On 02/05/13 13:52, Greta Yorsh wrote: Epilogue in RTL (r188743) generated for naked functions adds simple return jump insn and causes an ICE, as described here: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56732 There is a missing check of really_return argument in arm_expand_epilogue. This

[linaro/gcc-4_8-branch] Selective backports from trunk

2013-05-02 Thread Matthew Gretton-Dann
All, I have just backported the following revisions from trunk to the linaro/gcc-4_8-branch: 196795-196797, 196957, 197489-197491, 197513, 197517-197523, 197526-197528, 197530, 197642, 197770, 197807, 197921, 197925, 197965, 198004, 198019-198020, 198029-198030, 198090, 198136-198137,

[PATCH, AArch64] Testcases for TST instruction

2013-05-02 Thread Ian Bolton
I previously fixed a bug with the patterns that generate TST. I added these testcases to make our regression testing more solid. They've been running on our internal branch for about a month. OK to commit to trunk? Cheers, Ian 2013-05-02 Ian Bolton ian.bol...@arm.com *

[PATCH] Fix GO bootstrap (?)

2013-05-02 Thread Richard Biener
The following patch should fix Go bootstrap. We need to preserve virtual SSA form properly during EH cleanup and for the cleanup_empty_eh_merge_phis the same arguments that hold for real variables should hold for virtual operands - they are not changed by empty EH handlers and thus we can simply

[PATCH] Fix PR57140

2013-05-02 Thread Richard Biener
The following fixes PR57140 - we did not properly consider loops marked for removal when copying them during inlining. The following patch simply keeps them that way and makes sure to schedule a fixup. Bootstrapped on x86_64-unknown-linux-gnu, testing in progress. Richard. 2013-05-02 Richard

[Patch, Fortran] PR57142 - Fix simplify for SHAPE and SIZE for large arrays

2013-05-02 Thread Tobias Burnus
Instead of using the return size value directly, the code converted it first to an int and then back into a GMP number. This patch now directly uses the mpz value. Additionally, I added range checks - to print the proper function name (SHAPE instead of SIZE), I split the worker code from the

Re: FW: Fortran Compiler Hangs

2013-05-02 Thread H.J. Lu
On Wed, May 1, 2013 at 4:28 PM, Iyer, Balaji V balaji.v.i...@intel.com wrote: Hello Everyone, Sorry for the repost, but when I downloaded the trunk, then configured with just the prefix option in the build directory and tried to compile it (both make and make -j8), the Fortran

Re: [Patch, Fortran] PR57142 - Fix simplify for SHAPE and SIZE for large arrays

2013-05-02 Thread Steve Kargl
On Thu, May 02, 2013 at 05:46:55PM +0200, Tobias Burnus wrote: Instead of using the return size value directly, the code converted it first to an int and then back into a GMP number. This patch now directly uses the mpz value. Additionally, I added range checks - to print the proper

[PATCH] Fix up make_compound_operation (PR rtl-optimization/57130)

2013-05-02 Thread Jakub Jelinek
Hi! As described in the PR, in some cases it is unsafe for make_compound_operation, if called with in_code == COMPARE, to pass through that value to make_compound_operation on the SUBREG_REG of a SUBREG. My understanding is that in_code == COMPARE (as opposed to in_code == SET) is mostly

[PATCH] Improve simplify_subreg

2013-05-02 Thread Jakub Jelinek
Hi! When working on PR57130, I've wondered why we don't simplify it much earlier and end up with creating such weirdness. The following patch fixes that, by using nonzero_bits to see if all the low bits must be zero and in that case just return zero. Bootstrapped/regtested on x86_64-linux and

Re: patch to fix constant math - builtins.c - the first of the tree level patches for wide-int

2013-05-02 Thread Kenneth Zadeck
The only changes here were account for the changes to the wide-int api. On 04/16/2013 04:24 PM, Kenneth Zadeck wrote: Richard, this is the first of the tree level patches so that you can see how the wide-int changes will effect the tree level. This patch converts builtins.c so that it does

Re: [PATCH] Improve simplify_subreg

2013-05-02 Thread Richard Sandiford
Jakub Jelinek ja...@redhat.com writes: Hi! When working on PR57130, I've wondered why we don't simplify it much earlier and end up with creating such weirdness. The following patch fixes that, by using nonzero_bits to see if all the low bits must be zero and in that case just return zero.

patches backported to gcc-4_8-branch

2013-05-02 Thread Vladimir Makarov
The following patches were back-ported to gcc4.8 branch. Successfully bootstrapped and tested on x86 and x86-64. Committed as revisions 198553-198557. 2013-05-02 Vladimir Makarov vmaka...@redhat.com Backport from mainline 2013-04-29 Vladimir Makarov

[AArch64] Support scalar form of FABD

2013-05-02 Thread Vidya Praveen
Hello, This attached patch adds support to the scalar form of FABD instruction along with the compile execute tests for the same. Regression tested on aarch64-none-elf with no issues. OK? Regards VP --- gcc/ChangeLog 2013-05-02 Vidya Praveen vidyaprav...@arm.com *

[google][4.7] Move the building of gcov constructor function after initialization of gcov_info_var

2013-05-02 Thread Carrot Wei
This patch fixes google bug 8397853 and targets google 4.7 branch. In LIPO mode, when coverage_obj_init is called, cgraph_state is CGRAPH_STATE_FINISHED. The variable gcov_info_var is created but not initialized. When cgraph_build_static_cdtor is called, the new function and variables are

Re: [google][4.7] Move the building of gcov constructor function after initialization of gcov_info_var

2013-05-02 Thread Xinliang David Li
I suggest submitting the refactoring part of the changes to GCC trunk first. thanks, David On Thu, May 2, 2013 at 11:06 AM, Carrot Wei car...@google.com wrote: This patch fixes google bug 8397853 and targets google 4.7 branch. In LIPO mode, when coverage_obj_init is called, cgraph_state is

[AArch64] Fix the description of simd_fabd

2013-05-02 Thread Vidya Praveen
Hello, This attached patch corrects the description for simd_fabd. OK? Regards VP gcc/ChangeLog 2013-05-02 Vidya Praveen vidyaprav...@arm.com * config/aarch64/aarch64-simd.md (simd_fabd): Correct the description.diff --git a/gcc/config/aarch64/aarch64-simd.md

patch to add one more criterium for choosing alternatives in LRA

2013-05-02 Thread Vladimir Makarov
The following patch fixes two GCC testsuite failures on i686 after submitting patch to fix PR57091. The first alternative is always preferable then subsequent ones when all costs are the same. That is how reload works. This checks needs when we have commutative operator in an insn.

backporting patch for PR57091

2013-05-02 Thread Vladimir Makarov
The following was back-ported to gcc-4_8-branch. Committed as rev. 198559. 2013-05-02 Vladimir Makarov vmaka...@redhat.com Backport from mainline 2013-05-02 Vladimir Makarov vmaka...@redhat.com * lra-constraints.c (process_alt_operands): Add checking alt

Re: [PATCH, boehm-gc, AArch64] Add AArch64 support

2013-05-02 Thread Christophe Lyon
I have just added the ChangeLog entry (in boehm-gc/), which I forgot to add when I committed this patch for you. (as r198562) Christophe. On 11 April 2013 13:20, Yvan Roux yvan.r...@linaro.org wrote: Hi Marcus, thanks for pointing this, but unfortunately I don't have the svn write access

[patch, mips] Allow users to avoid promoting prototypes.

2013-05-02 Thread Steve Ellcey
MIPS architectures set TARGET_PROMOTE_PROTOTYPES to true. I would like to have an option to set this to false in order to avoid extra masking when passing char or short types. I don't think we can change this by default since it would affect the ABI, but I would like to allow users the option of

[PATCH] Refactor coverage.c, outline the construction of gcov constructor

2013-05-02 Thread Carrot Wei
This patch outline the construction of gcov constructor from coverage_obj_init as a separate function build_init_ctor. It passed bootstrap and regression test on x86-64. OK for trunk and google 4.7 branch? thanks Carrot 2013-05-02 Guozhi Wei car...@google.com * coverage.c

[C++ Patch] PR 14283

2013-05-02 Thread Paolo Carlini
Hi, in this rather old diagnostic issue, we want to provide better error messages, spelling out template if appropriate, and also fix the column numbers (in practice location_of (id) boils down to input_location which is the right position for this kind of error message among those handled

Re: [patch, mips] Allow users to avoid promoting prototypes.

2013-05-02 Thread Richard Sandiford
Steve Ellcey sell...@imgtec.com writes: MIPS architectures set TARGET_PROMOTE_PROTOTYPES to true. I would like to have an option to set this to false in order to avoid extra masking when passing char or short types. I don't think we can change this by default since it would affect the ABI,

Re: GCC does not support *mmintrin.h with function specific opts

2013-05-02 Thread Sriraman Tallam
Ping. On Mon, Apr 29, 2013 at 10:47 AM, Sriraman Tallam tmsri...@google.com wrote: On Thu, Apr 25, 2013 at 12:41 PM, Joseph S. Myers jos...@codesourcery.com wrote: On Tue, 16 Apr 2013, Sriraman Tallam wrote: Ok, it is on by default now. There is a way to turn it off, with

Re: [GOOGLE] Change function naming to use context function assembler name to replace function id

2013-05-02 Thread Dehao Chen
The root problem is that -fsigned-char and -funsigned-char is incompatible. The fix of the problem: Index: coverage.c === --- coverage.c (revision 198362) +++ coverage.c (working copy) @@ -336,6 +336,7 @@ { -fsized-delete,

Re: [GOOGLE] Change function naming to use context function assembler name to replace function id

2013-05-02 Thread Xinliang David Li
ok. thanks, David On Thu, May 2, 2013 at 4:38 PM, Dehao Chen de...@google.com wrote: The root problem is that -fsigned-char and -funsigned-char is incompatible. The fix of the problem: Index: coverage.c === --- coverage.c

Re: [PING] SLSR for conditional candidates

2013-05-02 Thread Bill Schmidt
On Thu, 2013-05-02 at 13:29 +0200, Richard Biener wrote: On Mon, 29 Apr 2013, Bill Schmidt wrote: Half-hearted ping for http://gcc.gnu.org/ml/gcc-patches/2013-03/msg01291.html ... I promise this is the last major code dump for SLSR. ;) + if (!operand_equal_p

Re: [C++ Patch] PR 14283

2013-05-02 Thread Jason Merrill
OK. Jason

[RFA][PATCH] Fix tree-optimization/57144

2013-05-02 Thread Jeff Law
When we have x = (T) y; if (x CONST) true arm else false arm Assume CONST is larger than what can be represented in T. If we use fold_convert, any bits not not in T will be dropped. So if CONST is say 0x1 and T is a 32 bit type, the returned constant will be 0x0. So we change

Re: [RFA][PATCH] Fix tree-optimization/57144

2013-05-02 Thread Jakub Jelinek
On Thu, May 02, 2013 at 10:30:57PM -0600, Jeff Law wrote: --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/execute/pr57144.c @@ -0,0 +1,15 @@ +__attribute__ ((noinline)) +foo(int a) +{ + int z = a 0 ? a : -a; + long x = z; + if (x 0x1) +abort (); + else +exit (0);