RFA: Remove alias usage from libgcc/sync.c

2013-10-11 Thread Richard Sandiford
This is a follow-up to: http://gcc.gnu.org/ml/gcc/2013-10/msg00075.html The outcome on IRC was that __asm ought to behave like aliases eventually, so we should abandom the renaming-in-C thing. One way would be to code the functions directly as asm files, or use inline asm, but it seems a

RE: [PATCH] Fix PR58682

2013-10-11 Thread Paulo Matos
-Original Message- From: Kyrill Tkachov [mailto:kyrylo.tkac...@arm.com] Sent: 10 October 2013 17:15 To: Paulo Matos Cc: gcc-patches@gcc.gnu.org Subject: Re: [PATCH] Fix PR58682 Hi Paul, On 10/10/13 17:10, Paulo Matos wrote: - inline_call (edge, true, new_indirect_edges,

Re: gimplify.c fix for rs6000 and mips

2013-10-11 Thread Richard Biener
On Thu, Oct 10, 2013 at 7:12 PM, Andrew MacLeod amacl...@redhat.com wrote: On 10/10/2013 10:35 AM, Richard Biener wrote: On Thu, Oct 10, 2013 at 4:30 PM, Richard Biener richard.guent...@gmail.com wrote: On Thu, Oct 10, 2013 at 3:10 PM, Andrew MacLeod amacl...@redhat.com wrote: More fun

Re: [PATCH] rewrite stack vectors

2013-10-11 Thread Richard Biener
On Thu, Oct 10, 2013 at 8:07 PM, tsaund...@mozilla.com wrote: From: Trevor Saunders tsaund...@mozilla.com Hi, This makes the implementation of stack vectors simpler and easier to use. This

Re: [patch] omp-low.h

2013-10-11 Thread Richard Biener
On Fri, Oct 11, 2013 at 5:31 AM, Andrew MacLeod amacl...@redhat.com wrote: Missed a bit in tree-flow.h.. I mistakenly assumed omp_region belonged there :-P Anyway by moving struct omp_region into omp_low.h, along with the prototypes from tree-flow.h, gimple.h and tree.h. Everything works

Re: [patch] omp-low.h

2013-10-11 Thread Jakub Jelinek
On Fri, Oct 11, 2013 at 10:12:17AM +0200, Richard Biener wrote: I can spot the end of a comment containing OpenMP Region Tree that you didn't move - probably an oversight. Otherwise ok. Please wait for the gomp4 merge (which I'm going to commit today). Jakub

Re: RFA: Remove alias usage from libgcc/sync.c

2013-10-11 Thread Richard Biener
On Fri, Oct 11, 2013 at 9:29 AM, Richard Sandiford rdsandif...@googlemail.com wrote: This is a follow-up to: http://gcc.gnu.org/ml/gcc/2013-10/msg00075.html The outcome on IRC was that __asm ought to behave like aliases eventually, so we should abandom the renaming-in-C thing. One way

Re: RFA: Remove alias usage from libgcc/sync.c

2013-10-11 Thread Jakub Jelinek
On Fri, Oct 11, 2013 at 10:17:41AM +0200, Richard Biener wrote: asm(.alias __sync_synchronize sync_synchronize); It is .set, but not everywhere. /* The MIPS assembler has different syntax for .set. We set it to .dummy to trap any errors. */ #undef SET_ASM_OP #define SET_ASM_OP \t.dummy\t But

Re: [C++ Patch] PR 31671

2013-10-11 Thread Paolo Carlini
Hi, On 10/11/2013 05:55 AM, Jason Merrill wrote: On 10/10/2013 03:31 PM, Paolo Carlini wrote: On 10/10/2013 08:26 PM, Jason Merrill wrote: On 10/10/2013 08:33 AM, Paolo Carlini wrote: + expr_type = TREE_TYPE (expr) = cp_build_qualified_type +(TREE_TYPE (expr), cp_type_quals

Re: [SKETCH] Refactor implicit function template implementation and fix 58534, 58536, 58548, 58549 and 58637.

2013-10-11 Thread Adam Butcher
On 2013-10-11 3:26, Jason Merrill wrote: Can we put this in cp_parser, invert the sense of the flag, and only set it during cp_parser_parameter_declaration_clause? Done. But it still needs a flag to disable in the case of explicit template specialization. Can't you just check

Re: RFA: Remove alias usage from libgcc/sync.c

2013-10-11 Thread Richard Sandiford
Jakub Jelinek ja...@redhat.com writes: On Fri, Oct 11, 2013 at 10:17:41AM +0200, Richard Biener wrote: asm(.alias __sync_synchronize sync_synchronize); It is .set, but not everywhere. /* The MIPS assembler has different syntax for .set. We set it to .dummy to trap any errors. */ #undef

Re: RFA: Remove alias usage from libgcc/sync.c

2013-10-11 Thread Richard Biener
On Fri, Oct 11, 2013 at 11:43 AM, Richard Sandiford rdsandif...@googlemail.com wrote: Jakub Jelinek ja...@redhat.com writes: On Fri, Oct 11, 2013 at 10:17:41AM +0200, Richard Biener wrote: asm(.alias __sync_synchronize sync_synchronize); It is .set, but not everywhere. /* The MIPS assembler

Re: [0/6] Merge of gomp-4_0-branch to trunk

2013-10-11 Thread Jakub Jelinek
On Tue, Oct 08, 2013 at 09:50:55PM +0200, Jakub Jelinek wrote: I'd like to merge (most of) gomp-4_0-branch to trunk. I've incorporated the feedback as r203339, r203391 and r203392 and committed the whole merge including those 3 commits to trunk as r203408. I've merged then trunk up to r203408

Re: [C++ Patch] PR 58633

2013-10-11 Thread Paolo Carlini
Hi, On 10/10/2013 08:48 PM, Jason Merrill wrote: I think that committing was important for two primary reasons: 1. We should not have irreversible side-effects while in a tentative state. For example, we shouldn't create a permanent entry in the symbol table, or issue an error

Re: RFA: Remove alias usage from libgcc/sync.c

2013-10-11 Thread Richard Sandiford
Richard Biener richard.guent...@gmail.com writes: On Fri, Oct 11, 2013 at 11:43 AM, Richard Sandiford rdsandif...@googlemail.com wrote: Jakub Jelinek ja...@redhat.com writes: On Fri, Oct 11, 2013 at 10:17:41AM +0200, Richard Biener wrote: asm(.alias __sync_synchronize sync_synchronize); It

Re: RFA: Remove alias usage from libgcc/sync.c

2013-10-11 Thread Richard Biener
On Fri, Oct 11, 2013 at 12:48 PM, Richard Sandiford rdsandif...@googlemail.com wrote: Richard Biener richard.guent...@gmail.com writes: On Fri, Oct 11, 2013 at 11:43 AM, Richard Sandiford rdsandif...@googlemail.com wrote: Jakub Jelinek ja...@redhat.com writes: On Fri, Oct 11, 2013 at

[PATCH] Mark overflowed constants in dumps, allow a_2(D)(ab)

2013-10-11 Thread Richard Biener
This adjusts dumping to show differences in TREE_OVERFLOW on INTEGER_CSTs in the IL (to make the issue causing VRP differences visible) and to also dump whether an abnormal SSA name is a default def. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2013-10-11 Richard

Re: [PATCH, rs6000] Fix variable permute control vectors for little endian

2013-10-11 Thread David Edelsohn
On Wed, Oct 9, 2013 at 7:11 PM, Bill Schmidt wschm...@linux.vnet.ibm.com wrote: Hi, This is a follow-up to the recent patch that fixed constant permute control vectors for little endian. When the control vector is constant, we can adjust the constant and use a vperm without increasing code

[PATCH, rs6000] Handle missing permute splits for V2DF/V4SF in little endian

2013-10-11 Thread Bill Schmidt
Hi, In my previous patch to split LE VSX loads and stores to introduce permutes, I managed to miss the vector float modes. This patch corrects the oversight, fixing up a few more test failures. Bootstrapped and tested on both powerpc64-unknown-linux-gnu and powerpc64le-unknown-linux-gnu with no

Re: Optimize callers using nonnull attribute

2013-10-11 Thread Jakub Jelinek
On Mon, Oct 07, 2013 at 03:52:25PM +0200, Marc Glisse wrote: 2013-10-08 Marc Glisse marc.gli...@inria.fr PR tree-optimization/58480 gcc/ * tree-vrp.c (infer_nonnull_range): New function. (infer_value_range): Call infer_nonnull_range. This broke whole bunch of OpenMP

Re: [PATCH, rs6000] Handle missing permute splits for V2DF/V4SF in little endian

2013-10-11 Thread David Edelsohn
On Fri, Oct 11, 2013 at 8:48 AM, Bill Schmidt wschm...@linux.vnet.ibm.com wrote: Hi, In my previous patch to split LE VSX loads and stores to introduce permutes, I managed to miss the vector float modes. This patch corrects the oversight, fixing up a few more test failures. Bootstrapped

Re: RFA: Remove alias usage from libgcc/sync.c

2013-10-11 Thread David Edelsohn
Jakub Jelinek ja...@redhat.com writes: On Fri, Oct 11, 2013 at 10:17:41AM +0200, Richard Biener wrote: asm(.alias __sync_synchronize sync_synchronize); It is .set, but not everywhere. /* The MIPS assembler has different syntax for .set. We set it to .dummy to trap any errors. */ #undef

Re: [PATCH i386 3/8] [AVX512] [2/n] Add AVX-512 patterns: Fix missing `v' constraint.

2013-10-11 Thread Kirill Yukhin
Hello, On 09 Oct 14:20, Richard Henderson wrote: On 10/09/2013 03:24 AM, Kirill Yukhin wrote: Here's 2nd subpatch. It fixes missing `v' constraints. And one v constraint that shouldn't have been. Exactly! Ok. Checked into main trunk: http://gcc.gnu.org/ml/gcc-cvs/2013-10/msg00379.html

Re: [PATCH i386 3/8] [AVX512] [3/n] Add AVX-512 patterns: VF1 and VI iterators.

2013-10-11 Thread Kirill Yukhin
Hello, On 09 Oct 14:25, Richard Henderson wrote: On 10/09/2013 03:24 AM, Kirill Yukhin wrote: Here's 3rd subpatch. It extends VF1 and VI iterators. Ok. Thanks, checked into main trunk: http://gcc.gnu.org/ml/gcc-cvs/2013-10/msg00380.html K

Re: Optimize callers using nonnull attribute

2013-10-11 Thread Marc Glisse
On Fri, 11 Oct 2013, Jakub Jelinek wrote: On Mon, Oct 07, 2013 at 03:52:25PM +0200, Marc Glisse wrote: 2013-10-08 Marc Glisse marc.gli...@inria.fr PR tree-optimization/58480 gcc/ * tree-vrp.c (infer_nonnull_range): New function. (infer_value_range): Call

Re: [patch] omp-low.h

2013-10-11 Thread Andrew MacLeod
On 10/11/2013 04:16 AM, Jakub Jelinek wrote: On Fri, Oct 11, 2013 at 10:12:17AM +0200, Richard Biener wrote: I can spot the end of a comment containing OpenMP Region Tree that you didn't move - probably an oversight. Otherwise ok. Please wait for the gomp4 merge (which I'm going to commit

Re: RFA: Remove alias usage from libgcc/sync.c

2013-10-11 Thread Richard Sandiford
Richard Biener richard.guent...@gmail.com writes: On Fri, Oct 11, 2013 at 12:48 PM, Richard Sandiford rdsandif...@googlemail.com wrote: Richard Biener richard.guent...@gmail.com writes: On Fri, Oct 11, 2013 at 11:43 AM, Richard Sandiford rdsandif...@googlemail.com wrote: Jakub Jelinek

Re: [PATCH i386 3/8] [AVX512] [4/n] Add AVX-512 patterns: V iterator.

2013-10-11 Thread Kirill Yukhin
Hello, On 09 Oct 14:32, Richard Henderson wrote: On 10/09/2013 03:25 AM, Kirill Yukhin wrote: Here's 4th subpatch. It extends V iterator. Ok. Thanks, checked into main trunk: http://gcc.gnu.org/ml/gcc-cvs/2013-10/msg00382.html K

Re: [PATCH i386 3/8] [AVX512] [5/n] Add AVX-512 patterns: Introduce `multdiv' code iterator.

2013-10-11 Thread Kirill Yukhin
Hello, On 09 Oct 14:34, Richard Henderson wrote: On 10/09/2013 03:25 AM, Kirill Yukhin wrote: Here's 5th subpatch. It introduces `multdiv' code iterator. This is the sort of patch I like to see. It's the first one you've sent that's done exactly one thing. Congratulations. Ok. Thanks,

Re: [PATCH i386 3/8] [AVX512] [6/n] Add AVX-512 patterns: VI2 and VI124 iterators.

2013-10-11 Thread Kirill Yukhin
Hello On 09 Oct 14:35, Richard Henderson wrote: On 10/09/2013 03:26 AM, Kirill Yukhin wrote: Here's 6th subpatch. It extends VI2 and VI124 iterators. Ok. Thanks, checked into main trunk: http://gcc.gnu.org/ml/gcc-cvs/2013-10/msg00384.html K

Re: [PATCH i386 3/8] [AVX512] [5/n] Add AVX-512 patterns: Introduce `multdiv' code iterator.

2013-10-11 Thread Jakub Jelinek
On Fri, Oct 11, 2013 at 05:39:05PM +0400, Kirill Yukhin wrote: Hello, On 09 Oct 14:34, Richard Henderson wrote: On 10/09/2013 03:25 AM, Kirill Yukhin wrote: Here's 5th subpatch. It introduces `multdiv' code iterator. This is the sort of patch I like to see. It's the first one you've

Re: [PATCH i386 3/8] [AVX512] [7/n] Add AVX-512 patterns: VI4 and VI8 iterators.

2013-10-11 Thread Kirill Yukhin
Hello, On 09 Oct 14:37, Richard Henderson wrote: On 10/09/2013 03:26 AM, Kirill Yukhin wrote: Here's 7th subpatch. It extends VI4 and VI8 iterators. Ok. Thanks, checked into main trunk: http://gcc.gnu.org/ml/gcc-cvs/2013-10/msg00385.html K

Re: [PATCH i386 3/8] [AVX512] [5/n] Add AVX-512 patterns: Introduce `multdiv' code iterator.

2013-10-11 Thread Kirill Yukhin
On 11 Oct 15:43, Jakub Jelinek wrote: On Fri, Oct 11, 2013 at 05:39:05PM +0400, Kirill Yukhin wrote: Thanks, checked into main trunk: http://gcc.gnu.org/ml/gcc-cvs/2013-10/msg00383.html Everybody can read gcc-cvs mailing list, it's archives or svn log or git log, there is no need to

Re: [buildrobot] OMP: r203408 probably needs another operator returning bool

2013-10-11 Thread Jakub Jelinek
Hi! On Fri, Oct 11, 2013 at 02:44:16PM +0200, Jan-Benedict Glaw wrote: The recent change probably gave us this[1]: g++ -c -DIN_GCC_FRONTEND -DIN_GCC_FRONTEND -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing

Re: [C++ Patch] PR 31671

2013-10-11 Thread Jason Merrill
On 10/11/2013 04:51 AM, Paolo Carlini wrote: The 6th time we get there when compiling the testcase, that is when we are converting to int, at that line this is expr_type: reference_type 0x768587e0 type integer_type 0x76858738 int readonly type_6 SI Aha. The patch is OK then.

Re: New attribute: returns_nonnull

2013-10-11 Thread Marc Glisse
On Mon, 7 Oct 2013, Marc Glisse wrote: 2013-10-08 Marc Glisse marc.gli...@inria.fr [...] gcc/ * doc/extend.texi (returns_nonnull): New function attribute. By the way, I'll commit this obvious doc fix next chance I get: 2013-10-12 Marc Glisse marc.gli...@inria.fr *

Re: Optimize callers using nonnull attribute

2013-10-11 Thread Marc Glisse
On Fri, 11 Oct 2013, Marc Glisse wrote: On Fri, 11 Oct 2013, Jakub Jelinek wrote: OT, do you plan to define ATTRIBUTE_RETURNS_NONNULL for GCC_VERSION = 4009 in ansidecl.h and use it on the various xmalloc etc. prototypes? I was planning to at least have a look at some point. I can do that

Re: [buildrobot] OMP: r203408 probably needs another operator returning bool

2013-10-11 Thread Jason Merrill
On 10/11/2013 09:56 AM, Jakub Jelinek wrote: With the operator bool (), there is ambiguity in the if (((mask something) 1) == 0) tests (so had to use OMP_CLAUSE_MASK_{1,0} instead of {1,0}) This is an example of why operator bool is a bad idea in general. If we were using C++11, we could

Re: Optimize callers using nonnull attribute

2013-10-11 Thread Marc Glisse
On Fri, 11 Oct 2013, Jakub Jelinek wrote: OT, do you plan to define ATTRIBUTE_RETURNS_NONNULL for GCC_VERSION = 4009 in ansidecl.h and use it on the various xmalloc etc. prototypes? I just read this note in libiberty/concat.c: This function uses xmalloc() which is expected to be a

Re: Optimize callers using nonnull attribute

2013-10-11 Thread Jakub Jelinek
On Fri, Oct 11, 2013 at 04:21:04PM +0200, Marc Glisse wrote: On Fri, 11 Oct 2013, Jakub Jelinek wrote: OT, do you plan to define ATTRIBUTE_RETURNS_NONNULL for GCC_VERSION = 4009 in ansidecl.h and use it on the various xmalloc etc. prototypes? I just read this note in libiberty/concat.c:

Re: [buildrobot] OMP: r203408 probably needs another operator returning bool

2013-10-11 Thread Jakub Jelinek
On Fri, Oct 11, 2013 at 10:11:21AM -0400, Jason Merrill wrote: another possibility is not to add operator bool () overload that introduces that ambiguity, but then if (mask something) needs to be replaced with if ((mask something) != 0) and operator != (int) added. I guess I slightly prefer

Re: [C++ Patch] PR 58633

2013-10-11 Thread Jason Merrill
On 10/11/2013 06:28 AM, Paolo Carlini wrote: The issue is a regression in 4_7/4_8 too, what should we do in those branches? I'm thinking applying the change to 4_8 too and either not fixing in 4_7 or just reverting the cp_parser_commit_to_tentative_parse change which improved the diagnostic for

Re: [C++ Patch] PR 58633

2013-10-11 Thread Paolo Carlini
On 10/11/2013 03:59 PM, Jason Merrill wrote: On 10/11/2013 06:28 AM, Paolo Carlini wrote: The issue is a regression in 4_7/4_8 too, what should we do in those branches? I'm thinking applying the change to 4_8 too and either not fixing in 4_7 or just reverting the

Re: RFA [reload]: Fix PR other/58545

2013-10-11 Thread Joern Rennecke
On 11 October 2013 04:53, Jeff Law l...@redhat.com wrote: With your change it seems to me that we do a single round of spilling caller-save setup, then align the stack, then restart. The net result being we align the stack a lot more often. Yes, but AFAICT, that should not result in more

[PATCH i386] Use ordered comparisons for rounding builtins when -mno-ieee-fp

2013-10-11 Thread Alexander Monakov
Hello, With -mno-ieee-fp, or when that flag is implied by other flags such as -ffast-math, i386 backend will use ordered rather than unordered comparisons (fcom* instead of fucom*, or their SSE counterparts). Expansion of several rounding builtins currently uses unordered comparisons always,

Re: [patch] combine ICE fix

2013-10-11 Thread Cesar Philippidis
On 10/10/13 9:25 AM, Jakub Jelinek wrote: That looks broken. You leave everything from the last size till the current one uninitialized, so it would only work if combine_split_insns always increments max_reg_num () by at most one. Good catch. Furthermore, there are macros which should be

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

2013-10-11 Thread Joseph S. Myers
On Thu, 10 Oct 2013, Tobias Burnus wrote: Joseph: Could you have a look at the C part? Thanks! Your error missing loop condition loop with IVDEP pragma should, I think, say loop condition in loop. Since the pragma is ivdep (case-sensitive), it should also say %ivdep% not IVDEP. This

[AArch64] Fix early-clobber operands to vtbx[1,3]

2013-10-11 Thread James Greenhalgh
Hi, The vtbx intrinsics are implemented in assembly without noting that their tmp1 operand is early-clobber. This can, when the wind blows the wrong way, result in us making a total mess of the state of registers. Fix by marking the required operands as early-clobber. Regression tested against

[C++ Patch] PR 58466

2013-10-11 Thread Paolo Carlini
Hi, this is just an ICE on invalid, but it's a 4_8/4_9 Regression, and, more importantly, we don't emit any sensible error message before ICEing. It manifests itself as TEMPLATE_PARM_INDEX unhandled by the main cxx_eval_constant_expression switch, and just adding the code to the bunch of

[PATCH] Transaction fix: New target hook special_function_flags

2013-10-11 Thread Andreas Krebbel
Hi, the attached patch introduces a new target hook (targetm.calls.special_function_flags) which can be used by a backend to add specific call properties to builtins. On S/390 this is used for the *tbegin* and *tabort builtins whose control flow otherwise is not modelled correctly. On S/390

Go patch committed: Better handling of invalid ASCII in Go frontend

2013-10-11 Thread Ian Lance Taylor
This patch improves the handling of invalid ASCII characters in the Go frontend when they appear in identifiers. Note that Go input is by definition always UTF-8, so the ASCII-specific assumptions here are OK. Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu. Committed to mainline.

Re: Optimize callers using nonnull attribute

2013-10-11 Thread Mike Stump
On Oct 11, 2013, at 7:21 AM, Marc Glisse marc.gli...@inria.fr wrote: I just read this note in libiberty/concat.c: I am afraid that if I add the returns_nonnull attribute to xmalloc in include/libiberty.h, it will break this supported use, no? Or is this comment out-of-date? I think the

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

2013-10-11 Thread Eric Botcazou
That would definitely be a good move. Maybe someone should approve it? Yes, but I agree that we ought to restrict it to trailing zero-sized arrays. That would help to allay Jakub's concerns about possible ABI fallouts. -- Eric Botcazou

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

2013-10-11 Thread Andreas Krebbel
On 10/10/13 18:41, Jeff Law wrote: On 10/10/13 04:00, Andreas Krebbel wrote: On 09/10/13 21:46, Jeff Law wrote: On 08/21/13 03:21, Andreas Krebbel wrote: [RFC] Allow functions calling mcount before prologue to be leaf functions http://gcc.gnu.org/ml/gcc-patches/2013-04/msg00993.html I don't

RE: Fix scheduler ix86_issue_rate and ix86_adjust_cost for modern x86 chips

2013-10-11 Thread Gopalasubramanian, Ganesh
Hi Honza! I will give it a try. I understand how the proposed patch would be. That is OK to me. OK, my undertanding always was, that the decoders works sort of sequentially. One decoder of bdver1 can do vector, double, single, single, single, signle where decoder 1 is somehow special but

Re: [PATCH i386 3/8] [AVX512] [15/n] Add AVX-512 patterns: VI48F_512 iterator.

2013-10-11 Thread Richard Henderson
On 10/09/2013 03:29 AM, Kirill Yukhin wrote: +(define_insn avx512f_vec_dup_memmode + [(set (match_operand:VI48F_512 0 register_operand =x) + (vec_duplicate:VI48F_512 + (match_operand:ssescalarmode 1 nonimmediate_operand xm)))] + TARGET_AVX512F +

Re: [PATCH PING] Move edge_within_scc to ipa-utils.c

2013-10-11 Thread Martin Jambor
Ping. Thanks, Martin On Wed, Sep 11, 2013 at 03:02:02PM +0200, Martin Jambor wrote: Hi, edge_within_scc should really be a part of API accompanying ipa_reduced_postorder just like ipa_get_nodes_in_cycle and so this patch moves it to ipa-utils.c and gives it the ipa_ prefix.

Re: [buildrobot] OMP: r203408 probably needs another operator returning bool

2013-10-11 Thread Jason Merrill
On 10/11/2013 10:36 AM, Jakub Jelinek wrote: Since the coding standards say Conversion operators should be avoided (because they can't be explicit), I think this is the way to go. We then violate the coding standard in vec.h: /* Type to provide NULL values for vecT, A, L. This is used to

Go patch committed: Accept an integral float as a string index

2013-10-11 Thread Ian Lance Taylor
This patch from Rémy Oudompheng fixes the Go frontend to accept an integral float constant as an index into a string. That was already fixes for arrays, but not for strings. Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu. Committed to mainline. Will commit to 4.8 branch when the

Re: [C++ Patch] PR 58466

2013-10-11 Thread Jason Merrill
How does a TEMPLATE_PARM_INDEX get this far? It should have been detected as dependent before this. Jason

Apply attribute returns_nonnull in libiberty

2013-10-11 Thread Marc Glisse
Hello, here are some uses for returns_nonnull in libiberty. Bootstrap+testsuite (default languages) on x86_64-unknown-linux-gnu. 2013-10-11 Marc Glisse marc.gli...@inria.fr PR tree-optimization/58689 include/ * ansidecl.h (ATTRIBUTE_RETURNS_NONNULL): New macro. *

Re: Apply attribute returns_nonnull in libiberty

2013-10-11 Thread Marc Glisse
With the patch now... On Fri, 11 Oct 2013, Marc Glisse wrote: Hello, here are some uses for returns_nonnull in libiberty. Bootstrap+testsuite (default languages) on x86_64-unknown-linux-gnu. 2013-10-11 Marc Glisse marc.gli...@inria.fr PR tree-optimization/58689 include/ *

Re: [PATCH] Do not append *INTERNAL* to the decl name

2013-10-11 Thread Jason Merrill
This needs a testcase (compile with -dA and use scan-assembler; see other tests in g++.dg/debug/dwarf2). Jason

Re: [PATCH] Do not append *INTERNAL* to the decl name

2013-10-11 Thread Dehao Chen
It's hard to get a testcase without http://gcc.gnu.org/viewcvs/gcc?view=revisionrevision=201856 because none of these *INTERNAL* symbols will be emitted in debug info. Thanks, Dehao On Fri, Oct 11, 2013 at 10:55 AM, Jason Merrill ja...@redhat.com wrote: This needs a testcase (compile with -dA

Go patch committed: Better error for offsetof(method value)

2013-10-11 Thread Ian Lance Taylor
This patch to the Go frontend gives a more useful error message for an invalid call to unsafe.Offsetof on a method value (method values look like field references, which are valid for unsafe.offsetof). Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu. Committed to mainline. Will

Re: Apply attribute returns_nonnull in libiberty

2013-10-11 Thread David Malcolm
On Fri, 2013-10-11 at 19:53 +0200, Marc Glisse wrote: With the patch now... [...] -extern char *concat_copy (char *, const char *, ...) ATTRIBUTE_SENTINEL; +extern char *concat_copy (char *, const char *, ...) ATTRIBUTE_SENTINEL ATTRIBUTE_NONNULL(1) ATTRIBUTE_RETURNS_NONNULL; An aesthetic

Re: Apply attribute returns_nonnull in libiberty

2013-10-11 Thread Marc Glisse
On Fri, 11 Oct 2013, David Malcolm wrote: On Fri, 2013-10-11 at 19:53 +0200, Marc Glisse wrote: With the patch now... [...] -extern char *concat_copy (char *, const char *, ...) ATTRIBUTE_SENTINEL; +extern char *concat_copy (char *, const char *, ...) ATTRIBUTE_SENTINEL

Re: [PATCH i386 3/8] [AVX512] [16/n] Add AVX-512 patterns: VI48_512 and VI4F_128 iterators.

2013-10-11 Thread Richard Henderson
On 10/09/2013 03:30 AM, Kirill Yukhin wrote: +;; Return true if OP is either -1 constant or stored in register. +(define_predicate register_or_constm1_operand + (ior (match_operand 0 register_operand) + (match_test op == constm1_rtx))) This won't do the right thing, because you're not

[PATCH, powerpc] PR target/58673, Fix power8 quad memory/no-vsx-timode interaction

2013-10-11 Thread Michael Meissner
When I patched the compiler for PR 58587 to not set -mvsx-timode automatically for ISA 2.06 sytems (power7/power8), there was an unexpected problem between ISA 2.07 quad memory support and not allowing TImode variables in VSX registers. The movti insn in the -mno-vsx-timode case, did not have

Go patch committed: Error for same name for receiver and parameter

2013-10-11 Thread Ian Lance Taylor
This patch to the Go compiler makes it give an error if the same name is used for a method receiver and some parameter to the method. Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu. Committed to mainline. Will commit to 4.8 branch when the branch reopens. Ian diff -r 09a1bcee0ad3

Re: Apply attribute returns_nonnull in libiberty

2013-10-11 Thread DJ Delorie
Your patch changes the rule that the application can override xmalloc() and get functions that return NULL...

Re: [C++ Patch] PR 58466

2013-10-11 Thread Paolo Carlini
Hi, On 10/11/2013 07:46 PM, Jason Merrill wrote: How does a TEMPLATE_PARM_INDEX get this far? It should have been detected as dependent before this. Thanks. Interesting. We get there from the convert_nontype_argument call at line 6453 of pt.c (in convert_template_argument) , which is

Re: Apply attribute returns_nonnull in libiberty

2013-10-11 Thread Marc Glisse
On Fri, 11 Oct 2013, DJ Delorie wrote: Your patch changes the rule that the application can override xmalloc() and get functions that return NULL... Only after Jakub and Mike told me, earlier today, that this rule didn't exist anymore. If it does, we can just forget about this patch. --

Re: Apply attribute returns_nonnull in libiberty

2013-10-11 Thread Jakub Jelinek
On Fri, Oct 11, 2013 at 02:30:13PM -0400, DJ Delorie wrote: Your patch changes the rule that the application can override xmalloc() and get functions that return NULL... Why would you want to do that? Big part of libiberty itself wouldn't allow such an implementation. E.g. concat.c, argv.c,

PATCH: PR target/58690: internal compiler error: in copy_to_mode_reg, at explow.c:641

2013-10-11 Thread H.J. Lu
Hi, In x32, when a TLS address is in DImode and Pmode is SImode, copy_addr_to_reg will fail. This patch adds ix86_copy_addr_to_reg to first copy DImode address into a DImode register and then to generate SImode SUBREG in this case. Tested on x32. OK for trunk? Thanks. H.J. --- gcc/

[PATCH, powerpc] PR target/58673: Fix power8 quad memory/no-vsx-timode interaction (revised)

2013-10-11 Thread Michael Meissner
Whoops, I didn't notice I had left in old code for lq/stq that I had commented out. This patch replaces the previous patch, and eliminates the commented out code. Sorry about that. [gcc] 2013-10-11 Michael Meissner meiss...@linux.vnet.ibm.com PR target/58673 *

Re: Apply attribute returns_nonnull in libiberty

2013-10-11 Thread DJ Delorie
Why would you want to do that? I wouldn't, but gcc isn't the only user of libiberty.

PATCH: Update x32 baseline_symbols.txt

2013-10-11 Thread H.J. Lu
Hi, I checked in this patch to update baseline_symbols.txt for x32. H.J. --- Index: ChangeLog === --- ChangeLog (revision 203455) +++ ChangeLog (working copy) @@ -1,3 +1,7 @@ +2013-10-11 H.J. Lu hongjiu...@intel.com + +

Re: [AArch64] Fix early-clobber operands to vtbx[1,3]

2013-10-11 Thread Marcus Shawcroft
On 11 October 2013 17:45, James Greenhalgh james.greenha...@arm.com wrote: Hi, The vtbx intrinsics are implemented in assembly without noting that their tmp1 operand is early-clobber. This can, when the wind blows the wrong way, result in us making a total mess of the state of registers.

[patch] Fix altivec-7.C testsuite failure due to vector name mangling.

2013-10-11 Thread Brooks Moses
Hi, all - We recently built a compiler with a default -fabi-version value that's different from the 2 that's used as default on trunk. The result of this was a test failure in g++.dg/ext/altivec-7.C, which compiles a bunch of empty functions with vector arguments and inspects the generated

Re: [C++ Patch] PR 58466

2013-10-11 Thread Paolo Carlini
On 10/11/2013 08:29 PM, Paolo Carlini wrote: Are we maybe failing to bump processing_template_decl somewhere while processing the specialization? ... I'm finishing testing this, already past g++.dg/dg.exp... Paolo. Index: cp/pt.c

Re: [PATCH] Add --enable-host-shared configuration option

2013-10-11 Thread David Malcolm
On Thu, 2013-10-10 at 01:05 +, Joseph S. Myers wrote: On Wed, 9 Oct 2013, David Malcolm wrote: This patch adds an --enable-host-shared option throughout the various configure/Make machinery for host code, adding -fPIC where appropriate when enabled. Please document this in

[PATCH] FIx pr58640

2013-10-11 Thread Jeff Law
The problem shown by pr58640 is the more aggressive jump threading is recording a jump threading opportunity that crosses through two loop headers. The updating code is not prepared to update the CFG and loop structures in that situation. The net result is we have two latch edges for a

Re: Apply attribute returns_nonnull in libiberty

2013-10-11 Thread Marc Glisse
On Fri, 11 Oct 2013, DJ Delorie wrote: Your patch changes the rule that the application can override xmalloc() and get functions that return NULL... How about this more limited version? I'll see about following Jakub's advice to apply the attributes to the other functions only in gcc.

Re: [PATCH] Add --enable-host-shared configuration option

2013-10-11 Thread Joseph S. Myers
On Fri, 11 Oct 2013, David Malcolm wrote: On Thu, 2013-10-10 at 01:05 +, Joseph S. Myers wrote: On Wed, 9 Oct 2013, David Malcolm wrote: This patch adds an --enable-host-shared option throughout the various configure/Make machinery for host code, adding -fPIC where appropriate

Re: Apply attribute returns_nonnull in libiberty

2013-10-11 Thread DJ Delorie
PR tree-optimization/58689 * ansidecl.h (ATTRIBUTE_RETURNS_NONNULL): New macro. * libiberty.h (basename, lbasename, dos_lbasename, unix_lbasename, concat_copy): Mark with attributes nonnull(1) and returns_nonnull. (concat_copy2, xstrerror): Mark with

Re: [PATCH] Add --enable-host-shared configuration option

2013-10-11 Thread David Malcolm
On Fri, 2013-10-11 at 20:45 +, Joseph S. Myers wrote: On Fri, 11 Oct 2013, David Malcolm wrote: On Thu, 2013-10-10 at 01:05 +, Joseph S. Myers wrote: On Wed, 9 Oct 2013, David Malcolm wrote: This patch adds an --enable-host-shared option throughout the various

[PATCH] increase builtin_expert probability in loop exit test

2013-10-11 Thread Rong Xu
Hi, An earlier patch (r203167) changed the default probability for builtin_expect to 90%. It does not work properly for the following case: while (__builin_expect (expr, 1)) { } W/o builtin_expect, the exit probability is 9% while w/ builtin_expect, the exit probability is 10%. It seems

[google gcc-4_8] increase builtin_expect probability in loop exit test

2013-10-11 Thread Rong Xu
The trunk version of this patch is submitted for review. David: can we have this patch for google/gcc-4_8 branch first? It tested with regression and google internal benchmarks. Thanks, -Rong 2013-10-11 Rong Xu x...@google.com * predict.c (tree_predict_by_opcode): Bump the

Re: [patch] Fix altivec-7.C testsuite failure due to vector name mangling.

2013-10-11 Thread Mike Stump
On Oct 11, 2013, at 11:55 AM, Brooks Moses bmo...@google.com wrote: This patch fixes the failure by adjusting the test to look for the names using the standard mangling. It passes with all ABI versions; the compiler always emits the standard symbols, and with versions 1, 2, and 3 it also

Re: [google gcc-4_8] increase builtin_expect probability in loop exit test

2013-10-11 Thread Xinliang David Li
Why this 'percent += 4' instead of taking the max? David On Fri, Oct 11, 2013 at 2:10 PM, Rong Xu x...@google.com wrote: The trunk version of this patch is submitted for review. David: can we have this patch for google/gcc-4_8 branch first? It tested with regression and google internal

Re: [google gcc-4_8] increase builtin_expect probability in loop exit test

2013-10-11 Thread Rong Xu
I want to differentiate the cases w/o and w/ builtin. If I take the max, they will be the same (91%). -Rong On Fri, Oct 11, 2013 at 2:26 PM, Xinliang David Li davi...@google.com wrote: Why this 'percent += 4' instead of taking the max? David On Fri, Oct 11, 2013 at 2:10 PM, Rong Xu

Re: [google gcc-4_8] increase builtin_expect probability in loop exit test

2013-10-11 Thread Xinliang David Li
Should it be max + some_delta then? David On Fri, Oct 11, 2013 at 2:32 PM, Rong Xu x...@google.com wrote: I want to differentiate the cases w/o and w/ builtin. If I take the max, they will be the same (91%). -Rong On Fri, Oct 11, 2013 at 2:26 PM, Xinliang David Li davi...@google.com wrote:

Re: [google gcc-4_8] increase builtin_expect probability in loop exit test

2013-10-11 Thread Rong Xu
ok. that makes sense. On Fri, Oct 11, 2013 at 2:41 PM, Xinliang David Li davi...@google.com wrote: Should it be max + some_delta then? David On Fri, Oct 11, 2013 at 2:32 PM, Rong Xu x...@google.com wrote: I want to differentiate the cases w/o and w/ builtin. If I take the max, they will

Go patch committed: Use backend interface for function code exprs

2013-10-11 Thread Ian Lance Taylor
This patch by Chris Manghane changes the Go frontend to use the backend interface for function code expressions. Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu. Committed to mainline. Ian 2013-10-11 Chris Manghane cm...@google.com * go-gcc.cc

Re: [google gcc-4_8] increase builtin_expect probability in loop exit test

2013-10-11 Thread Rong Xu
here is the new patch. Note that the hitrate won't change by this patch for the case of while (__builtin_expect (exp, 0)) Index: predict.c === --- predict.c (revision 203462) +++ predict.c (working copy) @@ -1951,11 +1951,42 @@

Re: [google gcc-4_8] increase builtin_expect probability in loop exit test

2013-10-11 Thread Xinliang David Li
ok for google branch. David On Fri, Oct 11, 2013 at 3:17 PM, Rong Xu x...@google.com wrote: here is the new patch. Note that the hitrate won't change by this patch for the case of while (__builtin_expect (exp, 0)) Index: predict.c

Re: [PATCH] Do not append *INTERNAL* to the decl name

2013-10-11 Thread Cary Coutant
It's hard to get a testcase without http://gcc.gnu.org/viewcvs/gcc?view=revisionrevision=201856 because none of these *INTERNAL* symbols will be emitted in debug info. The original code was in there as a form of assembly-time assertion that the symbol would never get output. Now that you want

Go patch committed: Fix handling of hidden methods for unnamed types

2013-10-11 Thread Ian Lance Taylor
This patch to the Go frontend fixes the handling of hidden methods for unnamed types. If an interface has hidden methods, we must make the interface table comdat if it is for an unnamed type. When we create a stub method for an unnamed type, we don't make it publically visible. Bootstrapped and

Re: [PATCH] Add --enable-host-shared configuration option

2013-10-11 Thread Joseph S. Myers
On Fri, 11 Oct 2013, David Malcolm wrote: Thanks. Presumably the initially posted configure/make patch still needs review, right? Yes (by a build system maintainer, probably). -- Joseph S. Myers jos...@codesourcery.com

  1   2   >