[pph] Correct executable testing. Factor x1dynarray1. (issue4667050)

2011-06-29 Thread Lawrence Crowl
Fix dg-pph.exp to execute both normal and pph executable tests and to avoid false new/disappeared reports. Break x1dynarray1 into three levels of tests. Remove ICE failure in x1dynarray1. We now get bogus warnings, but we cannot seem to mark them with dg-bogus without also getting xfails. Inde

Re: Ping: C-family stack check for threads

2011-06-29 Thread Ye Joey
On Fri, Jun 24, 2011 at 11:51 PM, Thomas Klein wrote: > > Hi > > This is a ping of (http://gcc.gnu.org/ml/gcc-patches/2011-03/msg01226.html). > Repeating my request. > > I would like to have a stack check for threads with small amount of stack > space per thread. > (I'm using a ARM Cortex-M3 micr

[pph] Fixing string streaming functions and their comments (issue4654076)

2011-06-29 Thread Gabriel Charette
Some comments were wrong. In particular, the strings read from the stream are placed in a data table, and thus the strings returned DO NOT need to be freed by the caller, they belong to the stream who handles them itself. Also lto_output_string_with_length does handle NULL strings, removed the

Re: [PATCH 6/6] Fix PR47654: Compute LB and UB of a CLAST expression.

2011-06-29 Thread Tobias Grosser
On 06/29/2011 12:35 PM, Sebastian Pop wrote: 2011-06-29 Sebastian Pop PR tree-optimization/47654 * graphite-clast-to-gimple.c (gcc_type_for_value): Removed. (gcc_type_for_clast_term): Removed. (gcc_type_for_clast_red): Removed. (gcc_type_for_clast_bin): R

Re: [PATCH 5/6] Compute the type of the IV based only on the CLAST bounds.

2011-06-29 Thread Tobias Grosser
On 06/29/2011 12:35 PM, Sebastian Pop wrote: 2011-06-29 Sebastian Pop * graphite-clast-to-gimple.c (compute_bounds_for_level): Removed. (compute_type_for_level): Removed. (clast_get_body_of_loop): Removed. (gcc_type_for_iv_of_clast_loop): Removed. (graphi

Re: [PATCH 0/6] Fix PR47654

2011-06-29 Thread Tobias Grosser
On 06/29/2011 12:35 PM, Sebastian Pop wrote: Hi, the following patch set fixes PR47654: Correct typo. Correct computation of max. Fix PR47654: Loop blocking should strip-mine at least two loops. Those three look OK. Cheers Tobi

Re: [PATCH 4/6] Fix computation of precision.

2011-06-29 Thread Tobias Grosser
On 06/29/2011 12:35 PM, Sebastian Pop wrote: 2011-06-29 Sebastian Pop * graphite-clast-to-gimple.c (precision_for_value): Removed. (precision_for_interval): Removed. (gcc_type_for_interval): Use mpz_sizeinbase. -/* Return a type that could represent the integer value VAL

Re: [PATCH 04/12] vax: Emit prologue as rtl.

2011-06-29 Thread Richard Henderson
On 06/29/2011 04:01 PM, Steven Bosscher wrote: > Can you please also update http://gcc.gnu.org/backends.html? I think > VAX should have a 'g' after you commit this patch. Sure. > How many TARGET_ASM_FUNCTION_{PRO,EPI}LOGUE targets are left anyway? It's difficult to tell at a glance, because quit

Re: [PATCH 04/12] vax: Emit prologue as rtl.

2011-06-29 Thread Steven Bosscher
On Wed, Jun 29, 2011 at 11:49 PM, Richard Henderson wrote: > --- a/gcc/config/vax/vax.c > +++ b/gcc/config/vax/vax.c > @@ -70,9 +69,6 @@ static int vax_return_pops_args (tree, tree, int); >  #undef TARGET_ASM_ALIGNED_HI_OP >  #define TARGET_ASM_ALIGNED_HI_OP "\t.word\t" > > -#undef TARGET_ASM_FUNC

Re: [trans-mem] Beginning of refactoring

2011-06-29 Thread Richard Henderson
On 05/25/2011 02:10 PM, Torvald Riegel wrote: > Here's the beginning of a refactoring aimed at being able to merge more > TM algorithms later on. > > Patch 1: Just a straightfoward rename to make it clear that we're > dispatching on the level of ABI calls, not internals. Ok, I guess. I don't thi

Re: [testsuite, objc] Don't XFAIL objc.dg/torture/forward-1.m

2011-06-29 Thread Mike Stump
On Jun 29, 2011, at 1:37 AM, Iain Sandoe wrote: > On 28 Jun 2011, at 18:01, Iain Sandoe wrote: >> On 28 Jun 2011, at 17:47, Rainer Orth wrote: >>> objc.dg/torture/forward-1.m now seems to XPASS everywhere, creating an >>> annoying amount of testsuite noise. Dominique provided the following >>> pat

[PATCH] Add support on powerpc to change CASE_VALUES_THRESHOLD

2011-06-29 Thread Michael Meissner
On the powerpc, switch statements can be expensive, and we would like to be able to tune the threshold of when the compiler generates if statements vs. using a table jump operation (and different processors within the powerpc have different limits). This patch adds a powerpc tuning option to contr

Re: [Patch] Fix objc/48109

2011-06-29 Thread Mike Stump
On Jun 29, 2011, at 10:47 AM, Iain Sandoe wrote: > The bug arises because of the use, by the ObjC FE, of two old target macros > that emit efficient representations of class definitions and references. > Mike has already given this a 'seems reasonable' in the PR thread, however, I > need an appr

Re: [gcc patch] Re: C++ member function template id not matching linkage name (PR debug/49408)

2011-06-29 Thread Jason Merrill
On 06/29/2011 05:07 PM, Jan Kratochvil wrote: On Wed, 29 Jun 2011 22:56:26 +0200, Jason Merrill wrote: On 06/29/2011 04:00 PM, Jan Kratochvil wrote: On Mon, 27 Jun 2011 20:00:24 +0200, Jason Merrill wrote: # decltype/fn call test --format=gnu-v3 _Z4add3IidEDTclL_Z1gEfp_fp0_EET_T0_ -dec

Re: [PATCH] Fix empty .debug_abbrev handling (PR debug/49364)

2011-06-29 Thread Jason Merrill
OK. Jason

Re: C++ PATCH for c++/49216 (problems with new T[1]{})

2011-06-29 Thread Jason Merrill
As reported, this still wasn't working properly for an array of scalar type. We still need to handle {} in the case of iterating over all the elements. While I was poking at related code, I fixed a wrong-code bug with the ancient and permerrored new T[n](init) extension because it was easy.

[PATCH 03/12] dwarf2out: Add REG_CFA_FLUSH_QUEUE.

2011-06-29 Thread Richard Henderson
--- gcc/dwarf2out.c | 37 + gcc/final.c |4 +++- gcc/reg-notes.def | 11 +-- 3 files changed, 37 insertions(+), 15 deletions(-) diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index 6fad7e9..904 100644 --- a/gcc/dwarf2out.c +++ b/gcc/

[PATCH 04/12] vax: Emit prologue as rtl.

2011-06-29 Thread Richard Henderson
Not that there's much rtl to emit, since the CALL instruction interpreting the procedure entry mask does almost all the work. However, it means we're no longer emitting dwarf2 via the text-based entry points. --- gcc/config/vax/vax-protos.h |1 + gcc/config/vax/vax.c| 86

[PATCH 12/12] dwarf2out: Remove unused text-based unwind entry points.

2011-06-29 Thread Richard Henderson
The dwarf2out_cfi_label function is privatized, the dwarf2out_def_cfa function is merged into its last user. The others really are unused. --- gcc/dwarf2out.c | 65 ++- gcc/tree.h | 27 -- 2 files changed, 7 insertion

[PATCH 10/12] ia64: Remove TARGET_DWARF_HANDLE_FRAME_UNSPEC hook.

2011-06-29 Thread Richard Henderson
Use an empty REG_FRAME_RELATED_EXPR instead. --- gcc/config/ia64/ia64.c | 23 +-- 1 files changed, 9 insertions(+), 14 deletions(-) diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c index bdabe82..2ebb225 100644 --- a/gcc/config/ia64/ia64.c +++ b/gcc/config/ia64/i

[PATCH 11/12] i386: Always use TARGET_DEEP_BRANCH_PREDICTION.

2011-06-29 Thread Richard Henderson
While it could be possible to output_set_got such that we can individually annotate the instructions, it's simpler to simply admit that all processors currently being manufactured do want deep branch prediction. At which point all of the complication simply goes away. --- gcc/config/i386/i386.c |

[PATCH 05/12] arm: Use REG_CFA_REGISTER instead of UNSPEC_STACK_ALIGN.

2011-06-29 Thread Richard Henderson
From: Richard Henderson This requires a bit of extra preparation in arm_unwind_emit, in order to handle the change for ARM unwinding. --- gcc/config/arm/arm.c | 114 ++-- gcc/config/arm/arm.md |2 - 2 files changed, 62 insertions(+), 54 deletions

[PATCH 06/12] ia64: Issue REG_CFA_REGISTER for ar.pfs at alloc insn.

2011-06-29 Thread Richard Henderson
--- gcc/config/ia64/ia64.c |9 - 1 files changed, 8 insertions(+), 1 deletions(-) diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c index c06903d..0a6f2e6 100644 --- a/gcc/config/ia64/ia64.c +++ b/gcc/config/ia64/ia64.c @@ -3249,7 +3249,14 @@ ia64_expand_prologue (void)

[PATCH 07/12] ia64: Remove ia64_dwarf2out_def_steady_cfa.

2011-06-29 Thread Richard Henderson
This defines nothing that we can't deduce already, so remove it. --- gcc/config/ia64/ia64.c | 24 1 files changed, 0 insertions(+), 24 deletions(-) diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c index 0a6f2e6..bb3fc4d 100644 --- a/gcc/config/ia64/ia64.c ++

[PATCH 08/12] ia64: Use pc_rtx to save the return address.

2011-06-29 Thread Richard Henderson
When actually emitting dwarf2, this now produces proper results. When emitting ia64 unwind info, this removes a hard-coded assumption. --- gcc/config/ia64/ia64.c | 17 ++--- 1 files changed, 10 insertions(+), 7 deletions(-) diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.

[PATCH 09/12] ia64: Remove dead code in process_epilogue.

2011-06-29 Thread Richard Henderson
--- gcc/config/ia64/ia64.c | 35 ++- 1 files changed, 2 insertions(+), 33 deletions(-) diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c index b37919c..bdabe82 100644 --- a/gcc/config/ia64/ia64.c +++ b/gcc/config/ia64/ia64.c @@ -9620,29 +9620,6 @@ stat

[PATCH 02/12] dwarf2out: Handle pc_rtx as return column in REG_CFA_OFFSET too.

2011-06-29 Thread Richard Henderson
--- gcc/dwarf2out.c | 18 ++ 1 files changed, 14 insertions(+), 4 deletions(-) diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index 3ecdd94..6fad7e9 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -1982,6 +1982,7 @@ dwarf2out_frame_debug_cfa_offset (rtx set, const char *l

[PATCH 01/12] dwarf2out: Convert regs_saved_in_regs to VEC.

2011-06-29 Thread Richard Henderson
Also pull out value insertion into a subroutine. --- gcc/dwarf2out.c | 115 +++ 1 files changed, 65 insertions(+), 50 deletions(-) diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index 3d63d7b..3ecdd94 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwar

[PATCH 00/12] Eliminate the text-based dwarf2out interface

2011-06-29 Thread Richard Henderson
In preparation for the changes required to support shrink-wrapping, it makes things Much Easier if we no longer have to handle seeing new unwind states being introduced during pass_final, while emitting the actual assembly. Thus we want to convert everything that used the text-based interfaces to

[PATCH] Fix empty .debug_abbrev handling (PR debug/49364)

2011-06-29 Thread Jakub Jelinek
Hi! Mark has recently changed dwarf2out to not emit anything into .debug_abbrev section if there are no abbreviations, but as Rainer has reported, some vendor tools are upset about it. We were still emitting the .debug_abbrev section, just with zero size, in order to emit the .Ldebug_abbrev0 symb

[PATCH] Reintroduce repeat field for ctors (PR fortran/49540)

2011-06-29 Thread Jakub Jelinek
Hi! As discussed in the PR and can be seen on the first testcase, the removal of repeat field for ctors resulted in huge memory consumption of the fortran FE on some real-world testcases (the first testcase needs several GB of memory to compile). This patch reintroduces the repeat field and handl

Re: [trans-mem] Beginning of refactoring

2011-06-29 Thread Richard Henderson
On 06/29/2011 02:12 PM, Torvald Riegel wrote: > Patch contains more clean-up: the trycommit, rollback and > registerThrownObject functions in the ABI are unnecessary for how we > support exception handling. > > Ok for branch? > Looks good. r~

[PATCH] Sign extend before converting constants to GMP values.

2011-06-29 Thread Sebastian Pop
Hi, This patch fixes PR47653 by sign extending the double int constants before converting them to a GMP value. There still are some places where we should not sign extend the values converted: upper bounds of unsigned types should for example not be sign extended. The patch passed make -k check

Re: C++ PATCH for c++/49554 (bogus error with lambda in template)

2011-06-29 Thread Jason Merrill
While looking at this issue, I also noticed that we were substituting into DECL_INITIAL more than we need to. Tested x86_64-pc-linux-gnu, applying to trunk. commit 327bbebe3243b0423932862d3d12f92928853e9c Author: Jason Merrill Date: Wed Jun 29 14:21:17 2011 -0400 * pt.c (tsubst_decl) [V

C++ PATCH for c++/49003 (DR 1207, use of 'this' in trailing return type)

2011-06-29 Thread Jason Merrill
This patch adds support for use of 'this' (implicitly or explicitly) in the trailing-return-type of a member function. Tested x86_64-pc-linux-gnu, applying to trunk. commit 8154a9854f1d5ff3407af1707d112899eb39f013 Author: Jason Merrill Date: Wed Jun 29 15:19:46 2011 -0400 DR 1207 P

Re: [trans-mem] Beginning of refactoring

2011-06-29 Thread Torvald Riegel
Patch contains more clean-up: the trycommit, rollback and registerThrownObject functions in the ABI are unnecessary for how we support exception handling. Ok for branch? commit 79ae722913f40715882b4c7b3fb798306f1ad3ae Author: Torvald Riegel Date: Wed Jun 29 23:05:28 2011 +0200 Removed unn

Re: [gcc patch] Re: C++ member function template id not matching linkage name (PR debug/49408)

2011-06-29 Thread Jan Kratochvil
On Wed, 29 Jun 2011 22:56:26 +0200, Jason Merrill wrote: > On 06/29/2011 04:00 PM, Jan Kratochvil wrote: > > On Mon, 27 Jun 2011 20:00:24 +0200, Jason Merrill wrote: > > # decltype/fn call test > > --format=gnu-v3 > > _Z4add3IidEDTclL_Z1gEfp_fp0_EET_T0_ > > -decltype (g({parm#1}, {parm#2})) a

Re: [gcc patch] Re: C++ member function template id not matching linkage name (PR debug/49408)

2011-06-29 Thread Jason Merrill
On 06/29/2011 04:00 PM, Jan Kratochvil wrote: > On Mon, 27 Jun 2011 20:00:24 +0200, Jason Merrill wrote: >> They should be supressed whenever the function appears in an >> expression context, either as a pointer to member function (i.e. the >> operand of '&') > > Done, therefore it is no longer re

[pph] Fix ICE during function expansion (issue4662067)

2011-06-29 Thread Diego Novillo
This patch fixes a segmentation fault during function expansion by delaying all expansions to happen after the PPH file has been read. The patch fixes one test (x1template.cc), but it exposes a common ICE in resume_scope in other two tests. Lawrence, this is the ICE that you are now looking at, I

[pph] Allow DECL_LANG_SPECIFIC to be shared (issue4667049)

2011-06-29 Thread Diego Novillo
This is a patch that Lawrence and I were working on yesterday that I need for my next patch. We were not expecting DECL_LANG_SPECIFIC to be shared, but in fact there are several occasions (thunks, aliases) where it is shared. By itself, this does not fix any tests, but it fixes a problem exposed

[pph] Fix ICE during gimplification (issue4636074)

2011-06-29 Thread Diego Novillo
This patch fixes an ICE during gimplification. When reading a STATEMENT_LIST, we were calling append_to_statement_list, but at that point some elements in the list do not have side-effects (the final VAR_DECL in a stmt expression), so we were dropping it out. Fixed by force-adding every stateteme

Re: cleanup patch

2011-06-29 Thread François Dumont
Attached patch applied 2011-06-29 François Dumont * include/debug/set.h, unordered_map, multiset.h, forward_list, unordered_set, vector, deque, string, list, multimap.h: Remove base class default constructor calls. * include/debug/map.h: Likewise and cleanup sev

Re: [gcc patch] Re: C++ member function template id not matching linkage name (PR debug/49408)

2011-06-29 Thread Jan Kratochvil
: char g (int x, double y) { return 0; } template decltype (g((T) 0, (U) 0)) add3 (T x, U y) { return 'z'; } // error: ‘add3’ declared as function returning a function // decltype (g) add3 (T x, U y) { return 'z'; } int main () { add3 (1, 2.0); } g++ -Wall -g -std=c++0x g++ (GC

Re: [PATCH, MELT] correct meltgc_read_from_val without location

2011-06-29 Thread Basile Starynkevitch
On Wed, 29 Jun 2011 20:32:08 +0200 Pierre wrote: > Hello, > > here is an improvment to > http://gcc.gnu.org/ml/gcc-patches/2011-06/msg01888.html. > Thanks. I applied it with minor changes on the MELT branch. {spelling mistakes & indentation mostly}. Perhaps a future improvement might be to s

Re: [PATCH, MELT] correct meltgc_read_from_val without location

2011-06-29 Thread Pierre
Hello, here is an improvment to http://gcc.gnu.org/ml/gcc-patches/2011-06/msg01888.html. The function meltgc_read_from_val (in melt-runtime.c) takes two arguments, a string value and a second one which is a location. In the comments, it is written that we can pass a NULL pointer if we have n

Re: [Design notes, RFC] Address-lowering prototype design (PR46556)

2011-06-29 Thread William J. Schmidt
On Tue, 2011-06-14 at 15:39 +0200, Richard Guenther wrote: > On Fri, Jun 10, 2011 at 5:11 PM, William J. Schmidt > wrote: > > On Tue, 2011-06-07 at 16:49 +0200, Richard Guenther wrote: > >> On Tue, Jun 7, 2011 at 4:14 PM, William J. Schmidt > >> wrote: > > > > > > > >> >> > Loss of aliasing info

Re: [testsuite] skip ARM tests if no thumb2 support

2011-06-29 Thread Janis Johnson
On 06/29/2011 06:55 AM, Richard Earnshaw wrote: > 3. Add a new dg directive (perhaps dg-ignore-multilib) that instructs > the framework to ignore the multilib options entirely (only supported > for compile/assembly tests). > > There are a lot of target-specific tests that are not really testing

[Patch] Fix objc/48109

2011-06-29 Thread Iain Sandoe
The bug arises because of the use, by the ObjC FE, of two old target macros that emit efficient representations of class definitions and references. This 'works fine' (however wrong it might be conceptually), until LTO is engaged, whereupon the definitions vanish without trace (since no c

Re: [testsuite, ada] Cope with HP-UX sh in run_acats (PR ada/49511)

2011-06-29 Thread Arnaud Charlet
> As described in the PR, HP-UX /bin/sh type -p ignores the -p, so we need > to extract the last field of the output just as for regular type. The > following patch does this, tested by Dave and bootstrapped on > sparc-sun-solaris2.11. > > Ok for mainline, 4.6 and 4.5 branches? OK

[PATCH 4/6] Fix computation of precision.

2011-06-29 Thread Sebastian Pop
2011-06-29 Sebastian Pop * graphite-clast-to-gimple.c (precision_for_value): Removed. (precision_for_interval): Removed. (gcc_type_for_interval): Use mpz_sizeinbase. --- gcc/ChangeLog |6 +++ gcc/graphite-clast-to-gimple.c | 77 +--

Re: [cxx-mem-model] __sync_mem_load

2011-06-29 Thread Richard Henderson
On 06/23/2011 03:50 PM, Andrew MacLeod wrote: > + (define_expand "sync_mem_load" > + [(match_operand:SWI 0 "register_operand" "") ;; output > +(match_operand:SWI 1 "memory_operand" "");; memory > +(match_operand:SI 2 "const_int_operand" "")];; memory model >

[PATCH 6/6] Fix PR47654: Compute LB and UB of a CLAST expression.

2011-06-29 Thread Sebastian Pop
2011-06-29 Sebastian Pop PR tree-optimization/47654 * graphite-clast-to-gimple.c (gcc_type_for_value): Removed. (gcc_type_for_clast_term): Removed. (gcc_type_for_clast_red): Removed. (gcc_type_for_clast_bin): Removed. (lb_ub_for_expr_name): New.

[PATCH 3/6] Fix PR47654: Loop blocking should strip-mine at least two loops.

2011-06-29 Thread Sebastian Pop
2011-06-29 Sebastian Pop PR tree-optimization/47654 * graphite-blocking.c (pbb_strip_mine_time_depth): Do not return bool. (lst_do_strip_mine_loop): Return an int. (lst_do_strip_mine): Same. (scop_do_strip_mine): Same. (scop_do_block): Loop blocki

[PATCH 5/6] Compute the type of the IV based only on the CLAST bounds.

2011-06-29 Thread Sebastian Pop
2011-06-29 Sebastian Pop * graphite-clast-to-gimple.c (compute_bounds_for_level): Removed. (compute_type_for_level): Removed. (clast_get_body_of_loop): Removed. (gcc_type_for_iv_of_clast_loop): Removed. (graphite_create_new_loop): Use max_precision_type.

[PATCH 0/6] Fix PR47654

2011-06-29 Thread Sebastian Pop
Hi, the following patch set fixes PR47654: Correct typo. Correct computation of max. Fix PR47654: Loop blocking should strip-mine at least two loops. Fix computation of precision. Compute the type of the IV based only on the CLAST bounds. Fix PR47654: Compute LB and UB of a CLAST expre

[PATCH 2/6] Correct computation of max.

2011-06-29 Thread Sebastian Pop
2011-06-29 Sebastian Pop * graphite-ppl.h (value_max): Correct computation of max. --- gcc/ChangeLog |4 gcc/graphite-ppl.h |3 ++- 2 files changed, 6 insertions(+), 1 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8be5adb..b0e3173 100644 --- a/gcc/Cha

[PATCH 1/6] Correct typo.

2011-06-29 Thread Sebastian Pop
2011-06-29 Sebastian Pop * graphite-clast-to-gimple.c (clast_name_to_index): Add missing space. --- gcc/ChangeLog |4 gcc/graphite-clast-to-gimple.c |2 +- 2 files changed, 5 insertions(+), 1 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e

C++ PATCH for c++/49554 (bogus error with lambda in template)

2011-06-29 Thread Jason Merrill
The failure in this testcase was happening because we were trying to evaluate the capture decltype again when instantiating the lambda operator(), but it only works when we're still in the enclosing function context. Fixed by basically waiting to copy the type over at instantiation time rather

C++ PATCH for c++/49520 (bogus error with using in constexpr)

2011-06-29 Thread Jason Merrill
A CLEANUP_POINT_EXPR wraps each statement, so we need to strip it at a lower level. Tested x86_64-pc-linux-gnu, applied to trunk. commit 505b4baa3619375d81b409f9ff2bde95cce0f50a Author: Jason Merrill Date: Wed Jun 29 12:43:19 2011 -0400 PR c++/49520 * semantics.c (constexpr_fn_retv

Re: [cxx-mem-model] __sync_mem_load

2011-06-29 Thread Richard Henderson
On 06/23/2011 03:50 PM, Andrew MacLeod wrote: > * doc/extend.texi (__sync_mem_load): Document. > * c-family/c-common.c (resolve_overloaded_builtin): Add > BUILT_IN_SYNC_MEM_LOAD_N. > * optabs.c (expand_sync_mem_load): New. > * optabs.h (enum direct_optab_index): Add D

Re: PATCH [2/n]: Prepare x32: Convert pointer to TLS symbol if needed

2011-06-29 Thread H.J. Lu
On Wed, Jun 29, 2011 at 7:06 AM, H.J. Lu wrote: > On Wed, Jun 29, 2011 at 1:45 AM, Richard Sandiford > wrote: >> "H.J. Lu" writes: >>> @@ -706,7 +706,13 @@ precompute_register_parameters (int num_actuals, >>> struct arg_data *args, >>>          pseudo now.  TLS symbols sometimes need a call to

[commit] Fix -Werror build break (Re: PATCH [10/n]: Prepare x32: PR rtl-optimization/49114)

2011-06-29 Thread Ulrich Weigand
> H.J. Lu wrote: > > >>* reload.c (struct replacement): Remove SUBREG_LOC member. > > >>(push_reload): Do not set it. > > >>(push_replacement): Likewise. > > >>(subst_reload): Remove dead code. > > >>(copy_replacements): Remove assertion. > > >>(copy_

Re: Backport patches that are correctness or performance bug fixes for latest AMD/Intel hardware.

2011-06-29 Thread Jakub Jelinek
On Wed, Jun 29, 2011 at 11:03:55AM -0500, harsha.jaga...@amd.com wrote: > Is it ok to commit backported patch from trunk below to gcc 4.6 as long as > bootstrap and tests pass (ongoing)? This is one of the patches that is > significant enough a bug for recent AMD and Intel hardware. Yeah, this is

Re: PATCH [5/n]: Prepare x32: PR middle-end/48016: Inconsistency in non-local goto save area

2011-06-29 Thread Michael Matz
Hi, On Wed, 29 Jun 2011, H.J. Lu wrote: > > diff --git a/gcc/function.c b/gcc/function.c > > index 81c4d39..131bc09 100644 > > --- a/gcc/function.c > > +++ b/gcc/function.c > > @@ -4780,7 +4780,7 @@ expand_function_start (tree subr) > >                       cfun->nonlocal_goto_save_area, > >    

Re: [PATCH] Split out SCEV dumping

2011-06-29 Thread Sebastian Pop
On Wed, Jun 29, 2011 at 09:27, Richard Guenther wrote: > > I'm finally annoyed enough about this to do the patch splitting out > SCEV details dumping to a TDF_SCEV (-scev) flag. > > Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. Looks very good. Thanks for this cleanup.

Re: [testsuite] skip ARM tests if no thumb2 support

2011-06-29 Thread Richard Sandiford
Janis Johnson writes: > On 06/29/2011 06:55 AM, Richard Earnshaw wrote: >> I'd posit a third option: >> >> 3. Add a new dg directive (perhaps dg-ignore-multilib) that instructs >> the framework to ignore the multilib options entirely (only supported >> for compile/assembly tests). >> >> There a

Re: [PATCH, PR 49089] Don't split AVX256 unaligned loads by default on bdver1 and generic

2011-06-29 Thread Eric Botcazou
> Thanks, Note that there is no "i386" component in Bugzilla, only a "target" so this should have been PR target/49089. The end result is that there are no xrefs in the PR, which is still open btw. So please add the xrefs to the commits in the PR manually and close it if you are done with it.

Backport patches that are correctness or performance bug fixes for latest AMD/Intel hardware.

2011-06-29 Thread harsha.jagasia
Is it ok to commit backported patch from trunk below to gcc 4.6 as long as bootstrap and tests pass (ongoing)? This is one of the patches that is significant enough a bug for recent AMD and Intel hardware. 2011-06-29 Harsha Jagasia Backport from mainline 2011-05-31 Alexa

Re: [Patch, AVR]: Cleanup avr.c a bit

2011-06-29 Thread Andreas Schwab
Georg-Johann Lay writes: > @@ -1257,17 +1129,19 @@ print_operand_address (FILE *file, rtx a > rtx x = addr; > if (GET_CODE (x) == CONST) > x = XEXP (x, 0); > - if (GET_CODE (x) == PLUS && GET_CODE (XEXP (x,1)) == CONST_INT) > + if (GET_CODE (x) == PLUS > +

[Patch, AVR]: Cleanup avr.c a bit

2011-06-29 Thread Georg-Johann Lay
This patch is mostly mechanical: Add some comment, break long lines, use CONST_INT_P instead of CONST_INT == GET_CODE(). The targetm initializer is moved down in the file similar to m32c, s390, alpha, etc. back ends. That way a hook can be defined on the fly: static foo_t foo_hook (foo_args) {

Re: [testsuite] skip ARM tests if no thumb2 support

2011-06-29 Thread Janis Johnson
On 06/29/2011 06:55 AM, Richard Earnshaw wrote: > On 15/06/11 17:38, Janis Johnson wrote: >> On 06/15/2011 01:13 AM, Ramana Radhakrishnan wrote: >>> On 14 June 2011 21:35, Janis Johnson wrote: These tests apparently require thumb2 support (I don't yet know much about ARM). OK for trunk,

Re: [PATCH] Un-obsolete Interix

2011-06-29 Thread Douglas Rupp
An update to the IA-32/x86-64 section seems the right place. I confess to being ignorant about how to update this html page. Please advise. --Doug On 12 Jun 2011, Gerald Pfeifer wrote: And I assume you'll be updating the release notes at http://gcc.gnu.org/gcc-4.7/changes.html . ;-)

Re: PATCH [5/n]: Prepare x32: PR middle-end/48016: Inconsistency in non-local goto save area

2011-06-29 Thread H.J. Lu
Ping. On Sat, Jun 25, 2011 at 9:06 AM, H.J. Lu wrote: > On Thu, Jun 16, 2011 at 10:18 AM, H.J. Lu wrote: >> On Thu, Jun 16, 2011 at 12:56 AM, Richard Guenther >> wrote: >>> On Wed, Jun 15, 2011 at 9:55 PM, H.J. Lu wrote: On Wed, Jun 15, 2011 at 8:16 AM, Michael Matz wrote: > Hi,

C++ PATCHes for c++/45923 (constexpr diagnostics)

2011-06-29 Thread Jason Merrill
In C++0x when an expression fails to satisfy the requirements of a constant expression it can be hard to figure out why; previously the compiler would just say that a particular class or function was not literal or constexpr without explaining why. This patch improves diagnostics by having the

[PATCH] Split out SCEV dumping

2011-06-29 Thread Richard Guenther
I'm finally annoyed enough about this to do the patch splitting out SCEV details dumping to a TDF_SCEV (-scev) flag. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. Richard. 2011-06-29 Richard Guenther * doc/invoke.texi: Document -scev dump modifier. *

C++ PATCHes to list-value-initialization

2011-06-29 Thread Jason Merrill
The first patch implements the resolution of DR 990, which clarifies that {} means value-initialization if the type has a default constructor. The second patch fixes a bug in the standard I noticed while looking at related issues: it says that if a class has any user-provided constructor, we j

Re: PATCH [2/n]: Prepare x32: Convert pointer to TLS symbol if needed

2011-06-29 Thread H.J. Lu
On Wed, Jun 29, 2011 at 1:45 AM, Richard Sandiford wrote: > "H.J. Lu" writes: >> @@ -706,7 +706,13 @@ precompute_register_parameters (int num_actuals, struct >> arg_data *args, >>          pseudo now.  TLS symbols sometimes need a call to resolve.  */ >>       if (CONSTANT_P (args[i].value) >>  

Re: [testsuite] skip ARM tests if no thumb2 support

2011-06-29 Thread Richard Earnshaw
On 15/06/11 17:38, Janis Johnson wrote: > On 06/15/2011 01:13 AM, Ramana Radhakrishnan wrote: >> On 14 June 2011 21:35, Janis Johnson wrote: >>> These tests apparently require thumb2 support (I don't yet know much >>> about ARM). OK for trunk, and later 4.6? >> >> OK - The -march=armv7-a is redun

Re: [testsuite, libffi] XFAIL libffi.call/cls_{,long}double_va.c on IRIX 6.5 (PR libffi/46660)

2011-06-29 Thread Rainer Orth
David Gilbert writes: > On 29 June 2011 14:43, Rainer Orth wrote: >> -/* { dg-output "PR libffi/46660" { xfail mips-sgi-irix6* } } */ >> +/* { dg-output "" { xfail mips-sgi-irix6* } } PR libffi/46660 */ > > Do you fancy adding the appropriate MIPS fix on top of the libffi varargs > patch > I po

Re: [testsuite, libffi] XFAIL libffi.call/cls_{,long}double_va.c on IRIX 6.5 (PR libffi/46660)

2011-06-29 Thread David Gilbert
On 29 June 2011 14:43, Rainer Orth wrote: > -/* { dg-output "PR libffi/46660" { xfail mips-sgi-irix6* } } */ > +/* { dg-output "" { xfail mips-sgi-irix6* } } PR libffi/46660 */ Do you fancy adding the appropriate MIPS fix on top of the libffi varargs patch I posted a few months back - then it cou

Re: [PATCH, ARM] [2/3] iWMMXt intrinsics testsuite

2011-06-29 Thread Richard Earnshaw
On 29/06/11 09:50, Xinyu Qi wrote: > Hi, > > This patch adds some simple iWMMXt intrinsic test cases. > > gcc.target/arm/iwmmxt/i_shift_error.c: New. > gcc.target/arm/iwmmxt/iwmmxt.exp: New. > gcc.target/arm/iwmmxt/i_wshufh_error.c: New. > gcc.target/arm/iwmmxt/i_merge_si64_error.c: New. > gcc.ta

Re: [testsuite, libffi] XFAIL libffi.call/cls_{,long}double_va.c on IRIX 6.5 (PR libffi/46660)

2011-06-29 Thread Rainer Orth
"H.J. Lu" writes: >> Index: libffi/testsuite/libffi.call/cls_double_va.c >> === >> --- libffi/testsuite/libffi.call/cls_double_va.c        (revision 175618) >> +++ libffi/testsuite/libffi.call/cls_double_va.c        (working copy) >>

Re: [testsuite, libffi] XFAIL libffi.call/cls_{,long}double_va.c on IRIX 6.5 (PR libffi/46660)

2011-06-29 Thread H.J. Lu
On Wed, Jun 29, 2011 at 5:52 AM, Rainer Orth wrote: > Richard Guenther writes: > >> The tests now fail on x86_64-linux and i?86-linux like >> >> FAIL: libffi.call/cls_double_va.c -O0 -W -Wall output pattern test, is 7.0 >> FAIL: libffi.call/cls_longdouble_va.c -O0 -W -Wall output pattern test, is

Re: [ARM] fix C++ EH interoperability

2011-06-29 Thread Richard Earnshaw
On 23/05/11 16:52, Nathan Sidwell wrote: > This patch fixes an interoperability issue with code generated by ARM's > EABI compiler. > > Unlike the generic C++ ABI, which always catches pointers by value, > ARM's ABI only catches pointers by value when there's the possibility of > derived->base con

RE: Ping #1: [Patch, AVR]: Fix PR34734

2011-06-29 Thread Weddington, Eric
> -Original Message- > From: Georg-Johann Lay [mailto:a...@gjlay.de] > Sent: Wednesday, June 29, 2011 5:26 AM > To: Denis Chertykov > Cc: gcc-patches@gcc.gnu.org; Weddington, Eric; Anatoly Sokolov > Subject: Re: Ping #1: [Patch, AVR]: Fix PR34734 > > > > > You can backport it if you want.

Re: [testsuite] ARM wmul tests: require arm_dsp_multiply

2011-06-29 Thread Richard Earnshaw
On 23/06/11 22:38, Janis Johnson wrote: > Tests wmul-[1234].c and mla-2.c in gcc.target/arm require support that > the arm backend identifies as TARGET_DSP_MULTIPLY. The tests all > specify a -march option with that support, but it is overridden by > multilib flags. > > This patch adds a new effe

Re: [ARM] Deprecate -mwords-little-endian

2011-06-29 Thread Richard Earnshaw
On 29/06/11 12:28, Richard Sandiford wrote: > ARM has an option called -mwords-little-endian that provides big-endian > compatibility with pre-2.8 compilers. When I asked Richard about it, > he seemed to think it had outlived its usefulness, so this patch > deprecates it. We can then remove it on

Re: [patch tree-optimization]: Do bitwise operator optimizations for X op !X patterns

2011-06-29 Thread Kai Tietz
- Original Message - From: "Kai Tietz" To: "Richard Guenther" Cc: gcc-patches@gcc.gnu.org Sent: Wednesday, June 29, 2011 1:33:30 PM Subject: Re: [patch tree-optimization]: Do bitwise operator optimizations for X op !X patterns - Original Message - From: "Richard Guenther" To: "

Re: [testsuite, libffi] XFAIL libffi.call/cls_{,long}double_va.c on IRIX 6.5 (PR libffi/46660)

2011-06-29 Thread Rainer Orth
Richard Guenther writes: > The tests now fail on x86_64-linux and i?86-linux like > > FAIL: libffi.call/cls_double_va.c -O0 -W -Wall output pattern test, is 7.0 > FAIL: libffi.call/cls_longdouble_va.c -O0 -W -Wall output pattern test, is 7.0 > FAIL: libffi.call/cls_double_va.c -O2 output pattern

Re: [PATCH, SRA] Total scalarization and padding

2011-06-29 Thread Richard Guenther
On Tue, 28 Jun 2011, Martin Jambor wrote: > Hi, > > On Tue, Jun 28, 2011 at 03:01:17PM +0200, Richard Guenther wrote: > > On Tue, Jun 28, 2011 at 2:50 PM, Martin Jambor wrote: > > > Hi, > > > > > > at the moment SRA can get confused by alignment padding and think that > > > it actually contains

Re: [testsuite, libffi] XFAIL libffi.call/cls_{,long}double_va.c on IRIX 6.5 (PR libffi/46660)

2011-06-29 Thread Richard Guenther
On Wed, Jun 29, 2011 at 10:26 AM, Rainer Orth wrote: > A fresh look at the remaining two libffi testsuite failures on IRIX 6.5 > revealed why they cannot currently work: > > FAIL: libffi.call/cls_double_va.c -O0 -W -Wall output pattern test, is 0.0 > FAIL: libffi.call/cls_longdouble_va.c -O0 -W -W

Re: PATCH [10/n]: Prepare x32: PR rtl-optimization/49114: Reload failed to handle (set reg:X (plus:X (subreg:X (reg:Y) 0) (const

2011-06-29 Thread Ulrich Weigand
H.J. Lu wrote: > >>* reload.c (struct replacement): Remove SUBREG_LOC member. > >>(push_reload): Do not set it. > >>(push_replacement): Likewise. > >>(subst_reload): Remove dead code. > >>(copy_replacements): Remove assertion. > >>(copy_replacements_1

Re: [PATCH] Handle vectorization of invariant loads (PR46787)

2011-06-29 Thread Ira Rosen
Richard Guenther wrote on 29/06/2011 02:19:40 PM: > > The following patch makes us handle invariant loads during vectorization. > Dependence analysis currently isn't clever enough to disambiguate them > thus we insert versioning-for-alias checks. For the testcase hoisting > the load is still a

Re: [patch tree-optimization]: Do bitwise operator optimizations for X op !X patterns

2011-06-29 Thread Kai Tietz
- Original Message - From: "Richard Guenther" To: "Kai Tietz" Cc: gcc-patches@gcc.gnu.org Sent: Wednesday, June 29, 2011 12:14:10 PM Subject: Re: [patch tree-optimization]: Do bitwise operator optimizations for X op !X patterns On Tue, Jun 28, 2011 at 5:05 PM, Kai Tietz wrote: > Hello,

Re: [build] Move unwinder to toplevel libgcc

2011-06-29 Thread Rainer Orth
Paolo Bonzini writes: > I think Rainer missed the existence of libgcc_tm_file. :) I didn't, but it lives in gcc/config.gcc, which is contrary to the move from gcc to libgcc. Rainer -- - Rainer Orth, Center for

Re: [build] Move unwinder to toplevel libgcc

2011-06-29 Thread Rainer Orth
"Joseph S. Myers" writes: > I interpreted Rainer's comment as meaning that a > libgcc/config/mips/mips-lib.h (or similar) file would need to be created > and inserted in the right place in libgcc_tm_file for the large number of > targets presently putting mips.h in tm_file. Indeed, that's why

Re: Ping #1: [Patch, AVR]: Fix PR34734

2011-06-29 Thread Georg-Johann Lay
Denis Chertykov wrote: > 2011/6/29 Georg-Johann Lay : >> Denis Chertykov wrote: >>> 2011/6/28 Georg-Johann Lay : http://gcc.gnu.org/ml/gcc-patches/2011-06/msg01462.html Georg-Johann Lay wrote: > PR34734 produces annoying, false warnings if __attribute__((progmem)) > is used i

Re: [build] Move unwinder to toplevel libgcc

2011-06-29 Thread Paolo Bonzini
On 06/29/2011 12:41 PM, Joseph S. Myers wrote: On Wed, 29 Jun 2011, Paolo Bonzini wrote: On 06/20/2011 02:24 PM, Rainer Orth wrote: * The only unwinder-related macro I haven't moved is LIBGCC2_UNWIND_ATTRIBUTE. It is only defined gcc/config/mips/mips.h. I suppose we would need a libgc

[ARM] Deprecate -mwords-little-endian

2011-06-29 Thread Richard Sandiford
ARM has an option called -mwords-little-endian that provides big-endian compatibility with pre-2.8 compilers. When I asked Richard about it, he seemed to think it had outlived its usefulness, so this patch deprecates it. We can then remove it once 4.7 is out. Tested on arm-linux-gnueabi. OK to

[PATCH] Handle vectorization of invariant loads (PR46787)

2011-06-29 Thread Richard Guenther
The following patch makes us handle invariant loads during vectorization. Dependence analysis currently isn't clever enough to disambiguate them thus we insert versioning-for-alias checks. For the testcase hoisting the load is still always possible though, and for a read-after-write dependence it

  1   2   >