Re: [PATCH] Bug fix for PR59050

2013-11-11 Thread Richard Biener
On Fri, 8 Nov 2013, Cong Hou wrote: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59050 This is my bad. I forget to check the test result for gfortran. With this patch the bug should be fixed (tested on x86-64). Ok. Btw, requirements are to bootstrap and test with all default languages

Re: Simplify code in gimple_equal_p

2013-11-11 Thread Richard Biener
On Sat, 9 Nov 2013, Tom de Vries wrote: Richard, This patch simplifies code in gimple_equal_p. Bootstrapped and regtested on x86_64. OK for trunk? Ok. Thanks, Richard. Thanks, - Tom 2013-11-06 Tom de Vries t...@codesourcery.com * tree-ssa-tail-merge.c

Re: [RFA][PATCH] Isolate erroneous paths optimization

2013-11-11 Thread Eric Botcazou
However, that brings up an couple interesting questions. Let's say we find a NULL pointer which reaches a return statement in a function which is marked as returns_nonnull. In that case there is no dereference. Presumably for that kind of scenario we'll just keep the builtin trap.

Re: [PATCH] Factor out gimple_dont_merge_p

2013-11-11 Thread Richard Biener
On Sat, 9 Nov 2013, Tom de Vries wrote: Richard, This patch factors out gimple_dont_merge_p from gimple_equal_p and find_duplicate. Bootstrapped and regtested on x86_64. OK for trunk? +static bool +gimple_dont_merge_p (gimple stmt) +{ + switch (gimple_code (stmt)) +{ +case

Re: [PATCH] Factor out gimple_operand_equal_value_p from gimple_equal_p

2013-11-11 Thread Richard Biener
On Sat, 9 Nov 2013, Tom de Vries wrote: Richard, This patch factors out gimple_operand_equal_value_p from gimple_equal_p. Bootstrapped and regtested on x86_64. OK for trunk? Ok. Thanks, Richard. Thanks, - Tom 2013-11-06 Tom de Vries t...@codesourcery.com *

Re: [PATCH] Handle GIMPLE_ASSIGNs with different vuse in gimple_equal_p

2013-11-11 Thread Richard Biener
On Sat, 9 Nov 2013, Tom de Vries wrote: Richard, Consider the test-case test.c: ... int z; int x; void f (int c, int d) { if (c) z = 5; else { if (d) x = 4; z = 5; } } ... Atm, we don't tail-merge the 'z = 5' blocks, because

Re: [RFC] replace malloc with a decl on the stack

2013-11-11 Thread Ondřej Bílka
On Sun, Nov 10, 2013 at 04:27:00PM +0100, Marc Glisse wrote: Hello, I am posting this patch to get some feedback on the approach. The goal is to replace malloc+free with a stack allocation (a decl actually) when the size is a small constant. Why constraint yourself to small sizes. Stack

[patch] Fix PR ada/35998

2013-11-11 Thread Eric Botcazou
Hi, this is an old bug report from Jan, which was closed, then reopened by Tom at some point, but the patch never got reviewed. The original submission is at: http://gcc.gnu.org/ml/gcc-patches/2008-05/msg01857.html Tested on x86_64-suse-linux, OK for the mainline? 2013-11-11 Jan

Re: [RFC] replace malloc with a decl on the stack

2013-11-11 Thread Jakub Jelinek
On Mon, Nov 11, 2013 at 11:08:14AM +0100, Ondřej Bílka wrote: On Sun, Nov 10, 2013 at 04:27:00PM +0100, Marc Glisse wrote: I am posting this patch to get some feedback on the approach. The goal is to replace malloc+free with a stack allocation (a decl actually) when the size is a small

Re: [PATCH] preprocessor/58580 - preprocessor goes OOM with warning for zero literals

2013-11-11 Thread Dodji Seketeli
Hello, As it appeared that concerns about the speed of location_get_source_line were as present as the need of just fixing this bug, I have conflated the two concerns in a new attempt below, trying to address the points you guys have raised during the previous reviews. The patch below introduces

Committed: config/arc/arc.h (LOGICAL_OP_NON_SHORT_CIRCUIT): Define.

2013-11-11 Thread Joern Rennecke
2013-11-11 Joern Rennecke joern.renne...@embecosm.com * config/arc/arc.h (LOGICAL_OP_NON_SHORT_CIRCUIT): Define. Index: config/arc/arc.h === --- config/arc/arc.h(revision 204665) +++ config/arc/arc.h(working

Re: RFA: Fix PR middle-end/59049

2013-11-11 Thread Richard Biener
On Fri, Nov 8, 2013 at 5:02 PM, Jeff Law l...@redhat.com wrote: On 11/08/13 07:45, Steven Bosscher wrote: On Fri, Nov 8, 2013 at 3:40 PM, Joern Rennecke joern.renne...@embecosm.com wrote: bootstrapped / regtested on i686-pc-linux-gnu. Not a very elaborate description of the patch, eh? :-)

Re: [RFC] replace malloc with a decl on the stack

2013-11-11 Thread Ondřej Bílka
On Mon, Nov 11, 2013 at 11:19:05AM +0100, Jakub Jelinek wrote: On Mon, Nov 11, 2013 at 11:08:14AM +0100, Ondřej Bílka wrote: On Sun, Nov 10, 2013 at 04:27:00PM +0100, Marc Glisse wrote: I am posting this patch to get some feedback on the approach. The goal is to replace malloc+free with a

[patch] Fix debug info for modified parameter

2013-11-11 Thread Eric Botcazou
Hi, since the switch to SSA form at -O0, the compiler generates wrong debug info for something like: void foo (int i) { int j = 0; i = 1; j = j + 1; /* BREAK */ } If you try to display the value of i after breaking in GDB, you don't get 1. The reason is that there is no default def

[patch] Add CONSTRUCTOR_NO_CLEARING flag

2013-11-11 Thread Eric Botcazou
Hi, in Ada 2012 it is allowed to omit components of aggregates (the equivalent of initializers/constructors); in this case, the contents of the corresponding fields in the record become undefined. Now the gimplifier implements the C semantics of clearing the missing components, so this patch

[ARM] Use standard t-elf libgcc fragment on VxWorks

2013-11-11 Thread Eric Botcazou
Hi, this is something I forgot to submit right after submitting http://gcc.gnu.org/ml/gcc-patches/2013-05/msg01906.html We want to use the standard t-elf fragment on VxWorks as well. Tested on ARM/VxWorks, OK for the mainline? 2013-11-11 Eric Botcazou ebotca...@adacore.com *

Re: RFA: Fix PR middle-end/59049

2013-11-11 Thread Eric Botcazou
In this case it's fold-all-builtins folding a strlen call with a PHI foo, bar argument. IMHO not presenting RTL with such non-sense is best achieved by not letting TER do constant propagation (because it doesn't fold the result). We can never rule out such stray non-propagated constants, so

Re: RFA: Fix PR middle-end/59049

2013-11-11 Thread Richard Biener
On Mon, Nov 11, 2013 at 12:21 PM, Eric Botcazou ebotca...@adacore.com wrote: In this case it's fold-all-builtins folding a strlen call with a PHI foo, bar argument. IMHO not presenting RTL with such non-sense is best achieved by not letting TER do constant propagation (because it doesn't fold

Re: [PATCH 2/3] libstdc++-v3: ::tmpnam depends on uClibc SUSV4_LEGACY

2013-11-11 Thread Jonathan Wakely
On 8 November 2013 10:29, Bernhard Reutner-Fischer wrote: On 04/11/2013 02:04 PM, Bernhard Reutner-Fischer wrote: I would have expected that somebody would tell me that omitting ::tmpnam violates 27.9.2 cstdio from the spec but noone yelled at me yet? std::tmpnam, like std::gets, should be

Re: [ARM] Use standard t-elf libgcc fragment on VxWorks

2013-11-11 Thread Ramana Radhakrishnan
On 11/11/13 11:11, Eric Botcazou wrote: Hi, this is something I forgot to submit right after submitting http://gcc.gnu.org/ml/gcc-patches/2013-05/msg01906.html We want to use the standard t-elf fragment on VxWorks as well. Tested on ARM/VxWorks, OK for the mainline? Ok, please apply.

Re: RFA: Fix PR middle-end/59049

2013-11-11 Thread Jakub Jelinek
On Mon, Nov 11, 2013 at 12:26:09PM +0100, Richard Biener wrote: The question is whether you for example want to handle a_2 = 1 + 0; at RTL expansion time? I'd say it's better to have I think we already handle that just fine, there are tons of various simplify_gen_* calls during

Re: [PATCH] Enhance ifcombine to recover non short circuit branches

2013-11-11 Thread Richard Biener
On Fri, Nov 8, 2013 at 6:41 PM, Steven Bosscher stevenb@gmail.com wrote: On Fri, Nov 8, 2013 at 6:20 PM, Steven Bosscher wrote: On Wed, Oct 30, 2013 at 5:03 AM, Andrew Pinski wrote: Here is what I applied in the end; Jeff told me just to remove the testcase. I added the comment trying to

Re: [RFA][PATCH] Minor fix to aliasing machinery

2013-11-11 Thread Richard Biener
On Sat, Nov 9, 2013 at 12:18 AM, Marc Glisse marc.gli...@inria.fr wrote: On Wed, 6 Nov 2013, Richard Biener wrote: So the only thing that remains is the mem_ref_offset thing and yes, I guess I'd prefer to use double-ints because we deal with bit offsets in the end. Here it is

Re: Some wide-int review comments

2013-11-11 Thread Richard Biener
On Sat, Nov 9, 2013 at 3:23 PM, Kenneth Zadeck zad...@naturalbridge.com wrote: On 11/08/2013 05:30 AM, Richard Sandiford wrote: From tree-vrp.c: @@ -1893,6 +1884,10 @@ vrp_int_const_binop (enum tree_code code /* If the singed operation wraps then int_const_binop has done

Re: some prep work to make JUMP_TABLE_DATA a non-active_insn_p object

2013-11-11 Thread Richard Biener
On Sun, Nov 10, 2013 at 6:11 PM, Eric Botcazou ebotca...@adacore.com wrote: This is the first patch of what I think will be four to fix those few places. Bootstrappedtested on powerpc64-unknown-linux-gnu. Also built SH to be sure. OK for trunk? The generic part is OK (modulo the

Re: [PATCH] make has_gate and has_execute useless

2013-11-11 Thread Richard Biener
On Mon, Nov 11, 2013 at 1:39 AM, Trevor Saunders tsaund...@mozilla.com wrote: On Fri, Nov 08, 2013 at 10:37:00AM +0100, Richard Biener wrote: On Thu, Nov 7, 2013 at 5:00 PM, tsaund...@mozilla.com wrote: From: Trevor Saunders tsaund...@mozilla.com Hi, This is the result of seeing what

Re: [PATCH] reimplement -fstrict-volatile-bitfields v4, part 1/2

2013-11-11 Thread Richard Biener
On Thu, Oct 31, 2013 at 1:46 AM, Sandra Loosemore san...@codesourcery.com wrote: On 10/29/2013 02:51 AM, Bernd Edlinger wrote: On Mon, 28 Oct 2013 21:29:24, Sandra Loosemore wrote: On 10/28/2013 03:20 AM, Bernd Edlinger wrote: I have attached an update to your patch, that should a) fix

Re: [PATCH GCC]Refactor force_expr_to_var_cost and handle type conversion

2013-11-11 Thread Richard Biener
On Mon, Nov 11, 2013 at 8:29 AM, Bin.Cheng amker.ch...@gmail.com wrote: On Fri, Nov 8, 2013 at 10:06 PM, Richard Biener richard.guent...@gmail.com wrote: On Fri, Nov 8, 2013 at 2:41 PM, bin.cheng bin.ch...@arm.com wrote: Hi, This patch refactors force_expr_to_var_cost and handles type

Re: [RFA][PATCH] Isolate erroneous paths optimization

2013-11-11 Thread Richard Biener
On Mon, Nov 11, 2013 at 4:11 AM, Jeff Law l...@redhat.com wrote: On 11/10/13 05:34, Eric Botcazou wrote: But I think that you cannot transform foo () { *0 = 1; } to __builtin_trap as you can catch the trap via an exception handler in a caller of foo, no? That is true. OK, I can

Re: [patch] Fix PR ada/35998

2013-11-11 Thread Richard Biener
On Mon, Nov 11, 2013 at 11:10 AM, Eric Botcazou ebotca...@adacore.com wrote: Hi, this is an old bug report from Jan, which was closed, then reopened by Tom at some point, but the patch never got reviewed. The original submission is at:

Re: [PATCH] Handle GIMPLE_ASSIGNs with different vuse in gimple_equal_p

2013-11-11 Thread Tom de Vries
On 11/11/13 10:50, Richard Biener wrote: On Sat, 9 Nov 2013, Tom de Vries wrote: Bootstrapped and regtested on x86_64. OK for trunk? Comments inline diff --git a/gcc/tree-ssa-tail-merge.c b/gcc/tree-ssa-tail-merge.c index 98b5882..43516a7 100644 --- a/gcc/tree-ssa-tail-merge.c +++

Re: [RFC] replace malloc with a decl on the stack

2013-11-11 Thread Richard Biener
On Sun, Nov 10, 2013 at 4:27 PM, Marc Glisse marc.gli...@inria.fr wrote: Hello, I am posting this patch to get some feedback on the approach. The goal is to replace malloc+free with a stack allocation (a decl actually) when the size is a small constant. For testing, I highjacked the leaf

Re: [patch] Fix debug info for modified parameter

2013-11-11 Thread Richard Biener
On Mon, Nov 11, 2013 at 11:56 AM, Eric Botcazou ebotca...@adacore.com wrote: Hi, since the switch to SSA form at -O0, the compiler generates wrong debug info for something like: void foo (int i) { int j = 0; i = 1; j = j + 1; /* BREAK */ } If you try to display the value of i

Re: [patch] Add CONSTRUCTOR_NO_CLEARING flag

2013-11-11 Thread Richard Biener
On Mon, Nov 11, 2013 at 11:55 AM, Eric Botcazou ebotca...@adacore.com wrote: Hi, in Ada 2012 it is allowed to omit components of aggregates (the equivalent of initializers/constructors); in this case, the contents of the corresponding fields in the record become undefined. Now the gimplifier

Re: [PATCH] Handle GIMPLE_ASSIGNs with different vuse in gimple_equal_p

2013-11-11 Thread Richard Biener
On Mon, 11 Nov 2013, Tom de Vries wrote: On 11/11/13 10:50, Richard Biener wrote: On Sat, 9 Nov 2013, Tom de Vries wrote: Bootstrapped and regtested on x86_64. OK for trunk? Comments inline diff --git a/gcc/tree-ssa-tail-merge.c b/gcc/tree-ssa-tail-merge.c index

[patch] fix libstdc++/54562

2013-11-11 Thread Jonathan Wakely
This ensures that the standard timed mutexes use steady_clock for relative timeouts and the same clock as pthread_mutex_timedlock for absolute timeouts. I'm not adding a new test as the only ones I could come up with involve waiting for longer than is suitable in a testcase, and don't reliably

patch ping: diagnostics finalization and plugins

2013-11-11 Thread Basile Starynkevitch
Hello all, I'm pinging the patch http://gcc.gnu.org/ml/gcc-patches/2013-10/msg00056.html ## Index: gcc/toplev.c === --- gcc/toplev.c(revision 204671) +++ gcc/toplev.c(working copy) @@ -1968,11 +1968,13

Re: patch ping: diagnostics finalization and plugins

2013-11-11 Thread Diego Novillo
On Mon, Nov 11, 2013 at 8:36 AM, Basile Starynkevitch bas...@starynkevitch.net wrote: 2013-11-11 Basile Starynkevitch bas...@starynkevitch.net * toplev.c (toplev_main): Move PLUGIN_FINISH invocation before diagnostic_finish. OK. Diego.

Re: [PATCH, MPX, 2/X] Pointers Checker [5/25] Tree and gimple ifaces

2013-11-11 Thread Richard Biener
On Thu, Nov 7, 2013 at 10:07 PM, Ilya Enkovich enkovich@gmail.com wrote: 2013/11/7 Jeff Law l...@redhat.com: On 11/04/13 05:40, Richard Biener wrote: Effectively the bounds are passed on the side. Well, not exactly. I can see __bound_tmp.0_4 passed to access_and_store. I'm referring

Re: [PATCH, MPX, 2/X] Pointers Checker [10/25] Calls copy and verification

2013-11-11 Thread Richard Biener
On Fri, Nov 8, 2013 at 11:03 AM, Ilya Enkovich enkovich@gmail.com wrote: 2013/11/8 Richard Biener richard.guent...@gmail.com: On Thu, Nov 7, 2013 at 7:55 PM, Jeff Law l...@redhat.com wrote: On 11/07/13 04:50, Ilya Enkovich wrote: Hi, Here is an updated patch version. I think this

Re: [PATCH i386 4/8] [AVX512] [1/n] Add substed patterns.

2013-11-11 Thread Kirill Yukhin
Hello, On 05 Nov 16:05, Kirill Yukhin wrote: Is it ok with that change? Ping? -- Thanks, K

[PATCH][ARM] Fix control reached end of non-void function warning and boostrap

2013-11-11 Thread Kyrill Tkachov
Hi all, My patch last Friday introduced a warning about reaching the end of a non-void function which breaks bootstrap. On second thought, instead of breaking at the end of the comparisons handling, we should just return instead. Tested arm-none-eabi on qemu and checked the build log to make

Re: [PATCH][ARM] Fix control reached end of non-void function warning and boostrap

2013-11-11 Thread Ramana Radhakrishnan
On 11/11/13 13:48, Kyrill Tkachov wrote: Hi all, My patch last Friday introduced a warning about reaching the end of a non-void function which breaks bootstrap. On second thought, instead of breaking at the end of the comparisons handling, we should just return instead. Tested arm-none-eabi on

Re: [PATCH, MPX, 2/X] Pointers Checker [5/25] Tree and gimple ifaces

2013-11-11 Thread Ilya Enkovich
2013/11/11 Richard Biener richard.guent...@gmail.com: On Thu, Nov 7, 2013 at 10:07 PM, Ilya Enkovich enkovich@gmail.com wrote: 2013/11/7 Jeff Law l...@redhat.com: On 11/04/13 05:40, Richard Biener wrote: Effectively the bounds are passed on the side. Well, not exactly. I can see

Re: [PATCH, MPX, 2/X] Pointers Checker [10/25] Calls copy and verification

2013-11-11 Thread Ilya Enkovich
2013/11/11 Richard Biener richard.guent...@gmail.com: On Fri, Nov 8, 2013 at 11:03 AM, Ilya Enkovich enkovich@gmail.com wrote: 2013/11/8 Richard Biener richard.guent...@gmail.com: On Thu, Nov 7, 2013 at 7:55 PM, Jeff Law l...@redhat.com wrote: On 11/07/13 04:50, Ilya Enkovich wrote: Hi,

[PATCH] Fix asan regtest failures c-c++-common/asan/{memcmp-1.c,strncpy-overflow-1.c}

2013-11-11 Thread Dodji Seketeli
Hello, Since a couple of days I am seeing failure on the tests above on my Fedora system. The errors look like: FAIL: c-c++-common/asan/memcmp-1.c -O0 output pattern test, is = ==21832==ERROR: AddressSanitizer:

Re: [PATCH] Fix asan regtest failures c-c++-common/asan/{memcmp-1.c,strncpy-overflow-1.c}

2013-11-11 Thread Jakub Jelinek
On Mon, Nov 11, 2013 at 03:01:53PM +0100, Dodji Seketeli wrote: Since a couple of days I am seeing failure on the tests above on my Fedora system. The errors look like: FAIL: c-c++-common/asan/memcmp-1.c -O0 output pattern test, is

Re: [PATCH, MPX, 2/X] Pointers Checker [10/25] Calls copy and verification

2013-11-11 Thread Richard Biener
On Mon, Nov 11, 2013 at 3:00 PM, Ilya Enkovich enkovich@gmail.com wrote: 2013/11/11 Richard Biener richard.guent...@gmail.com: On Fri, Nov 8, 2013 at 11:03 AM, Ilya Enkovich enkovich@gmail.com wrote: 2013/11/8 Richard Biener richard.guent...@gmail.com: On Thu, Nov 7, 2013 at 7:55 PM,

Re: [PATCH] preprocessor/58580 - preprocessor goes OOM with warning for zero literals

2013-11-11 Thread Jakub Jelinek
On Mon, Nov 11, 2013 at 11:19:21AM +0100, Dodji Seketeli wrote: .../c-c++-common/cpp/warning-zero-in-literals-1.c | Bin 0 - 240 bytes libcpp/include/line-map.h | 8 + libcpp/line-map.c | 40 ++ 8 files changed, 585 insertions(+),

Re: Some wide-int review comments

2013-11-11 Thread Kenneth Zadeck
On 11/11/2013 06:49 AM, Richard Biener wrote: On Sat, Nov 9, 2013 at 3:23 PM, Kenneth Zadeck zad...@naturalbridge.com wrote: On 11/08/2013 05:30 AM, Richard Sandiford wrote: From tree-vrp.c: @@ -1893,6 +1884,10 @@ vrp_int_const_binop (enum tree_code code /* If the singed operation

[PATCH] Fix failing assertion in calls.c:store_unaligned_arguments_into_pseudos

2013-11-11 Thread Ulrich Weigand
Hello, when implementing the new ABI for powerpc64le-linux, I ran into an assertion failure in store_unaligned_arguments_into_pseudos: gcc_assert (args[i].partial % UNITS_PER_WORD == 0); This can happen in the new ABI since we pass homogeneous structures consisting of soleley

[wwwdocs] backend - back end

2013-11-11 Thread Gerald Pfeifer
Working to address a user question, I noticed that many of our pages use the spelling of backend when http://gcc.gnu.org/codingconventions.html suggest back end (noun) and back-end (adjective). Joseph, if you confirm that back end it is (as a noun), I'll apply the patch below. Gerald Index:

[PATCH] Avoid duplicate calls to REG_PARM_STACK_SPACE

2013-11-11 Thread Ulrich Weigand
Hello, this is another tweak to the middle-end to help support the new powerpc64le-linux ABI. In the new ABI, we make a distinction between functions that pass all arguments solely in registers, and those that do not. Only when calling one the latter type (or a varags routine) does the caller

[PATCH, rs6000] Fix little-endian bug in linux-unwind.h

2013-11-11 Thread Ulrich Weigand
Hello, this fixes another issue related to CR unwinding, this time only on 64-bit little-endian systems. The problem is linux-unwind.h:ppc_fallback_frame_state, which notes that the kernel places the CR value in the low bits of a 64-bit field in the signal handler frame; but the offset of that

[PATCH, rs6000] Fix corner case in unwinding CR values

2013-11-11 Thread Ulrich Weigand
Hello, this patch fixes a corner case bug in unwinding CR values. The underlying problem is as follows: In order to save the CR in the prologue, two insns are necessary. The first is a mfcr that loads the CR value into a GPR, and the second is a store of the GPR to the stack. The back-end

[PATCH] Remove dead code in input_gimple_stmt

2013-11-11 Thread Richard Biener
The following patch removes now dead code from input_gimple_stmt (which also could be quite slow). Type mismatches can only occur at the decl level after the new tree merging code went in and those are handed by wrapping all decls in MEM_REFs to transparently have them view-converted.

[PATCH, rs6000] ELFv2 ABI preparation: Refactor call expanders

2013-11-11 Thread Ulrich Weigand
Hello, this patch refactors code to expand calls in preparation for adding support for the new little-endian ABI. Currently, the call expanders always generate the same RTX pattern, which is matched by different insns patterns depending on circumstances (ABI, local vs. global calls, ...). This

[PATCH, rs6000] ELFv2 ABI preparation: Refactor rs6000_function_arg

2013-11-11 Thread Ulrich Weigand
Hello, another patch in preparation for the new ABI. When calling a function in the absence of a prototype, we need to pass arguments that are normally passed in floating-point or vector registers also on the stack and/or in GPRs. The code currently handling this in rs6000_function_arg is

[PATCH] Fix alias machinery to deal with DECL_BIT_FIELD_REPRESENTATIVE in COMPONENT_REFs

2013-11-11 Thread Richard Biener
The following patch is necessary to make DECL_BIT_FIELD_REPRESENTATIVE useable in COMPONENT_REFs (which is the easiest way to get some bitfield lowering). An earlier patch passed bootstrapped and testing on x86_64-unknown-linux-gnu (with bitfield lowering), re-testing after minor changes.

[PATCH, rs0000] ELFv2 ABI preparation: Refactor some uses of ABI_AIX

2013-11-11 Thread Ulrich Weigand
Hello, this is another patch to prepare for the new ABI. Since this will introduce a new setting of DEFAULT_ABI, which will have to be treated like ABI_AIX in many cases, it would be better if there were fewer explicit references to ABI_AIX in the back-end. This patch eliminates a number of

[PATCH, rs6000] ELFv2 ABI preparation: Remove USE_FP/ALTIVEC_FOR_ARG_P type arg

2013-11-11 Thread Ulrich Weigand
Hello, another patch in preparation for the new ABI. USE_FP_FOR_ARG_P and USE_ALTIVEC_FOR_ARG_P take a TYPE argument which they never use. Since passing a correct TYPE for the homogeneous struct case would be a bit problematic, it seems cleaner to just remove the unused argument. No change in

[PATCH, rs6000] ELFv2 ABI preparation: Refactor rs6000_arg_partial_bytes

2013-11-11 Thread Ulrich Weigand
Hello, this is the final patch preparing for the new ABI. The logic in rs6000_arg_partial_bytes is a bit complex, since it apparently still contains remnants from the time where this routine was used even for arguments that are returned both in GPRs and FPRs/VRs (*and* memory). These days, all

Re: [PING^2] Re: [PATCH] Caller instrumentation with -finstrument-calls

2013-11-11 Thread Jan Hubicka
Hi, I apologize for long time for the review. diff --git a/gcc/c-family/c-common.c b/gcc/c-family/c-common.c index 8f7f5e5..f3ad003 100644 --- a/gcc/c-family/c-common.c +++ b/gcc/c-family/c-common.c @@ -343,6 +343,8 @@ static tree handle_tls_model_attribute (tree *, tree, tree, int,

Re: RFA: Fix PR middle-end/59049

2013-11-11 Thread Jakub Jelinek
On Fri, Nov 08, 2013 at 05:11:39PM +, Joern Rennecke wrote: On 8 November 2013 15:50, Steven Bosscher stevenb@gmail.com wrote: Even with the gimple opts disabled, a const-const comparison would normally be folded by the RTL expanders. Well, in this spirit, attached is another way

[PATCH, rs6000] ELFv2 ABI 3/8: Track single CR fields in DWARF CFI

2013-11-11 Thread Ulrich Weigand
Hello, this patch adds another ELFv2 ABI feature: explicit tracking of CR fields in DWARF CFI. In the current ABI, DWARF CFI contains only a single record describing the save location of the whole CR field. It is implicit that all (or at least all call-clobbered) fields are present at that

[PATCH, rs6000] ELFv2 ABI 2/8: Remove function descriptors

2013-11-11 Thread Ulrich Weigand
Hello, this patch adds the first major feature of the ELFv2 ABI: removal of function descriptors. In the current ABI, it is the responsibility of a caller to set up the TOC pointer needed by the callee by loading the correct value into r2. This typically happens in one of these ways: - For a

Re: Some wide-int review comments

2013-11-11 Thread Richard Biener
On Mon, Nov 11, 2013 at 3:26 PM, Kenneth Zadeck zad...@naturalbridge.com wrote: On 11/11/2013 06:49 AM, Richard Biener wrote: On Sat, Nov 9, 2013 at 3:23 PM, Kenneth Zadeck zad...@naturalbridge.com wrote: On 11/08/2013 05:30 AM, Richard Sandiford wrote: From tree-vrp.c: @@ -1893,6

Re: PING^3 Re: [PATCH] Add -fno-instrument-function v2

2013-11-11 Thread Andi Kleen
Andi Kleen a...@firstfloor.org writes: PING^3 Since it doesn't look like a generic solution for the LTO options problem will appear this development cycle, I would still like to pursue this option for 4.9. This would help fixing parts of the linux kernel LTO build. Can someone please review

[PATCH, rs6000] ELFv2 ABI 1/8: Add options and infrastructure

2013-11-11 Thread Ulrich Weigand
Hello, this is the first patch in the series to add support for the ELFv2 ABI. The ELFv2 ABI is the intended ABI for the new powerpc64le-linux port. However, it is not inherently tied to the byte order; it it possible in principle to use the ELFv2 ABI in big-endian mode too. Therefore, it is

[PATCH, rs6000] ELFv2 ABI 4/8: Struct passing calling convention changes

2013-11-11 Thread Ulrich Weigand
Hello, this patch implements the new struct calling convention for ELFv2. With the new ABI, so-called homogeneous aggregates, i.e. struct, arrays, or unions that (recursively) contain only elements of the same floating- point or vector type are passed as if those elements were passed as separate

[PATCH, rs6000] ELFv2 ABI 7/8: Eliminate some stack frame fields

2013-11-11 Thread Ulrich Weigand
Hello, this is the second part of reducing stack space consumption for the ELFv2 ABI: the old ABI reserved six words in every stack frame for various purposes, and two of those were basically unused: one word for compiler use and one word for linker use. Since neither the compiler nor the linker

[PATCH, rs6000] ELFv2 ABI 5/8: Struct return calling convention changes

2013-11-11 Thread Ulrich Weigand
Hello, analogously to the previous patch handling homogeneous aggregates as arguments, this patch handles such aggregates as return values. In addition, the ELFv2 ABI returns any aggregate of up to 16 bytes in size (that is not otherwise handled) in up to two GPRs. In either case, the return

Re: [PATCH, MPX, 2/X] Pointers Checker [10/25] Calls copy and verification

2013-11-11 Thread Ilya Enkovich
2013/11/11 Richard Biener richard.guent...@gmail.com: On Mon, Nov 11, 2013 at 3:00 PM, Ilya Enkovich enkovich@gmail.com wrote: 2013/11/11 Richard Biener richard.guent...@gmail.com: On Fri, Nov 8, 2013 at 11:03 AM, Ilya Enkovich enkovich@gmail.com wrote: 2013/11/8 Richard Biener

[PATCH, rs6000] ELFv2 ABI 6/8: Eliminate register save area in some cases

2013-11-11 Thread Ulrich Weigand
Hello, the final area of changes implemented by the ELFv2 ABI is stack space consumption. Reducing the miminum stack size requirements is important for environments where stack space is restricted, e.g. Linux kernel code, or where we have a large number of stacks (e.g. heavily multi-threaded

[PATCH, rs6000] ELFv2 ABI 8/8: Enable by default on little-endian

2013-11-11 Thread Ulrich Weigand
Hello, this patch finally throws the switch and enables the ELFv2 ABI by default on powerpc64le-linux. Bye, Ulrich ChangeLog: 2013-11-11 Ulrich Weigand ulrich.weig...@de.ibm.com * config/rs6000/sysv4le.h (LINUX64_DEFAULT_ABI_ELFv2): Define. Index: gcc/gcc/config/rs6000/sysv4le.h

Re: [PATCH] Time profiler - phase 1

2013-11-11 Thread Jan Hubicka
+2013-10-29 Martin Liska marxin.li...@gmail.com + Jan Hubicka j...@suse.cz + + * cgraph.c (dump_cgraph_node): Profile dump added. + * cgraph.h (struct cgraph_node): New time profile variable added. + * cgraphclones.c

Re: [RFC] libgcov.c re-factoring and offline profile-tool

2013-11-11 Thread Jan Hubicka
2013-11-04 Rong Xu x...@google.com * libgcc/libgcov.c: Delete as part of re-factoring. * libgcc/libgcov-profiler.c (__gcov_interval_profiler): Moved from libgcov.c (__gcov_pow2_profiler): Ditto. (__gcov_one_value_profiler_body): Ditto.

Re: Some wide-int review comments

2013-11-11 Thread Kenneth Zadeck
On 11/11/2013 09:42 AM, Richard Biener wrote: On Mon, Nov 11, 2013 at 3:26 PM, Kenneth Zadeck zad...@naturalbridge.com wrote: On 11/11/2013 06:49 AM, Richard Biener wrote: On Sat, Nov 9, 2013 at 3:23 PM, Kenneth Zadeck zad...@naturalbridge.com wrote: On 11/08/2013 05:30 AM, Richard Sandiford

Re: [PATCH, MPX, 2/X] Pointers Checker [10/25] Calls copy and verification

2013-11-11 Thread Richard Biener
On Mon, Nov 11, 2013 at 3:45 PM, Ilya Enkovich enkovich@gmail.com wrote: 2013/11/11 Richard Biener richard.guent...@gmail.com: On Mon, Nov 11, 2013 at 3:00 PM, Ilya Enkovich enkovich@gmail.com wrote: 2013/11/11 Richard Biener richard.guent...@gmail.com: On Fri, Nov 8, 2013 at 11:03

Recent Go patch broke CentOS 5.10 bootstrap

2013-11-11 Thread Uros Bizjak
Hello! Building latest gcc+go on CentOS 5.10 breaks with following build failure: ../../../gcc-svn/trunk/libgo/go/net/fd_unix.go:414:72: error: reference to undefined identifier ‘syscall.F_DUPFD_CLOEXEC’ r0, _, e1 := syscall.Syscall(syscall.SYS_FCNTL, uintptr(fd), syscall.F_DUPFD_CLOEXEC, 0)

Re: [RFC] libgcov.c re-factoring and offline profile-tool

2013-11-11 Thread Jan Hubicka
Here is the patch that includes profile-tool. Profile-tool now has two functions: merge and rewrite. I'll add diff later. Compiler is tested with spec2006 and profiledbootstrap. profile-tool is tested with spec2006 profiles. Hi, it would be nice if you could elaborate bit more on the tool

Re: [PATCH] decide edge's hotness when there is profile info

2013-11-11 Thread Jan Hubicka
2013-11-08 Teresa Johnson tejohn...@google.com Jan Hubicka j...@suse.cz * predict.c (drop_profile): New function. (handle_missing_profiles): Ditto. (counts_to_freqs): Don't overwrite estimated frequencies when function has no profile counts.

Re: Some wide-int review comments

2013-11-11 Thread Richard Biener
On Mon, Nov 11, 2013 at 4:04 PM, Kenneth Zadeck zad...@naturalbridge.com wrote: On 11/11/2013 09:42 AM, Richard Biener wrote: On Mon, Nov 11, 2013 at 3:26 PM, Kenneth Zadeck zad...@naturalbridge.com wrote: On 11/11/2013 06:49 AM, Richard Biener wrote: On Sat, Nov 9, 2013 at 3:23 PM,

Re: Some wide-int review comments

2013-11-11 Thread Kenneth Zadeck
On 11/11/2013 10:04 AM, Kenneth Zadeck wrote: On 11/11/2013 09:42 AM, Richard Biener wrote: On Mon, Nov 11, 2013 at 3:26 PM, Kenneth Zadeck zad...@naturalbridge.com wrote: On 11/11/2013 06:49 AM, Richard Biener wrote: On Sat, Nov 9, 2013 at 3:23 PM, Kenneth Zadeck zad...@naturalbridge.com

Re: Some wide-int review comments

2013-11-11 Thread Kenneth Zadeck
On 11/11/2013 10:29 AM, Richard Biener wrote: On Mon, Nov 11, 2013 at 4:04 PM, Kenneth Zadeck zad...@naturalbridge.com wrote: On 11/11/2013 09:42 AM, Richard Biener wrote: On Mon, Nov 11, 2013 at 3:26 PM, Kenneth Zadeck zad...@naturalbridge.com wrote: On 11/11/2013 06:49 AM, Richard Biener

[gomp4] Fix two typos

2013-11-11 Thread Jakub Jelinek
Hi! Dunno how I've managed to break the branch on Friday, anyway, here is an obvious fix, committed to the branch. 2013-11-11 Jakub Jelinek ja...@redhat.com * tree-vect-data-refs.c (vect_analyze_data_refs): Check loop-safelen rather than loop-simdlen. *

Re: [PATCH] decide edge's hotness when there is profile info

2013-11-11 Thread Teresa Johnson
On Mon, Nov 11, 2013 at 7:23 AM, Jan Hubicka hubi...@ucw.cz wrote: 2013-11-08 Teresa Johnson tejohn...@google.com Jan Hubicka j...@suse.cz * predict.c (drop_profile): New function. (handle_missing_profiles): Ditto. (counts_to_freqs): Don't overwrite

Re: [RFA][PATCH] Isolate erroneous paths optimization

2013-11-11 Thread Jeff Law
On 11/11/13 05:16, Richard Biener wrote: On Mon, Nov 11, 2013 at 4:11 AM, Jeff Law l...@redhat.com wrote: On 11/10/13 05:34, Eric Botcazou wrote: But I think that you cannot transform foo () { *0 = 1; } to __builtin_trap as you can catch the trap via an exception handler in a caller

Re: [PATCH] make has_gate and has_execute useless

2013-11-11 Thread Trevor Saunders
On Mon, Nov 11, 2013 at 12:58:36PM +0100, Richard Biener wrote: On Mon, Nov 11, 2013 at 1:39 AM, Trevor Saunders tsaund...@mozilla.com wrote: On Fri, Nov 08, 2013 at 10:37:00AM +0100, Richard Biener wrote: On Thu, Nov 7, 2013 at 5:00 PM, tsaund...@mozilla.com wrote: From: Trevor

Re: [PATCH] preprocessor/58580 - preprocessor goes OOM with warning for zero literals

2013-11-11 Thread Dodji Seketeli
Jakub Jelinek ja...@redhat.com writes: -OBJS-libcommon = diagnostic.o diagnostic-color.o pretty-print.o intl.o input.o version.o +OBJS-libcommon = diagnostic.o diagnostic-color.o pretty-print.o intl.o vec.o input.o version.o Too long line? Fixed in my local copy of the patch, thanks.

Re: [PATCH] Fix asan regtest failures c-c++-common/asan/{memcmp-1.c,strncpy-overflow-1.c}

2013-11-11 Thread Dodji Seketeli
Jakub Jelinek ja...@redhat.com writes: On Mon, Nov 11, 2013 at 03:01:53PM +0100, Dodji Seketeli wrote: Since a couple of days I am seeing failure on the tests above on my Fedora system. The errors look like: FAIL: c-c++-common/asan/memcmp-1.c -O0 output pattern test, is

Re: [PATCH] decide edge's hotness when there is profile info

2013-11-11 Thread Jan Hubicka
I have a warning like that already in drop_profile(). Is that I think it should be warning (or silent) for COMDAT and error/note for other functions (depending on flag_profile_correction). I guess drop_profile is better place for it indeed. sufficient? Also, Steven Bosscher suggested putting

Re: [RFA][PATCH] Isolate erroneous paths optimization

2013-11-11 Thread Jeff Law
On 11/11/13 02:33, Eric Botcazou wrote: However, that brings up an couple interesting questions. Let's say we find a NULL pointer which reaches a return statement in a function which is marked as returns_nonnull. In that case there is no dereference. Presumably for that kind of scenario we'll

Re: [RFA][PATCH] Isolate erroneous paths optimization

2013-11-11 Thread Jakub Jelinek
On Mon, Nov 11, 2013 at 09:24:27AM -0700, Jeff Law wrote: On 11/11/13 02:33, Eric Botcazou wrote: However, that brings up an couple interesting questions. Let's say we find a NULL pointer which reaches a return statement in a function which is marked as returns_nonnull. In that case there

Re: [RFA][PATCH] Isolate erroneous paths optimization

2013-11-11 Thread Ian Lance Taylor
On Mon, Nov 11, 2013 at 8:27 AM, Jakub Jelinek ja...@redhat.com wrote: On Mon, Nov 11, 2013 at 09:24:27AM -0700, Jeff Law wrote: On 11/11/13 02:33, Eric Botcazou wrote: However, that brings up an couple interesting questions. Let's say we find a NULL pointer which reaches a return statement

Re: PING Cilk Plus failures on non-LTO targets

2013-11-11 Thread David Edelsohn
On Mon, Nov 4, 2013 at 11:06 AM, David Edelsohn dje@gmail.com wrote: Balaji, I am seeing a large number of libcilkrts failures on AIX. These all are of the form: Executing on host: /tmp/20131103/gcc/xgcc -B/tmp/20131103/gcc/ /nasfarm/edelsohn

Re: [patch] Add CONSTRUCTOR_NO_CLEARING flag

2013-11-11 Thread Eric Botcazou
Ok. Can you update doc/generic.texi? Thanks, done (it was still talking about TREE_LIST). -- Eric Botcazou

Re: [PATCH] decide edge's hotness when there is profile info

2013-11-11 Thread Teresa Johnson
On Mon, Nov 11, 2013 at 8:22 AM, Jan Hubicka hubi...@ucw.cz wrote: I have a warning like that already in drop_profile(). Is that I think it should be warning (or silent) for COMDAT and error/note for other functions (depending on flag_profile_correction). I guess drop_profile is better place

Re: [patch] Fix PR ada/35998

2013-11-11 Thread Eric Botcazou
Due to the different interfaces of int_size_in_bytes and simple_type_size_in_bits (and 'size' in add_byte_size_attribute being unsigned and not [unsigned] HWI) it would be cleaner to add an early return after the call to int_size_in_bytes if its return value is -1 (and make sure the return

Re: [PATCH] Optional alternative base_expr in finding basis for CAND_REFs

2013-11-11 Thread Bill Schmidt
Hi Yufeng, The idea is a good one but I don't like your implementation of adding an extra expression parameter to look at on the find_basis_for_candidate lookup. This goes against the design of the pass and may not be sufficiently general (might there be situations where a third possible basis

  1   2   >