Re: [PATCH][2/n] Always 64bit-HWI cleanups

2014-06-02 Thread Richard Biener
On Wed, 28 May 2014, Richard Sandiford wrote: > Richard Biener writes: > > The following changes the configury to insist on [u]int64_t being > > available and removes the very old __int64 case. Autoconf doesn't > > check for it, support came in via a big merge in Dec 2002, r60174, > > and it was

[PATCH] Fix PR61378

2014-06-02 Thread Richard Biener
Committed as obvious. Richard. 2014-06-02 Richard Biener PR tree-optimization/61378 * tree-ssa-sccvn.c (vn_reference_lookup_3): Initialize valueized_anything. Index: gcc/tree-ssa-sccvn.c === *** gcc/tree

GCC 4.7.4 Status Report, branch frozen for release (candidate)

2014-06-02 Thread Richard Biener
Status == The GCC 4.7 branch is now frozen as I am preparing a first release candidate for GCC 4.7.4. All changes from now on require release manager approval. After GCC 4.7.4 is released the branch will be closed. Previous Report === https://gcc.gnu.org/ml/gcc/2013-04/msg001

RE: [PATCH][MIPS] Implement O32 FPXX ABI (GCC)

2014-06-02 Thread Matthew Fortune
Hi Richard, I've realised that I may need to do 'something' to prevent GCC from loading or storing DFmode/DImode values to/from FPRs using pairs of SWC1/LWC1 when using an unaligned address. Initial tests show that when loading from an unaligned address (4-byte aligned) then GCC loads the two halv

Re: [PATCH, sched] Cleanup and improve multipass_dfa_lookahead_guard

2014-06-02 Thread Andreas Schwab
Regtested on ia64-suse-linux and installed as obvious. Andreas. * config/ia64/ia64.c (ia64_first_cycle_multipass_dfa_lookahead_guard): Check pending_data_specs first. diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c index 118e5bf..4c5390b 100644 --- a/gcc/conf

Re: [PATCH] Do not build libsanitizer also for powerpc*-*-linux*

2014-06-02 Thread Jakub Jelinek
On Mon, Jun 02, 2014 at 10:22:11AM +0400, Yury Gribov wrote: > Looks like now function does not return anything for ARM case? I'd > say we should replace this pc = ... with return like all other > cases, the code is just asking for trouble. But it should be return (pc & ~(uptr)1) - 1; right? >

[PATCH] Testcase for PR61346

2014-06-02 Thread Richard Biener
Committed. Richard. 2014-06-02 Richard Biener PR tree-optimization/61346 * gcc.dg/torture/pr61346.c: New testcase. Index: gcc/testsuite/gcc.dg/torture/pr61346.c === --- gcc/testsuite/gcc.dg/torture/pr61346.c

Re: [PATCH] Do not build libsanitizer also for powerpc*-*-linux*

2014-06-02 Thread Yury Gribov
On 06/02/2014 11:56 AM, Jakub Jelinek wrote: Looks like now function does not return anything for ARM case? I'd say we should replace this pc = ... with return like all other cases, the code is just asking for trouble. But it should be return (pc & ~(uptr)1) - 1; right? Yes, I had somethin

Re: [PATCH][MIPS] Implement O32 FPXX ABI (GCC)

2014-06-02 Thread Richard Sandiford
Matthew Fortune writes: > I've realised that I may need to do 'something' to prevent GCC from loading or > storing DFmode/DImode values to/from FPRs using pairs of SWC1/LWC1 when using > an unaligned address. Initial tests show that when loading from an unaligned > address (4-byte aligned) then GC

[PATCH] Fix PR ipa/61190

2014-06-02 Thread Bernd Edlinger
Hi, the test case g++.old-deja/g++.mike/p4736b.C is mis-compiled with with all optimization levels, except -O0 and -Og. This probably started with gcc 4.7.x. The constructor Main::Main() is first inlined and then completely optimized away in the dce1 pass. But the thunk is still using the vtable,

Re: [PATCH][2/n] Always 64bit-HWI cleanups

2014-06-02 Thread Richard Sandiford
Richard Biener writes: > On Wed, 28 May 2014, Richard Sandiford wrote: > >> Richard Biener writes: >> > The following changes the configury to insist on [u]int64_t being >> > available and removes the very old __int64 case. Autoconf doesn't >> > check for it, support came in via a big merge in D

Re: [PATCH][2/n] Always 64bit-HWI cleanups

2014-06-02 Thread Richard Biener
On Mon, 2 Jun 2014, Richard Sandiford wrote: > Richard Biener writes: > > On Wed, 28 May 2014, Richard Sandiford wrote: > > > >> Richard Biener writes: > >> > The following changes the configury to insist on [u]int64_t being > >> > available and removes the very old __int64 case. Autoconf doesn

Re: [PATCH][2/n] Always 64bit-HWI cleanups

2014-06-02 Thread Richard Sandiford
Richard Biener writes: > On Mon, 2 Jun 2014, Richard Sandiford wrote: > >> Richard Biener writes: >> > On Wed, 28 May 2014, Richard Sandiford wrote: >> > >> >> Richard Biener writes: >> >> > The following changes the configury to insist on [u]int64_t being >> >> > available and removes the very

Re: [PATCH] Do not build libsanitizer also for powerpc*-*-linux*

2014-06-02 Thread Ramana Radhakrishnan
On Mon, Jun 2, 2014 at 8:56 AM, Jakub Jelinek wrote: > On Mon, Jun 02, 2014 at 10:22:11AM +0400, Yury Gribov wrote: >> Looks like now function does not return anything for ARM case? I'd >> say we should replace this pc = ... with return like all other >> cases, the code is just asking for trouble.

[PATCH] Make HOST_WIDE_INT underlying type match int64_t, adjust printing macros again

2014-06-02 Thread Richard Biener
This computes the underlying type of int64_t in a configure check and uses that for HOST_WIDE_INT. This makes sure we can use the PRI?64 macros from inttypes.h for HOST_WIDE_INT_PRINT_*, which the following patch re-instantiates. The patch also makes sure inttypes.h defines PRId64 and if not, pr

Re: [PATCH] Do not build libsanitizer also for powerpc*-*-linux*

2014-06-02 Thread Jakub Jelinek
On Mon, Jun 02, 2014 at 10:24:32AM +0100, Ramana Radhakrishnan wrote: > On Mon, Jun 2, 2014 at 8:56 AM, Jakub Jelinek wrote: > > On Mon, Jun 02, 2014 at 10:22:11AM +0400, Yury Gribov wrote: > >> Looks like now function does not return anything for ARM case? I'd > >> say we should replace this pc =

Re: [AArch64/ARM 2/3] Detect EXT patterns to vec_perm_const, use for EXT intrinsics

2014-06-02 Thread Alan Lawrence
Yes, reproduced. Seems the mid-end doesn't elide no-op masks at -O0 after all... Fix in progress, think it's almost (tho not quite) simply a bad assertion. --Alan Christophe Lyon wrote: Hi Alan This causes g++ to ICE on pr59378 test, for aarch64 targets: http://cbuild.validation.linaro.org/b

Re: [PATCH] Make HOST_WIDE_INT underlying type match int64_t, adjust printing macros again

2014-06-02 Thread Jakub Jelinek
On Mon, Jun 02, 2014 at 11:24:23AM +0200, Richard Biener wrote: > 2014-06-02 Richard Biener > > * configure.ac: Check whether the underlying type of int64_t > is long or long long. > * configure: Regenerate. > * config.in: Likewise. > * hwint.h (HOST_WIDE_INT): Mat

Re: [PATCH] Do not build libsanitizer also for powerpc*-*-linux*

2014-06-02 Thread Yury Gribov
Why the -1 ? No ARM or Thumb instruction is 1 byte long. Instructions are 4 bytes long if in ARM state and could be 2 or 4 bytes if Thumb state. The -1 just points to the middle of previous instruction, so that supposedly it can be looked up in debug info etc. Right, that works quite well wit

[patch,avr] atmel avr new devices set-1

2014-06-02 Thread S, Pitchumani
Hi, Attached patch adds support for Atmel ATA devices (ata6616c, ata6617c, ata664251, ata6612c, ata6613c and ata6614q). Please commit if the patch is OK. I do not have commit access. Regards, Pitchumani gcc/ChangeLog 2014-06-02 Vishnu K S Pitchumani Sivanupandi * config/avr

Re: Eliminate write-only variables

2014-06-02 Thread Richard Biener
On Sat, May 31, 2014 at 8:21 PM, Sandra Loosemore wrote: > On 05/20/2014 04:56 AM, Richard Biener wrote: >> >> On Tue, May 20, 2014 at 6:29 AM, Jan Hubicka wrote: On 05/18/2014 08:45 PM, Sandra Loosemore wrote: > > On 05/18/2014 02:59 PM, Jan Hubicka wrote: >> >> For cas

Re: [PATCH] Do not build libsanitizer also for powerpc*-*-linux*

2014-06-02 Thread Ramana Radhakrishnan
On Mon, Jun 2, 2014 at 10:44 AM, Yury Gribov wrote: >>> Why the -1 ? No ARM or Thumb instruction is 1 byte long. Instructions >>> are 4 bytes long if in ARM state and could be 2 or 4 bytes if Thumb >>> state. >> >> >> The -1 just points to the middle of previous instruction, >> so that supposedly

Re: [PATCH] Fix PR ipa/61190

2014-06-02 Thread Richard Biener
On Mon, Jun 2, 2014 at 11:00 AM, Bernd Edlinger wrote: > Hi, > > the test case g++.old-deja/g++.mike/p4736b.C is mis-compiled with with all > optimization levels, except -O0 and -Og. This probably started with gcc 4.7.x. > > The constructor Main::Main() is first inlined and then completely optimiz

RE: [PATCH] Fix PR ipa/61190

2014-06-02 Thread Bernd Edlinger
Hi, On Mon, 2 Jun 2014 12:06:12, Richard Biener wrote: > > On Mon, Jun 2, 2014 at 11:00 AM, Bernd Edlinger > wrote: >> Hi, >> >> the test case g++.old-deja/g++.mike/p4736b.C is mis-compiled with with all >> optimization levels, except -O0 and -Og. This probably started with gcc >> 4.7.x. >> >> T

[PATCH, i386, Pointer Bounds Checker 17/x] Pointer bounds constants support

2014-06-02 Thread Ilya Enkovich
Hi, This patch adds support for pointer bounds constants to be used as DECL_INITIAL for constant bounds (like zero bounds). Bootstrapped and tested on linux-x86_64. Thanks, Ilya -- gcc/ 2014-05-30 Ilya Enkovich * emit-rtl.c (immed_double_const): Support MODE_POINTER_BOUNDS.

Re: [PATCH, i386, Pointer Bounds Checker 11/x] Keep bounds initial values

2014-06-02 Thread Ilya Enkovich
On 30 May 10:45, Jeff Law wrote: > On 05/29/14 04:53, Ilya Enkovich wrote: > >Hi, > > > >This patch tries to keep bounds initial values when it may be needed. Even > >if initial value is not fully known (e.g. we know only low bound) it still > >may help to remove some redundant checks. > > > >Bo

Re: [RFC] optimize x - y cmp 0 with undefined overflow

2014-06-02 Thread Richard Biener
On Fri, May 30, 2014 at 10:48 AM, Eric Botcazou wrote: >> I'd say we still handle "basic" symbolic range ops in >> extract_range_from_binary_1 >> but in extract_range_from_binary_expr for a symbolic op0 we try to simplify >> it with both [op1, op1] and with the value-range of op1 until we get a >>

Re: [RFC] optimize x - y cmp 0 with undefined overflow

2014-06-02 Thread Richard Biener
On Mon, Jun 2, 2014 at 12:36 PM, Richard Biener wrote: > On Fri, May 30, 2014 at 10:48 AM, Eric Botcazou wrote: >>> I'd say we still handle "basic" symbolic range ops in >>> extract_range_from_binary_1 >>> but in extract_range_from_binary_expr for a symbolic op0 we try to simplify >>> it with bot

Re: [PATCH, i386, Pointer Bounds Checker 12/x] Recognize instrumented special functions

2014-06-02 Thread Ilya Enkovich
On 30 May 10:46, Jeff Law wrote: > On 05/29/14 05:00, Ilya Enkovich wrote: > >Hi, > > > >This patch allows to recognize instrumented call to special function by > >using the original function name for recognition. > > > >Bootstrapped and tested on linux-x86_64. > > > >Thanks, > >Ilya > >-- > >gcc/

Re: [PATCH] Make HOST_WIDE_INT underlying type match int64_t, adjust printing macros again

2014-06-02 Thread Richard Biener
On Mon, 2 Jun 2014, Jakub Jelinek wrote: > On Mon, Jun 02, 2014 at 11:24:23AM +0200, Richard Biener wrote: > > 2014-06-02 Richard Biener > > > > * configure.ac: Check whether the underlying type of int64_t > > is long or long long. > > * configure: Regenerate. > > * config.in:

Re: [PATCH/AARCH64] Fix PR 61345: rtx_cost ICEing on simple code

2014-06-02 Thread Marcus Shawcroft
On 28 May 2014 23:58, Andrew Pinski wrote: > Hi, > The problem here is aarch64_rtx_costs for IF_THEN_ELSE does not > handle the case where the first operand is a non comparison. This > happens when the combine is combing a few RTLs and calling > set_src_cost to check the costs of the newly crea

Re: [PATCH, Pointer Bounds Checker 13/x] Early versioning

2014-06-02 Thread Ilya Enkovich
On 30 May 10:59, Jeff Law wrote: > On 05/29/14 05:05, Ilya Enkovich wrote: > >Hi, > > > >This patch allows to perform function versioning when some structures are > >not available yet. It is required to make clones for Pointer Bounds Checker > >right after SSA build. > > > >Bootstrapped and test

Re: [PATCH] Do not build libsanitizer also for powerpc*-*-linux*

2014-06-02 Thread Konstantin Serebryany
Committed as r210012, please don't forget to add llvm-commits to CC next time (I did not see the message) Thanks! On Mon, Jun 2, 2014 at 9:57 AM, Yury Gribov wrote: >>> There was some discussion on what to do, but has there been a decision on >>> how to fix this yet? Or is it fixed upstream and

Re: [PATCH AArch64 1/2] Correct signedness of builtins, remove casts from arm_neon.h

2014-06-02 Thread Marcus Shawcroft
On 29 May 2014 13:44, Alan Lawrence wrote: > This adds three new sets of qualifiers to aarch64-builtins.c, and uses the > already-present-but-unused USHIFTIMM. > > gcc/ChangeLog: > > * gcc/config/aarch64/aarch64-builtins.c > (aarch64_types_binop_uus_qualifiers, > aarch64_ty

Re: [PATCH AArch64 2/2] Correct signedness of builtins, remove casts from arm_neon.h

2014-06-02 Thread Marcus Shawcroft
On 29 May 2014 13:47, Alan Lawrence wrote: > This adds another set of qualifiers to aarch64-builtins.c, and removes more > casts from arm_neon.h, for the suqadd, ushl, urshl, urshr_n, ushll_n, and > sshl intrinsics. > > gcc/ChangeLog: > > * gcc/config/aarch64/aarch64-builtins.c > (

RE: [PATCH][MIPS] Implement O32 FPXX ABI (GCC)

2014-06-02 Thread Matthew Fortune
Richard Sandiford writes: > Matthew Fortune writes: > > I've realised that I may need to do 'something' to prevent GCC from > loading or > > storing DFmode/DImode values to/from FPRs using pairs of SWC1/LWC1 > when using > > an unaligned address. Initial tests show that when loading from an > una

Re: [PATCH][MIPS] Implement O32 FPXX ABI (GCC)

2014-06-02 Thread Richard Sandiford
Matthew Fortune writes: > Richard Sandiford writes: >> Matthew Fortune writes: >> > I've realised that I may need to do 'something' to prevent GCC from >> loading or >> > storing DFmode/DImode values to/from FPRs using pairs of SWC1/LWC1 >> when using >> > an unaligned address. Initial tests sho

[GSoC][match-and-simplify] add bitwise patterns to match.pd

2014-06-02 Thread Prathamesh Kulkarni
Hi, I have tried to add few bitwise patterns from tree-ssa-forwprop.c:simplify_bitwise_binary and the patterns mentioned in Simplifications wiki (https://gcc.gnu.org/wiki/Simplifications). How to write a test-case to match multiple gimple statements ? Example: For the pattern: ~x | ~y -> ~(x & y

Re: [PATCH, Pointer Bounds Checker 14/x] Pointer Bounds Checker passes

2014-06-02 Thread Richard Biener
On Fri, May 30, 2014 at 2:25 PM, Ilya Enkovich wrote: > Hi, > > This patch adds Pointer Bounds Checker passes. Versioning happens before > early local passes. Earply local passes are split into 3 stages to have > everything instrumented before any optimization applies. That looks artificial t

Re: [PATCH, i386, Pointer Bounds Checker 10/x] Partitions

2014-06-02 Thread Richard Biener
On Fri, May 30, 2014 at 7:10 PM, Jeff Law wrote: > On 05/28/14 10:06, Ilya Enkovich wrote: >> >> Hi, >> >> This patch keeps instrumented and original versions together and preserve >> tranparent alias chain during symbol name privatization. >> >> Bootstrapped and tested on linux-x86_64. >> >> Than

Re: [PATCH, i386, Pointer Bounds Checker 10/x] Partitions

2014-06-02 Thread Ilya Enkovich
On 30 May 11:10, Jeff Law wrote: > On 05/28/14 10:06, Ilya Enkovich wrote: > >Hi, > > > >This patch keeps instrumented and original versions together and preserve > >tranparent alias chain during symbol name privatization. > > > >Bootstrapped and tested on linux-x86_64. > > > >Thanks, > >Ilya > >-

Re: [PATCH, Pointer Bounds Checker 13/x] Early versioning

2014-06-02 Thread Richard Biener
On Mon, Jun 2, 2014 at 12:48 PM, Ilya Enkovich wrote: > On 30 May 10:59, Jeff Law wrote: >> On 05/29/14 05:05, Ilya Enkovich wrote: >> >Hi, >> > >> >This patch allows to perform function versioning when some structures are >> >not available yet. It is required to make clones for Pointer Bounds

Re: [PATCH, Pointer Bounds Checker 13/x] Early versioning

2014-06-02 Thread Ilya Enkovich
2014-06-02 15:56 GMT+04:00 Richard Biener : > On Mon, Jun 2, 2014 at 12:48 PM, Ilya Enkovich wrote: >> On 30 May 10:59, Jeff Law wrote: >>> On 05/29/14 05:05, Ilya Enkovich wrote: >>> >Hi, >>> > >>> >This patch allows to perform function versioning when some structures are >>> >not available yet.

Re: [AARCH64, PATCH] Fix ICE in aarch64_float_const_representable_p

2014-06-02 Thread Marcus Shawcroft
On 30 May 2014 09:14, Tom de Vries wrote: > Marcus, > > when building for aarch64-linux-gnu with --enable-checking=yes,rtl, I run > into the following error: OK, thanks Tom. /Marcus

Re: [PING*2][PATCH] Extend mode-switching to support toggle (1/2)

2014-06-02 Thread Christian Bruel
Hello, Any feedback for this ? I'd like to commit only when OK for Epiphany. many thanks, Christian On 05/26/2014 05:32 PM, Christian Bruel wrote: >> On 04/28/2014 10:08 AM, Christian Bruel wrote: >> Hello, >> >> I'd like to ping the following patches >> >> [Hookize mode-swi

Re: [PATCH, Pointer Bounds Checker 14/x] Pointer Bounds Checker passes

2014-06-02 Thread Ilya Enkovich
2014-06-02 15:35 GMT+04:00 Richard Biener : > On Fri, May 30, 2014 at 2:25 PM, Ilya Enkovich wrote: >> Hi, >> >> This patch adds Pointer Bounds Checker passes. Versioning happens before >> early local passes. Earply local passes are split into 3 stages to have >> everything instrumented before

Re: [GSoC][match-and-simplify] add bitwise patterns to match.pd

2014-06-02 Thread Richard Biener
On Mon, Jun 2, 2014 at 1:33 PM, Prathamesh Kulkarni wrote: > Hi, > I have tried to add few bitwise patterns from > tree-ssa-forwprop.c:simplify_bitwise_binary and the patterns > mentioned in Simplifications wiki (https://gcc.gnu.org/wiki/Simplifications). > > How to write a test-case to match mu

[PATCH][match-and-simplify]

2014-06-02 Thread Richard Biener
This is a patch I worked on last week - it makes gimple_fold_stmt_to_constant[_1] use gimple_match_and_simplify (and avoid building trees we throw away because they are not gimple values). It also adds basic constant folding patterns (and comments on what is missing in match.pd - the actual patc

[PATCH, i386]: Fix PR 61239, ICE in decompose, at rtl.h when compiling vshuf-v16hi.c using -mavx2

2014-06-02 Thread Uros Bizjak
Hello! 2014-06-02 Uros Bizjak PR target/61239 * config/i386/i386.c (ix86_expand_vec_perm) [case V32QImode]: Use GEN_INT (-128) instead of GEN_INT (128) to set MSB of QImode constant. Tested on x86_64-pc-linux-gnu with "make check-gcc RUNTESTFLAGS='--target_board=unix\{-msse2,-msse

[PING**2] [PATCH, FORTRAN] Fix PR fortran/60718

2014-06-02 Thread Bernd Edlinger
Hello, Ping**2... this is patch still pending: see https://gcc.gnu.org/ml/gcc-patches/2014-04/msg00774.html for the latest version. Thanks, Bernd. > Date: Wed, 30 Apr 2014 15:17:51 +0200 > > Ping... > >> Date: Tue, 15 Apr 2014 13:49:37 +0200 >> >> Hi Tobias, >> >> On Fri, 11 Apr 2014 16:04:51

Re: [GSoC][match-and-simplify] add bitwise patterns to match.pd

2014-06-02 Thread Richard Biener
On Mon, Jun 2, 2014 at 2:53 PM, Richard Biener wrote: > On Mon, Jun 2, 2014 at 1:33 PM, Prathamesh Kulkarni > wrote: >> Hi, >> I have tried to add few bitwise patterns from >> tree-ssa-forwprop.c:simplify_bitwise_binary and the patterns >> mentioned in Simplifications wiki (https://gcc.gnu.org/

Re: [PATCH, Pointer Bounds Checker 14/x] Pointer Bounds Checker passes

2014-06-02 Thread Richard Biener
On Mon, Jun 2, 2014 at 2:44 PM, Ilya Enkovich wrote: > 2014-06-02 15:35 GMT+04:00 Richard Biener : >> On Fri, May 30, 2014 at 2:25 PM, Ilya Enkovich >> wrote: >>> Hi, >>> >>> This patch adds Pointer Bounds Checker passes. Versioning happens before >>> early local passes. Earply local passes a

Re: [PATCH v2 3/3] mangler/demangler dogfooding

2014-06-02 Thread Jason Merrill
On 05/28/2014 06:31 PM, Pedro Alves wrote: Some failures might be + demangler bugs, others unknown mangler bugs, and others known + mangler bugs fixed with a higher -fabi-version that the + demangler doesn't have a workaround for. You can avoid the latter by skipping demanglin

Re: [PATCHv2/AARCH64 3/3] Support ILP32 multi-lib

2014-06-02 Thread Marcus Shawcroft
On 26 February 2014 02:25, Andrew Pinski wrote: > Hi, > This is the final patch which adds support for the dynamic linker and > multi-lib directories for ILP32. I did not change multi-arch support as > I did not know what it should be changed to and internally here at Cavium, > we don't use mul

Re: [PATCH 2/3] PR other/61321 - demangler crash on casts in template parameters

2014-06-02 Thread Jason Merrill
On 05/27/2014 07:57 AM, Pedro Alves wrote: And after the fix for 59195, due to: static void d_print_cast (struct d_print_info *dpi, int options, const struct demangle_component *dc) { ... /* For a cast operator, we need the template parameters from the enclosing

[PATCH, testsuite]: Add -mno-avx2 to some i386 XOP tests

2014-06-02 Thread Uros Bizjak
Hello! With targets that default to AVX2, these tests vectorize via 256bit paths, where different insns are emitted. 2014-06-02 Uros Bizjak * gcc.target/i386/xop-rotate1-vector.c (dg-options): Add -mno-avx2. * gcc.target/i386/xop-rotate2-vector.c (dg-options): Ditto. * gcc.target/

Re: [PATCHv3 2/2] libstdc++: Add std::aligned_union.

2014-06-02 Thread Jonathan Wakely
On 16/04/14 17:47 +0200, Rüdiger Sonderfeld wrote: Of course I forgot to replace one _M_ instance. This should work now. Sorry about this. -- 8< - >8 -- C++11: [meta.trans.other] * libstdc++-v3/testsuite/20_util/aligned_union/1.cc: New f

Re: [PATCH] Fix PR54733 Optimize endian independent load/store

2014-06-02 Thread Christophe Lyon
On 29 May 2014 11:58, Thomas Preud'homme wrote: >> From: Andreas Schwab [mailto:sch...@linux-m68k.org] >> "Thomas Preud'homme" writes: >> >> > By the way, I couldn't understand how you reached the value >> > 0x44434241. Can you explain me? >> >> Each byte is composed of the first 7 bits of the or

Re: [C/C++ PATCH] Add -Wlogical-not-parentheses (PR c/49706)

2014-06-02 Thread Jason Merrill
On 06/02/2014 02:50 AM, Marek Polacek wrote: + && TREE_CODE (arg1.value) == EQ_EXPR) ... + && TREE_CODE (current.lhs) == EQ_EXPR It seems like your version only warns about ==, while the clang version warns about all comparisons. + && (complain_flags (decltype_p) & tf

[PATCH] Fix part of PR61383

2014-06-02 Thread Richard Biener
In comment #3 it's noted that ifcombine happily hoists possibly trapping stmts ... oops. Fixed like the following, bootstrap and regtest running on x86_64-unknown-linux-gnu. Richard. 2014-06-02 Richard Biener PR tree-optimization/61383 * tree-ssa-ifcombine.c (bb_no_side_eff

Re: [PATCH 1/4] Make coverage_compute_cfg_checksum callable with an argument

2014-06-02 Thread Martin Liška
On 05/30/2014 06:28 PM, Jeff Law wrote: On 05/30/14 00:47, Martin Liška wrote: Hello, this is a small patchset that prepares API for new IPA Identical code folding pass. The patch adds an argument for coverage_compute_cfg_checksum. Bootstrapped and tested on x86_64-linux. OK for trunk? Tha

Re: [PATCH 2/4] Enhancement of call graph API

2014-06-02 Thread Martin Liška
On 05/30/2014 06:42 PM, Jeff Law wrote: On 05/30/14 00:47, Martin Liška wrote: Hello, this patch enhances callgraph API to enable more precise control of expand_thunk; another function becomes global. Bootstrapped and tested on x86_64-linux. OK for trunk? Thanks, Martin 2014-05-29 Marti

Re: [PATCH 3/4] New attribute lookup function addition

2014-06-02 Thread Martin Liška
On 05/30/2014 06:37 PM, Jeff Law wrote: On 05/30/14 00:49, Martin Liška wrote: Hi, this patch introduces a new function lookup_attribute_starting that can find all attributes starting with a specified string. Purpose of the function is to be able to identify e.g. if a function has any 'omp'

Re: [C++11, C++14 PATCH 2/3] Support for SD-6: SG10 Feature Test Recommendations - c-family and testsuite

2014-06-02 Thread Jason Merrill
On 05/31/2014 02:30 AM, Marc Glisse wrote: Also, I am pretty sure that gcc doesn't support the latest constexpr, we shouldn't define those macros lightly. That's correct. We should leave __cpp_constexpr at 200704 for now. I think having __has_include for all languages is fine since it is alr

[PATCH, i386, Pointer Bounds Checker 18/x] Expand instrumented builtin function calls

2014-06-02 Thread Ilya Enkovich
Hi, This patch adds support for normal builtin function calls (target ones are not instrumented). The basic idea of the patch is to make call expr copy with no bounds and expand it instead. If expr is going to be emitted as a function call then original instrumented expr takes place. Handle

[PATCH, Pointer Bounds Checker 19/x] Support bounds in expand

2014-06-02 Thread Ilya Enkovich
Hi, This patch adds support for input bounds, call bounds args and returned bounds in expand pass. Bootstrapped and tested on linux-x86_64. Thanks, Ilya -- gcc/ 2014-06-02 Ilya Enkovich * calls.c: Include tree-chkp.h, rtl-chkp.h. (arg_data): Add fields special_slot, pointer

Re: [C++11, C++14 PATCH 2/3] Support for SD-6: SG10 Feature Test Recommendations - c-family and testsuite

2014-06-02 Thread Ed Smith-Rowland
On 06/02/2014 10:31 AM, Jason Merrill wrote: On 05/31/2014 02:30 AM, Marc Glisse wrote: Also, I am pretty sure that gcc doesn't support the latest constexpr, we shouldn't define those macros lightly. That's correct. We should leave __cpp_constexpr at 200704 for now. Right... That was a testi

Re: [PATCH, Pointer Bounds Checker 14/x] Pointer Bounds Checker passes

2014-06-02 Thread Ilya Enkovich
2014-06-02 17:37 GMT+04:00 Richard Biener : > On Mon, Jun 2, 2014 at 2:44 PM, Ilya Enkovich wrote: >> 2014-06-02 15:35 GMT+04:00 Richard Biener : >>> On Fri, May 30, 2014 at 2:25 PM, Ilya Enkovich >>> wrote: Hi, This patch adds Pointer Bounds Checker passes. Versioning happens be

[PATCH, Pointer Bounds Checker 20/x] Follow transparent alias chains

2014-06-02 Thread Ilya Enkovich
Hi, In the most case we follow transparent alias chains wne assemble names. But in some cases it is not performed. For instrumented functions it is critical and following patch fixes that. It also adds a visibility inheritance for instrtumented functions. Bootstrapped and tested on linux-x8

Re: [C/C++ PATCH] Add -Wlogical-not-parentheses (PR c/49706)

2014-06-02 Thread Marek Polacek
On Mon, Jun 02, 2014 at 10:08:24AM -0400, Jason Merrill wrote: > On 06/02/2014 02:50 AM, Marek Polacek wrote: > >+ && TREE_CODE (arg1.value) == EQ_EXPR) > ... > >+ && TREE_CODE (current.lhs) == EQ_EXPR > > It seems like your version only warns about ==, while the clang version > warns ab

[PATCH, Pointer Bounds Checker 21/x] Weakrefs output

2014-06-02 Thread Ilya Enkovich
Hi, This patch prevents output of both instrumented and not instrumented weakref variants. Thanks, Ilya -- gcc/ 2014-06-02 Ilya Enkovich * cgraphunit.c (output_weakrefs): If there are both instrumented and original versions, output only one of them. diff --git a/gc

Patch for builtins.h restructuring [1/2]

2014-06-02 Thread Andrew MacLeod
Furthering the include file restructuring, this patch fixes the header files for builtins.h. The prototypes were spread between tree.h, expr.h and fold-const.h. * There were 5 build_* routines in builtins.c that really should be in tree.c. They are used all over the place. The prototypes wer

Patch for builtins.h restructuring [2/2]

2014-06-02 Thread Andrew MacLeod
This is the second set of patches which updates the #includes required for compilation. I've reduced it to the base required set, except for the target config files... Most seem to require it, so in the interest of not breaking a target, I simply include builtins.h in all target config files th

[PATCH] Add patch for debugging compiler ICEs

2014-06-02 Thread Maxim Ostapenko
Hi, A years ago there was a discussion (https://gcc.gnu.org/ml/gcc-patches/2004-01/msg02437.html) about debugging compiler ICEs that resulted in a patch from Jakub, which dumps useful information into temporary file, but for some reasons this patch wasn't applied to trunk. This is the resurre

Re: [PATCH, Pointer Bounds Checker 19/x] Support bounds in expand

2014-06-02 Thread Michael Matz
Hi, On Mon, 2 Jun 2014, Ilya Enkovich wrote: > This patch adds support for input bounds, call bounds args and returned > bounds in expand pass. > > * expr.h (store_expr): Add param for bounds target. There is exactly one place (except for the self-recursive ones) where you call the new

Re: Patch for builtins.h restructuring [2/2]

2014-06-02 Thread Ian Lance Taylor
On Mon, Jun 2, 2014 at 8:26 AM, Andrew MacLeod wrote: > > GO changes can now be directly checked in, is that right Ian? To be pedantically clear, it's always been OK to directly in changes to the files in gcc/go, but not to the files in gcc/go/gofrontend. That is still true. What has changed rec

[PATCH] rebuild frequency after vrp

2014-06-02 Thread Dehao Chen
This patch rebuilds frequency after vrp. Bootstrapped and testing on-going. OK for trunk if test pass? Thanks, Dehao gcc/ChangeLog: 2014-06-02 Dehao Chen PR tree-optimization/61384 * tree-vrp.c (execute_vrp): rebuild frequency after vrp. gcc/testsuite/ChangeLog: 2014-06-02

Re: Eliminate write-only variables

2014-06-02 Thread Jan Hubicka
> > Well, I'm hesitant to add a new pass just to optimize a (irrelevant in > practice) > benchmark. I'm ok with strengthening existing infrastructure or enhancing > existing passes. > > The issue with these mini-passes is that they are very placement sensitive > and you don't easily get seconda

Re: [patch] Update catch(...) handlers to deal with __forced_unwind

2014-06-02 Thread Jonathan Wakely
On 14/05/14 20:37 +0100, Jonathan Wakely wrote: Failing to rethrow a __forced_unwind exception is very bad. This patch ensures we rethrow them in async tasks, and makes the shared state ready with a broken_promise so that waiting threads don't block forever. That seems reasonable to me, does any

Re: [PATCH, Pointer Bounds Checker 19/x] Support bounds in expand

2014-06-02 Thread Ilya Enkovich
2014-06-02 19:28 GMT+04:00 Michael Matz : > Hi, > > On Mon, 2 Jun 2014, Ilya Enkovich wrote: > >> This patch adds support for input bounds, call bounds args and returned >> bounds in expand pass. >> >> * expr.h (store_expr): Add param for bounds target. > > There is exactly one place (except

[PATCH, Pointer Bounds Checker 22/x] Inline

2014-06-02 Thread Ilya Enkovich
Hi, This patch adds support for inlining instrumented calls. Changes are mostly to support returned bounds. Also generated mem-to-mem assignments are registered to be later instrumented with appropriate bounds copy. Bootstrapped and tested on linux-x86_64. Thanks, Ilya -- gcc/ 2014-06-02 I

Re: [C/C++ PATCH] Add -Wlogical-not-parentheses (PR c/49706)

2014-06-02 Thread Jason Merrill
On 06/02/2014 11:17 AM, Marek Polacek wrote: + && !processing_template_decl Also, why not warn when parsing a template? We don't need to know the type to recognize the problematic syntax. Jason

Re: [PATCH] Fix PR ipa/61190

2014-06-02 Thread Jan Hubicka
> Hi, > > On Mon, 2 Jun 2014 12:06:12, Richard Biener wrote: > > > > On Mon, Jun 2, 2014 at 11:00 AM, Bernd Edlinger > > wrote: > >> Hi, > >> > >> the test case g++.old-deja/g++.mike/p4736b.C is mis-compiled with with all > >> optimization levels, except -O0 and -Og. This probably started with gc

Re: [PATCH] rebuild frequency after vrp

2014-06-02 Thread Jan Hubicka
> This patch rebuilds frequency after vrp. Why do you need to rebuild frequency after VRP? I always tought it may be useful to do VRP as early optimization (modulo to compile time costs), but I do not think we should unconditionally rebuild frequencies like this... Honza > > Bootstrapped and te

Re: [PATCH] rebuild frequency after vrp

2014-06-02 Thread Dehao Chen
We need to rebuild frequency after vrp, otherwise the following code in tree-ssa-threadupdate.c will make the frequency larger than upper-bound. /* Excessive jump threading may make frequencies large enough so the computation overflows. */ if (rd->dup_blocks[0]->f

Re: [C/C++ PATCH] Add -Wlogical-not-parentheses (PR c/49706)

2014-06-02 Thread Marek Polacek
On Mon, Jun 02, 2014 at 12:01:22PM -0400, Jason Merrill wrote: > On 06/02/2014 11:17 AM, Marek Polacek wrote: > >+ && !processing_template_decl > > Also, why not warn when parsing a template? We don't need to know the type > to recognize the problematic syntax. I have no special reason for

Re: [C/C++ PATCH] Add -Wlogical-not-parentheses (PR c/49706)

2014-06-02 Thread Jason Merrill
On 06/02/2014 12:23 PM, Marek Polacek wrote: I have no special reason for that check, so dropped it too in this patch. Thanks. I expect that warn_logical_not_parentheses will crash if one of the operands is type-dependent such that TREE_TYPE is NULL_TREE, so you'll want to handle that case, a

[COMMITTED][AArch64] Remove ISB after FPCR write.

2014-06-02 Thread Marcus Shawcroft
This patch removes the ISB following FPCR write. Committed. /Marcus 2014-06-02 Marcus Shawcroft * config/aarch64/aarch64.md (set_fpcr): Drop ISB after FPCR write. commit 933934b5636f539d2b678a9f3400f7dd1560faa1 Author: Marcus Shawcroft Date: Mon Jun 2 12:51:49 2014 +0100 [AAr

Re: [C/C++ PATCH] Add -Wlogical-not-parentheses (PR c/49706)

2014-06-02 Thread Jakub Jelinek
On Mon, Jun 02, 2014 at 12:31:32PM -0400, Jason Merrill wrote: > On 06/02/2014 12:23 PM, Marek Polacek wrote: > >I have no special reason for that check, so dropped it too in this > >patch. > > Thanks. I expect that warn_logical_not_parentheses will crash if one > of the operands is type-dependent

Fix target/61336 -- alpha ice on questionable asm

2014-06-02 Thread Richard Henderson
The scheme that alpha uses to split symbolic references into trackable pairs of relocations doesn't really handle asms. Of course, normal asms don't have the problem seen here because they're interested in producing instructions, whereas this case is system tap creating some annotations. The most

Re: [PATCH] rebuild frequency after vrp

2014-06-02 Thread Jeff Law
On 06/02/14 10:17, Dehao Chen wrote: We need to rebuild frequency after vrp, otherwise the following code in tree-ssa-threadupdate.c will make the frequency larger than upper-bound. /* Excessive jump threading may make frequencies large enough so the computation overflow

[PATCH] [ARM] Post-indexed addressing for NEON memory access

2014-06-02 Thread Charles Baylis
This patch adds support for post-indexed addressing for NEON structure memory accesses. For example VLD1.8 {d0}, [r0], r1 Bootstrapped and checked on arm-unknown-gnueabihf using Qemu. Ok for trunk? gcc/Changelog: 2014-06-02 Charles Baylis * config/arm/arm.c (neon_vector_mem_opera

Re: [C/C++ PATCH] Add -Wlogical-not-parentheses (PR c/49706)

2014-06-02 Thread Marek Polacek
On Mon, Jun 02, 2014 at 06:36:06PM +0200, Jakub Jelinek wrote: > On Mon, Jun 02, 2014 at 12:31:32PM -0400, Jason Merrill wrote: > > On 06/02/2014 12:23 PM, Marek Polacek wrote: > > >I have no special reason for that check, so dropped it too in this > > >patch. > > > > Thanks. I expect that warn_lo

Re: [C/C++ PATCH] Add -Wlogical-not-parentheses (PR c/49706)

2014-06-02 Thread Jakub Jelinek
On Mon, Jun 02, 2014 at 07:04:58PM +0200, Marek Polacek wrote: > > Do we actually want to warn in that case? As the patch doesn't warn > > if the type is bool or vector, if somebody instantiates the above with > > say T=bool, U=bool, then we'd warn on something that otherwise will not be > > warne

Re: [PATCH] rebuild frequency after vrp

2014-06-02 Thread Dehao Chen
Just tried with Teresa's patch, the ICE in https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61384 is not resolved. Dehao On Mon, Jun 2, 2014 at 9:45 AM, Jeff Law wrote: > On 06/02/14 10:17, Dehao Chen wrote: >> >> We need to rebuild frequency after vrp, otherwise the following code >> in tree-ssa-th

Re: [PATCH, Pointer Bounds Checker 13/x] Early versioning

2014-06-02 Thread Jeff Law
On 06/02/14 04:48, Ilya Enkovich wrote: Hmm, so if I understand things correctly, src_fun has no loop structures attached, thus there's nothing to copy. Presumably at some later point we build loop structures for the copy from scratch? I suppose it is just a simple bug with absent NULL pointer

Re: Patch for builtins.h restructuring [1/2]

2014-06-02 Thread Jeff Law
On 06/02/14 09:26, Andrew MacLeod wrote: Furthering the include file restructuring, this patch fixes the header files for builtins.h. The prototypes were spread between tree.h, expr.h and fold-const.h. * There were 5 build_* routines in builtins.c that really should be in tree.c. They are used

Re: [PATCH 3/4] New attribute lookup function addition

2014-06-02 Thread Jeff Law
On 06/02/14 08:24, Martin Liška wrote: On 05/30/2014 06:37 PM, Jeff Law wrote: On 05/30/14 00:49, Martin Liška wrote: Hi, this patch introduces a new function lookup_attribute_starting that can find all attributes starting with a specified string. Purpose of the function is to be able to i

Re: [C/C++ PATCH] Add -Wlogical-not-parentheses (PR c/49706)

2014-06-02 Thread Jason Merrill
On 06/02/2014 01:04 PM, Marek Polacek wrote: #ifdef __cplusplus template bool f(T t, U u) { return (!t == u); } #endif I think !t should have null TREE_TYPE in this case. Hmm, I see no crash; the types seem to be template_type_parm 0x7013d5e8 T type_0 type_6 VOID ... Right, because you'

Re: [PATCH] rebuild frequency after vrp

2014-06-02 Thread Jan Hubicka
> On 06/02/14 10:17, Dehao Chen wrote: > >We need to rebuild frequency after vrp, otherwise the following code > >in tree-ssa-threadupdate.c will make the frequency larger than > >upper-bound. > > > > /* Excessive jump threading may make frequencies large enough so > > the co

  1   2   >