[gomp4] Merge trunk r207818 (2014-02-17) into gomp-4_0-branch

2014-02-18 Thread Thomas Schwinge
Hi! In r207837, I have committed a merge from trunk r207818 (2014-02-17) into gomp-4_0-branch. No regressions, as far as I call -- trunk is stabilizing, yay! Grüße, Thomas pgpS6oW9Qg0lf.pgp Description: PGP signature

[wwwdocs] 4.9/changes.html: Mention -Wopenmp-simd/-fsimd-cost-model; Fortran update

2014-02-18 Thread Tobias Burnus
Hi all, is the wording okay - and/or do you have further suggestions? Tobias Index: changes.html === RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-4.9/changes.html,v retrieving revision 1.55 diff -p -u -r1.55 changes.html --- changes.html

[C++ Patch] PR 60215

2014-02-18 Thread Paolo Carlini
Hi, we fixed c++/58647 with: 9672 case COMPONENT_REF: 9673 if (is_overloaded_fn (t)) 9674 { 9675 /* We can only get here in checking mode via 9676 build_non_dependent_expr, because any expression that 9677 calls or takes the address of the

Re: [PATCH i386 13/8] [AVX-512] Fix argument order for perm and recp intrinsics.

2014-02-18 Thread Kirill Yukhin
Hello Uroš, On 17 Feb 13:41, Uros Bizjak wrote: On Mon, Feb 17, 2014 at 1:26 PM, Kirill Yukhin kirill.yuk...@gmail.com wrote: Please don't change srcp pattern, it should be defined similar to vrcpss (aka sse_vmrcpv4sf). You need to switch operand order elsewhere. No, you are

Re: [PATCH i386 13/8] [AVX-512] Fix argument order for perm and recp intrinsics.

2014-02-18 Thread Uros Bizjak
On Tue, Feb 18, 2014 at 11:06 AM, Kirill Yukhin kirill.yuk...@gmail.com wrote: Please don't change srcp pattern, it should be defined similar to vrcpss (aka sse_vmrcpv4sf). You need to switch operand order elsewhere. No, you are correct. Operands should be swapped as in your patch.

[Ada] Reduce use of N_Reference nodes in generated code

2014-02-18 Thread Arnaud Charlet
This is an internal optimization that reduces the number of cases in which we generate N_Reference nodes. Generally has no effect on functional behavior, but the following test: 1. function StrangeRef (A, B : Integer) return Integer is 2.X : Integer; 3. begin 4.X :=

[Ada] Use of attributes 'Old and 'Result and local entities in another 'Old

2014-02-18 Thread Arnaud Charlet
This patch implements the following sentence from Ada RM 6.1.1 (27/3): The prefix of an Old attribute_reference shall not contain a Result attribute_reference, nor an Old attribute_reference, nor a use of an entity declared within the postcondition expression but not within prefix itself

[PATCH] Reduce load on crgaph_get_node from estimate_num_insns

2014-02-18 Thread Richard Biener
It looks like the most heavy load on crgaph_get_node and the symtab hashtable (at least for PR60243), so the following avoids that when the call isn't builtin. Bootstrap / regtest in progress on x86_64-unknown-linux-gnu, ok? Thanks, Richard. 2014-02-18 Richard Biener rguent...@suse.de

[AArch64 testsuite] Make vect-abs.c C99 compliant

2014-02-18 Thread James Greenhalgh
Hi, This test fails on a linux build because it tries to use the LONG_LONG_{MAX/MIN} macros from types.h. These are not guaranteed to exist, and my system types.h doesn't provide them. C99 provides LLONG_{MIN/MAX} for this purpose. A gnu89 baremetal compiler doesn't seem to carry these macros

[AArch64] Relax modes_tieable_p and cannot_change_mode_class

2014-02-18 Thread James Greenhalgh
Hi, We aim to improve code generation for the vector structure types such as int64x2x4_t, as used in the vld/st{2,3,4} lane neon intrinsics. It should be possible and cheap to get individual vectors in and out of these structures - these structures are implemented as opaque integer modes

[PATCH] Fix PR60221

2014-02-18 Thread Richard Biener
This makes sure to run cleanup-all-empty-eh even at -O0 via ehcleanup2. Bootstrapped and tested on x86_64-unknown-linux-gnu, ok for trunk (and branches?) Thanks, Richard. 2014-02-18 Richard Biener rguent...@suse.de PR middle-end/60221 * tree-eh.c (execute_cleanup_eh_1): Also

[PATCH] Fix libjava install with --enable-version-specific-runtime-libs

2014-02-18 Thread Richard Biener
The following two pieces fix the fallout of 2013-05-22 Mark Mitchell m...@codesourcery.com Sandra Loosemore san...@codesourcery.com * configure.ac (dbexecdir): Base on $(toolexeclibdir), not $(libdir). ... that makes a wreck out of my 4.9-based libjava installs.

[testsuite] XFAIL gcc.dg/torture/pr60092.c execution on Solaris 11

2014-02-18 Thread Rainer Orth
As described in PR middle-end/60092, gcc.dg/torture/pr60092.c execution FAILs at -O0 on Solaris 11. posix_memalign modifies it's first arg in the error case, which is at least a QOI issue. Therefore I'd like to XFAIL the test like this. Tested with the appropriate runtest invocation on

Re: RFA: RL78: Add missing instruction patterns

2014-02-18 Thread nick clifton
Hi DJ, I'm OK with adding patterns in general, but I wonder if gcc would produce better code if they were split into QImode ops earlier? Probably. In fact I double checked and I can no longer find the tests that triggered the need for the new andhi3 and xorhi3 patterns, so the revised

[PATCH ARM] Fix PR60264 (ICE in dwarf2out_frame_debug_adjust_cfa)

2014-02-18 Thread Christian Bruel
Hello, Considering the attached trivial case with the epilogue: sub sp, fp, #12 ldmia sp, {fp, sp, lr}frame_related_p the sub instruction should also be frame_related_fp. (a gcc_assert triggers in dwarf2out_frame_debug_adjust_cfa) This patch sets RTX_FRAME_RELATED_P on

Re: [PATCH ARM] Fix PR60264 (ICE in dwarf2out_frame_debug_adjust_cfa)

2014-02-18 Thread Christian Bruel
probably easier to review with patch attached... 2014-02-18 Christian Bruel christian.br...@st.com PR target/60264 * config/arm/arm.c (arm_emit_vfp_multi_reg_pop): Restore cfa register. (arm_expand_epilogue_apcs_frame): Set RTX_FRAME_RELATED_P. 2014-02-18 Christian Bruel

[5.0] PR60194 [c-family] add -Wformat-signedness to warn about %d/%u signedness mismatch

2014-02-18 Thread Tobias Burnus
This patch adds a warning to -Wformat=2, which can also be used as -Wformat -Wformat-signedness and which warns when the signedness of the argument doesn't match the one of %x/%u/%d/%i/... That was motivated by a check of cppcheck, which found some issues in a bigger code. Bootstrapped and

Re: [PATCH, PR 55260] Use correct info in cgraph_edge_brings_all_agg_vals_for_node

2014-02-18 Thread Markus Trippelsdorf
On 2014.02.04 at 17:48 +0100, Martin Jambor wrote: PR 55260 has been reopened because there is still one use of wrong info, this time in cgraph_edge_brings_all_agg_vals_for_node when checking whether aggregate lattices are set to bottom which can lead to index out of bounds assert failures or

Re: [gomp4] libgomp: Don't update copy_from for the existing mappings.

2014-02-18 Thread Thomas Schwinge
Hi Ilya! On Mon, 17 Feb 2014 21:06:41 +0400, Ilya Verbin iver...@gmail.com wrote: Here is the fix for the issue discussed in http://gcc.gnu.org/ml/gcc/2014-02/msg00257.html OK to commit to gomp-4_0-branch? + * target.c (gomp_map_vars_existing): Don't update copy_from for the +

[C++ Patch] PR 60225

2014-02-18 Thread Paolo Carlini
Hi, as noticed by Marc, this ICE on invalid regression is essentially due to the fact that ensure_literal_type_for_constexpr_object, at variance with literal_type_p, doesn't use strip_array_types, thus, in: if (CLASS_TYPE_P (type) !COMPLETE_TYPE_P (complete_type (type))) /* Don't

Re: [PATCH] Fixing SEH exceptions for languages != C++

2014-02-18 Thread Kai Tietz
2014-02-17 12:22 GMT+01:00 Jonathan Schleifer j...@webkeks.org: Am 16.02.2014 um 16:47 schrieb Mike Stump mikest...@comcast.net: On Feb 15, 2014, at 9:27 AM, Jonathan Schleifer j...@webkeks.org wrote: The following patch fixes a bug in SEH exception handling that made it crash with ObjC

Re: RFA: Fix some gcc tests for 16-bit targets

2014-02-18 Thread nick clifton
Hi Richard, Instead of modifying testcases I'd be less nervous if you'd make them require 32bit. Otherwise you should reproduce the original issues with the modified testcases. OK, I can do that. How about this patch. OK to apply ? Cheers Nick gcc/testsuite/ChangeLog 2014-02-18 Nick

Re: [PATCH] Fixing SEH exceptions for languages != C++

2014-02-18 Thread Jonathan Schleifer
Am 18.02.2014 um 17:41 schrieb Kai Tietz ktiet...@googlemail.com: Hi Mike, the patch is reasonable, and my testings haven't shown any regressions. So from that POV patch would be ok. Nevertheless it would be good to have a bug-report for it, and it is a regression from SjLj. I reported

Re: [gomp4] libgomp: Don't update copy_from for the existing mappings.

2014-02-18 Thread Ilya Verbin
2014-02-18 20:25 GMT+04:00 Thomas Schwinge tho...@codesourcery.com: Sure; this was the consensus, as I understand it. Though, wouldn't it make sense to also add a test case to a) test for this behavior, and also b) to document the GCC interpretation of the OpenMP standard in this case

Re: [PATCH] Fixing SEH exceptions for languages != C++

2014-02-18 Thread Kai Tietz
2014-02-18 17:43 GMT+01:00 Jonathan Schleifer j...@webkeks.org: Am 18.02.2014 um 17:41 schrieb Kai Tietz ktiet...@googlemail.com: Hi Mike, the patch is reasonable, and my testings haven't shown any regressions. So from that POV patch would be ok. Nevertheless it would be good to have a

Re: [C++ Patch] PR 60225

2014-02-18 Thread Jason Merrill
OK. Jason

[PATCH, i386]: Fix PR 60205: No ABI warning for AVX-512

2014-02-18 Thread Uros Bizjak
Hello! Just following what AVX warnings do. 2014-02-18 Uros Bizjak ubiz...@gmail.com PR target/60205 * config/i386/i386.h (struct ix86_args): Add warn_avx512f. * config/i386/i386.c (init_cumulative_args): Initialize warn_avx512f. (type_natural_mode): Warn ABI change when %zmm

[PATCH] Fix -ftrack-macro-expansion preprocessing of A######A (PR preprocessor/58844)

2014-02-18 Thread Jakub Jelinek
Hi! The following testcase build with -ftrack-macro-expansion=0, but don't build otherwise. The problem seems to be that the libcpp for macro redefinition warning/error purposes if it sees more than one paste operator adds those extra CPP_PASTE tokens at the end, after normal tokens from the

[PATCH] Don't force line note on second basic block (PR sanitizer/60142)

2014-02-18 Thread Jakub Jelinek
Hi! As discussed in the PR, GDB is using the second line note as a marker to find the end of prologue, but is confused if the prologue contains multiple basic blocks. This happens e.g. on x86_64 in stdarg function which aren't known not to need floating point arguments (GDB apparently has some

[PATCH] Fix sanitizer build on sparc (PR sanitizer/59758)

2014-02-18 Thread Jose E. Marchesi
Hi. This patch fixes builds with --enable-sanitizer, which seems to be the default for sparc now. Build tested in a sparc64-*-linux-gnu system with linux 3.8.13 headers. 2014-02-18 Jose E. Marchesi jose.march...@oracle.com PR sanitizer/59758 *

Re: [PATCH] Fix sanitizer build on sparc (PR sanitizer/59758)

2014-02-18 Thread Jakub Jelinek
On Tue, Feb 18, 2014 at 06:55:51PM +0100, Jose E. Marchesi wrote: This patch fixes builds with --enable-sanitizer, which seems to be the default for sparc now. Build tested in a sparc64-*-linux-gnu system with linux 3.8.13 headers. 2014-02-18 Jose E. Marchesi jose.march...@oracle.com

Re: [PATCH] Reduce load on crgaph_get_node from estimate_num_insns

2014-02-18 Thread Jan Hubicka
It looks like the most heavy load on crgaph_get_node and the symtab hashtable (at least for PR60243), so the following avoids that when the call isn't builtin. Bootstrap / regtest in progress on x86_64-unknown-linux-gnu, ok? OK, thanks! Honza

Re: [PATCH, PR 55260] Use correct info in cgraph_edge_brings_all_agg_vals_for_node

2014-02-18 Thread Jan Hubicka
On 2014.02.04 at 17:48 +0100, Martin Jambor wrote: PR 55260 has been reopened because there is still one use of wrong info, this time in cgraph_edge_brings_all_agg_vals_for_node when checking whether aggregate lattices are set to bottom which can lead to index out of bounds assert

[C PATCH] Kill bogus warnings on _Atomics (PR c/60195)

2014-02-18 Thread Marek Polacek
This PR is about bogus warnings on _Atomics. E.g., for _Atomic int, the warning right-hand operand of comma has no effect makes no sense. One problem was that when making COMPOUND_EXPR out of atomic variable, we create artificial variable via create_tmp_var, but we shouldn't warn on those. So

Re: [PATCH] Fix sanitizer build on sparc (PR sanitizer/59758)

2014-02-18 Thread Konstantin Serebryany
On Tue, Feb 18, 2014 at 10:00 PM, Jakub Jelinek ja...@redhat.com wrote: On Tue, Feb 18, 2014 at 06:55:51PM +0100, Jose E. Marchesi wrote: This patch fixes builds with --enable-sanitizer, which seems to be the default for sparc now. Build tested in a sparc64-*-linux-gnu system with linux

[jit] Avoid using a NULL context when reporting errors

2014-02-18 Thread David Malcolm
Committed to branch dmalcolm/jit: gcc/jit/ * libgccjit.c (gcc_jit_function_new_local): Use the context of the function when reporting errors. (gcc_jit_function_place_forward_label): Likewise. (gcc_jit_function_add_eval): Likewise.

Re: [PATCH] Don't force line note on second basic block (PR sanitizer/60142)

2014-02-18 Thread Richard Henderson
On 02/18/2014 11:37 AM, Jakub Jelinek wrote: Bootstrapped/regtested on x86_64-linux and i686-linux, and Jan Kratochvil has tested it with GDB testsuite. Ok for trunk? 2014-02-18 Jakub Jelinek ja...@redhat.com PR sanitizer/60142 * final.c (SEEN_BB): Remove.

[PATCH] Fix PR c++/60190.

2014-02-18 Thread Adam Butcher
PR c++/60190 * parser.c (cp_parser_lambda_declarator_opt): Pop template parameter scope whenever a template parameter list has been started, independent of whether the function call operator was well-formed or not. PR c++/60190 *

[Patch, Fortran] PR49397 - Fix ICE with proc-pointers

2014-02-18 Thread Tobias Burnus
This patch fixes an ICE on valid error - and a missed diagnostic. Wording from the standard F2008, Corr2: C729 (R742) A procedure-name shall be the name of a module or dummy procedure, a specific intrinsic function listed in 13.6 and not marked with a bullet ($\bullet$), a procedure point, or

Re: [PATCH] [libgomp] make it possible to use OMP on both sides of a fork

2014-02-18 Thread Richard Henderson
On 02/16/2014 03:59 PM, Nathaniel Smith wrote: Yes, but the problem is that depending on what the user intends to do after forking, our pthread_atfork handler might help or it might hurt, and we don't know which. Consider these two cases: - fork+exec - fork+continue to use OMP in child

Re: [PATCH] Fix PR c++/60190.

2014-02-18 Thread Jason Merrill
OK. Jason

[AArch64 02/14] Add xgene1 core identifier.

2014-02-18 Thread Philipp Tomsich
* aarch64/aarch64-cores.def: Add xgene1. --- gcc/config/aarch64/aarch64-cores.def | 1 + gcc/config/aarch64/aarch64-tune.md | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/gcc/config/aarch64/aarch64-cores.def b/gcc/config/aarch64/aarch64-cores.def index 1039660..b4f6c16

[AArch64 00/14] Pipeline-independent changes for XGene-1

2014-02-18 Thread Philipp Tomsich
The following patch-set contains the pipeline-independent changes to gcc to support the APM XGene-1 and contains various enhancements derived from real-world applications and benchmarks running on XGene-1. As the pipeline model has not been fully adapted to the new instruction typing shared

[AArch64 01/14] Use generic target, if no other default.

2014-02-18 Thread Philipp Tomsich
The default target should be generic, as Cortex-A53 includes optional ISA features (CRC and CRYPTO) that are not required for architectural compliance. The key difference between generic (which already uses the cortexa53 pipeline model for scheduling) is the absence of any optional ISA features in

[AArch64 03/14] Retrieve BRANCH_COST from tuning structure.

2014-02-18 Thread Philipp Tomsich
The BRANCH_COST affects whether conditional instructions (e.g. conditional moves) will be used in transforms in the middle-end. This change makes the branch_cost configurable from within the target tuning structure. --- gcc/config/aarch64/aarch64-protos.h | 2 ++ gcc/config/aarch64/aarch64.c

[AArch64 06/14] Extend '*tboptabmode1'.

2014-02-18 Thread Philipp Tomsich
The '*tboptabmode1' can safely be extended to match operands of any size, as long as the immediate operand (i.e. the bits tested) match the size of the register operand. This removes unnecessary zero-extension operations from the generated instruction stream. --- gcc/config/aarch64/aarch64.md |

[AArch64 07/14] Define additional patterns for adds/subs.

2014-02-18 Thread Philipp Tomsich
--- gcc/config/aarch64/aarch64.md | 49 +++ 1 file changed, 49 insertions(+) diff --git a/gcc/config/aarch64/aarch64.md b/gcc/config/aarch64/aarch64.md index 90f1ee9..13a75d3 100644 --- a/gcc/config/aarch64/aarch64.md +++ b/gcc/config/aarch64/aarch64.md @@

[AArch64 04/14] Correct the maximum shift amount for shifted operands.

2014-02-18 Thread Philipp Tomsich
--- gcc/config/aarch64/aarch64.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c index 43e4612..4327eb3 100644 --- a/gcc/config/aarch64/aarch64.c +++ b/gcc/config/aarch64/aarch64.c @@ -4409,7 +4409,7 @@

[AArch64 05/14] Add AArch64 'prefetch'-pattern.

2014-02-18 Thread Philipp Tomsich
--- gcc/config/aarch64/aarch64.md | 17 + gcc/config/arm/types.md | 2 ++ 2 files changed, 19 insertions(+) diff --git a/gcc/config/aarch64/aarch64.md b/gcc/config/aarch64/aarch64.md index 99a6ac8..b972a1b 100644 --- a/gcc/config/aarch64/aarch64.md +++

Re: [Patch, Fortran] PR49397 - Fix ICE with proc-pointers

2014-02-18 Thread Janus Weil
Hi Tobias, This patch fixes an ICE on valid error - and a missed diagnostic. Wording from the standard F2008, Corr2: C729 (R742) A procedure-name shall be the name of a module or dummy procedure, a specific intrinsic function listed in 13.6 and not marked with a bullet ($\bullet$), a

Re: [AArch64 05/14] Add AArch64 'prefetch'-pattern.

2014-02-18 Thread Andrew Pinski
On Tue, Feb 18, 2014 at 1:09 PM, Philipp Tomsich philipp.toms...@theobroma-systems.com wrote: Can you add a testcase or two for this? Thanks, Andrew --- gcc/config/aarch64/aarch64.md | 17 + gcc/config/arm/types.md | 2 ++ 2 files changed, 19 insertions(+) diff

Re: [AArch64 06/14] Extend '*tboptabmode1'.

2014-02-18 Thread Andrew Pinski
On Tue, Feb 18, 2014 at 1:09 PM, Philipp Tomsich philipp.toms...@theobroma-systems.com wrote: The '*tboptabmode1' can safely be extended to match operands of any size, as long as the immediate operand (i.e. the bits tested) match the size of the register operand. This removes unnecessary

Re: [AArch64 07/14] Define additional patterns for adds/subs.

2014-02-18 Thread Andrew Pinski
On Tue, Feb 18, 2014 at 1:09 PM, Philipp Tomsich philipp.toms...@theobroma-systems.com wrote: Can you add a testcase or two for this? This should show why they are not matching before hand. Thanks, Andrew --- gcc/config/aarch64/aarch64.md | 49 +++

Re: [AArch64 04/14] Correct the maximum shift amount for shifted operands.

2014-02-18 Thread Andrew Pinski
On Tue, Feb 18, 2014 at 1:09 PM, Philipp Tomsich philipp.toms...@theobroma-systems.com wrote: Can you add a testcase or two for this? Thanks, Andrew --- gcc/config/aarch64/aarch64.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc/config/aarch64/aarch64.c

[jit] Support self-referential data structures (API changes).

2014-02-18 Thread David Malcolm
Committed to branch dmalcolm/jit: New API type: - gcc_jit_struct New API entrypoints: - gcc_jit_context_new_opaque_struct - gcc_jit_struct_as_type - gcc_jit_struct_set_fields - gcc_jit_context_null: get the NULL value for a pointer type. Changed API entrypoint: -

[AArch64 10/14] Add movmodecc definition for GPF case.

2014-02-18 Thread Philipp Tomsich
--- gcc/config/aarch64/aarch64.md | 19 +++ 1 file changed, 19 insertions(+) diff --git a/gcc/config/aarch64/aarch64.md b/gcc/config/aarch64/aarch64.md index c72d123..b6453b6 100644 --- a/gcc/config/aarch64/aarch64.md +++ b/gcc/config/aarch64/aarch64.md @@ -2460,6 +2460,25 @@

[AArch64 11/14] Optimize and(s) patterns for HI/QI operands.

2014-02-18 Thread Philipp Tomsich
HImode and QImode operands can be handled in a more optimal way for logical AND than for logical OR operations. An AND will never set bits that are not already set in its operands, so the resulting mode/precision depends on the least precision of its operands with an implicit zero-extension to any

[AArch64 14/14] Add cost-model for XGene-1.

2014-02-18 Thread Philipp Tomsich
This completely rewritten cost-model provides a like-for-like benefit of approx. 3% on CoreMark. --- gcc/config/aarch64/aarch64.c | 885 ++- 1 file changed, 881 insertions(+), 4 deletions(-) diff --git a/gcc/config/aarch64/aarch64.c

[AArch64 13/14] Initial tuning description for XGene-1 core.

2014-02-18 Thread Philipp Tomsich
The generic cost model for AArch64 can not be used to capture the microarchitectural cost of XGene-1 in full detail. For this reason, we use the basic tuning model of the Cortex-A53 for now. --- gcc/config/aarch64/aarch64-cores.def | 2 +- gcc/config/aarch64/aarch64.c | 28

[AArch64 08/14] Define a variant of cmp for the CC_NZ case.

2014-02-18 Thread Philipp Tomsich
This pattern is not strictly necessary and a similar effect could be achieved through the use of a suitable compatibility relation for CC modes; in the meantime, this helps on some benchmarks. --- gcc/config/aarch64/aarch64.md | 13 + 1 file changed, 13 insertions(+) diff --git

[AArch64 09/14] Add special cases of zero-extend w/ compare operations.

2014-02-18 Thread Philipp Tomsich
--- gcc/config/aarch64/aarch64.md | 56 +++ 1 file changed, 56 insertions(+) diff --git a/gcc/config/aarch64/aarch64.md b/gcc/config/aarch64/aarch64.md index 60e42af..c72d123 100644 --- a/gcc/config/aarch64/aarch64.md +++ b/gcc/config/aarch64/aarch64.md @@

[AArch64 12/14] Generate 'bics', when only interested in CC_NZ.

2014-02-18 Thread Philipp Tomsich
A specialized variant of '*and_one_cmplmode3_compare0' is needed to match some cases (during the combine stage) that could be folded into a bics, when the output result is not used (i.e. when only the condition code is of interest). This is useful both for CoreMark and SPEC workloads. ---

Re: [AArch64 10/14] Add movmodecc definition for GPF case.

2014-02-18 Thread Andrew Pinski
On Tue, Feb 18, 2014 at 1:09 PM, Philipp Tomsich philipp.toms...@theobroma-systems.com wrote: Can you add a testcase or two for this patch? Thanks, Andrew Pinski --- gcc/config/aarch64/aarch64.md | 19 +++ 1 file changed, 19 insertions(+) diff --git

[PATCH, i386]: Warn for ABI changes only when -Wpsabi is enabled

2014-02-18 Thread Uros Bizjak
Hello! Also use boolean AND instead of bitwise AND in a couple of places. 2014-02-18 Uros Bizjak ubiz...@gmail.com PR target/59794 * config/i386/i386.c (type_natural_mode): Warn for ABI changes only when -Wpsabi is enabled. testsuite/ChangeLog: 2014-02-18 Uros Bizjak

Re: [AArch64 11/14] Optimize and(s) patterns for HI/QI operands.

2014-02-18 Thread Andrew Pinski
On Tue, Feb 18, 2014 at 1:09 PM, Philipp Tomsich philipp.toms...@theobroma-systems.com wrote: HImode and QImode operands can be handled in a more optimal way for logical AND than for logical OR operations. An AND will never set bits that are not already set in its operands, so the resulting

Re: [AArch64 12/14] Generate 'bics', when only interested in CC_NZ.

2014-02-18 Thread Andrew Pinski
On Tue, Feb 18, 2014 at 1:09 PM, Philipp Tomsich philipp.toms...@theobroma-systems.com wrote: A specialized variant of '*and_one_cmplmode3_compare0' is needed to match some cases (during the combine stage) that could be folded into a bics, when the output result is not used (i.e. when only the

Re: [AArch64 09/14] Add special cases of zero-extend w/ compare operations.

2014-02-18 Thread Andrew Pinski
On Tue, Feb 18, 2014 at 1:09 PM, Philipp Tomsich philipp.toms...@theobroma-systems.com wrote: Can you add a testcase or two for this patch? Having an example will help people in the future understand why these patterns are added. Thanks, Andrew Pinski --- gcc/config/aarch64/aarch64.md | 56

Re: [AArch64 08/14] Define a variant of cmp for the CC_NZ case.

2014-02-18 Thread Andrew Pinski
On Tue, Feb 18, 2014 at 1:09 PM, Philipp Tomsich philipp.toms...@theobroma-systems.com wrote: This pattern is not strictly necessary and a similar effect could be achieved through the use of a suitable compatibility relation for CC modes; in the meantime, this helps on some benchmarks. Can

RE: [PATCH] Properly check for _Cilk_spawn in return stmt (PR c/60197)

2014-02-18 Thread Iyer, Balaji V
Yeah, it passed regtesting. Note that we also ICE on e.g. int foo (void) { int i; i = (_Cilk_spawn foo ()) + 1; return i; } I don't know whether this is valid use of _Cilk_spawn though. In any case, this patch addresses only _Cilk_spawn in return statements. This is invalid.

[PATCH] PR 60203, fix little endian breakage of my PR 60203 fix

2014-02-18 Thread Michael Meissner
When I made my patches for PR target/60203 (allow use of ISA 2.07 direct move instructions for long double and _Decimal128), I was not aware that little endian TDmode has the double words in big endian order, but the bytes within the double words in little endian order in memory. This means that

Re: Allow passing arrays in registers on AArch64

2014-02-18 Thread Michael Hudson-Doyle
Jakub Jelinek ja...@redhat.com writes: On Tue, Feb 11, 2014 at 02:51:08PM +, Marcus Shawcroft wrote: On 6 February 2014 22:51, Michael Hudson-Doyle michael.hud...@canonical.com wrote: diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c index 16c51a8..958c667

Re: [Patch, Fortran] PR49397 - Fix ICE with proc-pointers

2014-02-18 Thread Tobias Burnus
Hi Janus, Janus Weil wrote: your patch basically looks good to me. One minor nit about the trans-decl.c part: The comment above the code that you're changing (Only used for ...) seems wrong after the change. Well, it also was kind of wrong before the change as well; I have changed it to:

Re: [PATCH] PR 60203, fix little endian breakage of my PR 60203 fix

2014-02-18 Thread Michael Meissner
Whoops, the ChangeLog entry was not complete: 2014-02-18 Michael Meissner meiss...@linux.vnet.ibm.com PR target/60203 * config/rs6000/rs6000.md (movmode_64bit, TF/TDmode moves): Split 64-bit moves into 2 patterns. Do not allow the use of direct move for TDmode

[PATCH] Fix PR c++/60064.

2014-02-18 Thread Adam Butcher
PR c++/60064 * parser.c (cp_parser_member_declaration): Pop fully implicit template scope for generic friend declarations as well as for non-friends. PR c++/60064 * g++.dg/cpp1y/pr60064.C: New testcase. --- gcc/cp/parser.c | 8 +++-

Re: [PATCH] Fix PR c++/60064.

2014-02-18 Thread Jason Merrill
OK. Jason

Fix PR tree-optimization/60174

2014-02-18 Thread Eric Botcazou
This is the failure of ACATS cc3305a on the ARM: Unable to coalesce ssa_names 34 and 399 which are marked as MUST COALESCE. i_34(ab) and i_399(ab) +===GNAT BUG DETECTED==+ | 4.9.0 20140209 (experimental) (armv7l-unknown-linux-gnueabihf) GCC

Re: [5.0] PR60194 [c-family] add -Wformat-signedness to warn about %d/%u signedness mismatch

2014-02-18 Thread Joseph S. Myers
On Tue, 18 Feb 2014, Tobias Burnus wrote: This patch adds a warning to -Wformat=2, which can also be used as -Wformat -Wformat-signedness and which warns when the signedness of the argument doesn't match the one of %x/%u/%d/%i/... That was motivated by a check of cppcheck, which found some

Re: [PATCH] Fix -ftrack-macro-expansion preprocessing of A######A (PR preprocessor/58844)

2014-02-18 Thread Joseph S. Myers
On Tue, 18 Feb 2014, Jakub Jelinek wrote: Hi! The following testcase build with -ftrack-macro-expansion=0, but don't build otherwise. The problem seems to be that the libcpp for macro redefinition warning/error purposes if it sees more than one paste operator adds those extra CPP_PASTE

Re: [C PATCH] Kill bogus warnings on _Atomics (PR c/60195)

2014-02-18 Thread Joseph S. Myers
On Tue, 18 Feb 2014, Marek Polacek wrote: This PR is about bogus warnings on _Atomics. E.g., for _Atomic int, the warning right-hand operand of comma has no effect makes no sense. One problem was that when making COMPOUND_EXPR out of atomic variable, we create artificial variable via

Re: [PATCH] PR 60203, fix little endian breakage of my PR 60203 fix

2014-02-18 Thread David Edelsohn
On Tue, Feb 18, 2014 at 5:08 PM, Michael Meissner meiss...@linux.vnet.ibm.com wrote: When I made my patches for PR target/60203 (allow use of ISA 2.07 direct move instructions for long double and _Decimal128), I was not aware that little endian TDmode has the double words in big endian order,

[PATCH][committed] two minor fixes in libcilkrts

2014-02-18 Thread Iyer, Balaji V
Hello Everyone, This patch will fix two minor issues in libcilkrts. First being that we default to ABI 0 and secondly, fix an issue to initialize the stack frame correctly. All the changes are in libcilkrts and does not cause any regression failures. Thanks, Balaji V. Iyer. diff --git

Re: [patch] Fix array overflow in gcc.dg/vect/no-vfa-vect-depend-2.c

2014-02-18 Thread Paul Pluzhnikov
Jakub, On Mon, Feb 10, 2014 at 12:09 AM, Jakub Jelinek ja...@redhat.com wrote: On Tue, Feb 04, 2014 at 04:59:14PM -0800, Paul Pluzhnikov wrote: gcc/testsuite/ChangeLog: 2014-02-04 Paul Pluzhnikov ppluzhni...@google.com * gcc.dg/vect/no-vfa-vect-depend-2.c (main1): Fix buffer

Re: [patch] Fix array overflow in gcc.dg/vect/no-vfa-vect-depend-2.c

2014-02-18 Thread Jakub Jelinek
On Tue, Feb 18, 2014 at 06:24:17PM -0800, Paul Pluzhnikov wrote: Jakub, On Mon, Feb 10, 2014 at 12:09 AM, Jakub Jelinek ja...@redhat.com wrote: On Tue, Feb 04, 2014 at 04:59:14PM -0800, Paul Pluzhnikov wrote: gcc/testsuite/ChangeLog: 2014-02-04 Paul Pluzhnikov ppluzhni...@google.com

cleaning up and c++ifying bitmaps

2014-02-18 Thread Trevor Saunders
Hi, I've been working on c++ifying bitmaps and while there make them a little faster. My current work is in the tbsaunde/bitmap git branch please look and give comments :) Some interesting differences -745 LOC averaged over 10 runs with a --enable-checking=release g++ on one ~334kloc .i

Fix ICE when call is optimized out during clone materialization

2014-02-18 Thread Jan Hubicka
Hi, this patch fixes ICE while building Qt 5 with LTO. When call is optimized out and removed by cgraph_update_edges_for_call_stmt_node, we must also eliminate inline clones, or the verifier will complain. Bootstrapped/regtested x86_64-linux, comitted. 2014-02-18 Jan Hubicka hubi...@ucw.cz

Re: Fix three issues in ipa-prop

2014-02-18 Thread Jan Hubicka
Hi, this is patch I ended up comitting. THere was one additional problem with ICE when param_type happens to be VOID pointer. * ipa-prop.h (ipa_ancestor_jf_data): Update ocmment. * ipa-prop.c (ipa_set_jf_known_type): Return early when not devirtualizing.

[patch] Shorten Windows path

2014-02-18 Thread Joey Ye
Max length of path on Windows is 255, which is easy to exceed in a complicated project. Ultimate solution may be complex but canonizing the path and skipping the ..s in path is helpful. Relative discussion in gcc-patches: http://gcc.gnu.org/ml/gcc-patches/2013-11/msg00582.html OK to trunk stage

Fix COMDAT_GROUP dissolving in ipa.c

2014-02-18 Thread Jan Hubicka
Hi, this is a problem I noticed in libreoffice. When disolving COMDAT group, we should turn WEAKs into normal symbols. Bootstrapped/regtested x86_64-linux, comited. * ipa.c (function_and_variable_visibility): Also clear WEAK flag when disolving COMDAT_GROUP. Index: ipa.c