Re: [ARM] Make -mcpu, -march and -mtune case-insensitive

2014-01-17 Thread James Greenhalgh
On Thu, Jan 16, 2014 at 06:13:33PM +, James Greenhalgh wrote: On Thu, Jan 16, 2014 at 05:14:24PM +, Richard Earnshaw wrote: On 16/01/14 16:15, Alan Lawrence wrote: This is a small patch that makes the -mcpu, -march and -mtune command-line options case-insensitive, allowing e.g.

Allow passing arrays in registers on AArch64

2014-01-17 Thread Michael Hudson-Doyle
Hi, as discussed in http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59799 GCC currently gets a detail of the AArch64 ABI wrong: arrays are not always passed by reference. Fortunately the fix is rather easy... I guess this is an ABI break but my understand there has been no release of GCC which

Re: [Patch, cilk, C++] Fix cilk testsuite failure

2014-01-17 Thread Richard Sandiford
Steve Ellcey sell...@mips.com writes: 2014-01-15 Andrew Pinski apin...@cavium.com Steve Ellcey sell...@mips.com PR target/59462 * config/mips/mips.c (mips_print_operand): Check operand mode instead of operator mode. diff --git a/gcc/config/mips/mips.c

[PATCH] Fix crossing jumps in functions with forced_labels (PR rtl-optimization/57763)

2014-01-17 Thread Jakub Jelinek
Hi! As mentioned in the PR, on alpha (but I don't see a reason why it can't occur on most other targets except for i?86/x86_64, cr16, m32c, moxie and msp430) if a function has non-NULL forced_labels (contains computed goto), we can get ICEs due to incorrect EDGE_CROSSING flags on some edges. The

Re: [RFA] [PATCH][PR tree-optimization/59749] Fix recently introduced ree bug

2014-01-17 Thread Eric Botcazou
Bootstrapped regression tested on x86_64-unknown-linux. Also bootstrapped with --enable-checking=rtl. Note that you can do only one bootstrap with --enable-checking=yes,rtl. Installed on the trunk. As far as I can see, no, it was not installed. -- Eric Botcazou

Re: [PATCH] _Cilk_for for C and C++

2014-01-17 Thread Marek Polacek
On Thu, Jan 16, 2014 at 01:18:59PM -0800, Aldy Hernandez wrote: I'm not a C++ expert, but my understanding was that in C++ you don't need a typedef to use the following structure by name (cilk_for_information). So you can just declare struct cilk_for_information {...} and instantiate it with

Re: [PATCH, ARM, v2] Fix PR target/59142: internal compiler error while compiling OpenCV 2.4.7

2014-01-17 Thread Richard Earnshaw
On 16/01/14 18:40, Charles Baylis wrote: On 20 December 2013 13:26, Richard Earnshaw rearn...@arm.com wrote: On 19/12/13 17:40, Charles Baylis wrote: Is it ok for 4.8, and should it be considered for 4.7? Yes, provided it passes testing on those releases. Results of testing 4.8: All 3

Re: [Patch] Regex bracket matcher cache optimization

2014-01-17 Thread Jonathan Wakely
On 8 January 2014 22:47, Tim Shen wrote: So my plan is to instantiate _Compiler and _Executor instead of user interfaces like basic_regex or regex_match, because the implementation may change (say add a new executor) later. Is that Ok? I think we want to be cautious with exporting

Re: [C++ Patch] PR 59270

2014-01-17 Thread Paolo Carlini
.. patchlet fixes c++/58811 too. Paolo.

Re: Extend -fstack-protector-strong to cover calls with return slot

2014-01-17 Thread Florian Weimer
On 01/08/2014 03:57 PM, Florian Weimer wrote: What about the attached version? It still does not exactly match your original suggestion because gimple_call_lhs (stmt) can be NULL_TREE if the result is ignored and this case needs instrumentation, as you explained, so I use the function return

Re: [Patch] Regex bracket matcher cache optimization

2014-01-17 Thread Tim Shen
On Fri, Jan 17, 2014 at 4:39 AM, Jonathan Wakely jwakely@gmail.com wrote: On 8 January 2014 22:47, Tim Shen wrote: I think we want to be cautious with exporting instantiations (and as Paolo noted we definitely don't want to do it for 4.9.0 now). Slow compile times are a problem, but only a

Re: [RFA][PATCH][PR middle-end/57904][P1 regression] Improve cleanups after copyprop

2014-01-17 Thread Richard Biener
On Thu, Jan 16, 2014 at 7:30 PM, Jeff Law l...@redhat.com wrote: On 01/16/14 04:49, Richard Biener wrote: Well - the issue here is that inlining / IPA-CP propagates constant arguments to direct uses which of course exposes constant propagation opportunities. Now, copyprop doesn't to real

Re: [Patch] Regex bracket matcher cache optimization

2014-01-17 Thread Jonathan Wakely
On 17 January 2014 10:33, Tim Shen wrote: I agree, especially after I finding that an exported symbol could only be removed in a main version changing. Maybe never! Anyway, we'll win some run-time cases, on which, we beat Boost ;) That's excellent, well done :-)

[AArch64] Make -mcpu, -march and -mtune case-insensitive.

2014-01-17 Thread Alan Lawrence
Small patch to make the -mcpu, -march and -mtune command-line options case-insensitive, allowing e.g. -mcpu=CortexA57 -march=ARMv8-A. Tested on aarch64-none-elf with no regressions; options passed onto e.g. ld are always lowercase (as before). OK for trunk? --Alan ChangeLog: 2014-01-17 Alan

[PATCH] Fix PR46590

2014-01-17 Thread Richard Biener
This fixes PR46590 - I've worked on this at the beginning of last year already but appearantly when deciding to not push the last bits of the LIM reorg failed to check the full testcase again. So this fixes memory usage of that large testcase (many loops) from requiring a peak memory usage of

Commit: MSP430: Add -mcpu= option

2014-01-17 Thread Nick Clifton
Hi Guys, I am committing the attached patch to add a -mcpu= command line option to the MSP430 backend. This allows the selection of the ISA to be used, and it operates independently of the -mmcu= command line option. gcc/ChangeLog 2014-01-17 Nick Clifton ni...@redhat.com *

[C++ Patch] PR 59269

2014-01-17 Thread Paolo Carlini
Hi, I think we can handle this 4.9 Regression ICE in build_value_init_noctor the same way as cx_check_missing_mem_inits: only enforce !TYPE_HAS_COMPLEX_DFLT when errorcount == 0 (I also double checked that in the case at issue type_has_constexpr_default_constructor is true). Tested

Re: [PATCH] Fix PR46590

2014-01-17 Thread Jakub Jelinek
On Fri, Jan 17, 2014 at 12:32:34PM +0100, Richard Biener wrote: ! /* Search the contents of the sorted vector with a binary search. !CMP is the comparison function to pass to bsearch. */ Can you please sed -i -e s/__//g in the whole method? I mean, this isn't in libstdc++ or glibc header,

Re: [PATCH, ARM, v2] Fix PR target/59142: internal compiler error while compiling OpenCV 2.4.7

2014-01-17 Thread Christophe Lyon
Committed on Charlies' behalf as: r206706 for the 4.8 branch r206707 for the 4.7 branch Christophe. On 17 January 2014 10:28, Richard Earnshaw rearn...@arm.com wrote: On 16/01/14 18:40, Charles Baylis wrote: On 20 December 2013 13:26, Richard Earnshaw rearn...@arm.com wrote: On 19/12/13

Re: [AArch64] Make -mcpu, -march and -mtune case-insensitive.

2014-01-17 Thread Richard Earnshaw
On 17/01/14 11:12, Alan Lawrence wrote: Small patch to make the -mcpu, -march and -mtune command-line options case-insensitive, allowing e.g. -mcpu=CortexA57 -march=ARMv8-A. Tested on aarch64-none-elf with no regressions; options passed onto e.g. ld are always lowercase (as before). OK

Re: [Patch][AArch64] vneg floating point testcase BE fixed

2014-01-17 Thread Alex Velenko
Hi, I agree the correct changelog entry should be: gcc/testsuite/ 2013-01-16 Alex Velenko alex.vele...@arm.com */gcc.target/aarch64/vneg_f.c (STORE_INST): New macro. (RUN_TEST): Use new macro. (INDEX): marcro removed (test_vneg_f32): Use fixed RUN_TEST.

Re: [PATCH] Fix PR46590

2014-01-17 Thread Richard Biener
On Fri, 17 Jan 2014, Jakub Jelinek wrote: On Fri, Jan 17, 2014 at 12:32:34PM +0100, Richard Biener wrote: ! /* Search the contents of the sorted vector with a binary search. !CMP is the comparison function to pass to bsearch. */ Can you please sed -i -e s/__//g in the whole method?

[PATCH] Reduce compile-time for -Og

2014-01-17 Thread Richard Biener
This reduces -Og compile-time for the testcase in PR46590 from 116s to 40s (still way short of -O0 compile-time which is 17s). It does so by disabling the rest of loop2 (RTL invariant motion and doloop) as I originally intended and by disabling PTA which can get quite expensive on larger

Re: PATCH: PR middle-end/59789: [4.9 Regression] ICE in in convert_move, at expr.c:333

2014-01-17 Thread H.J. Lu
On Mon, Jan 13, 2014 at 12:11 PM, H.J. Lu hongjiu...@intel.com wrote: Hi, We should report some early inlining errors. This patch is based on http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57698#c7 It adds report_early_inliner_always_inline_failure and uses it in expand_call_inline. Tested

[PATCH] Don't fold zero-sized elements (PR c/58346)

2014-01-17 Thread Marek Polacek
This is the real fix for PR58346. I'd say the easiest solution is just not fold the zero-sized elements. Bootstrapped/regtested on x86_64-linux, ok for trunk? 2014-01-17 Marek Polacek pola...@redhat.com PR c/58346 * gimple-fold.c (fold_array_ctor_reference): Don't fold if

[C++ PATCH] Don't segv in cvt.c (PR c++/59838)

2014-01-17 Thread Marek Polacek
This prevents segfault in ocp_convert. If the ENUM_UNDERLYING_TYPE is NULL, don't call int_fits_type_p on it. We give meaningful error message on the attached testcase; it's the same message as GCC 3.4/4.0.2/4.4 gave (these GCC didn't ICE on it). Bootstrapped/regtested on x86_64-linux, ok for

[PATCH] Fix up ivdep/do concurrent testcases (PR testsuite/59064)

2014-01-17 Thread Jakub Jelinek
Hi! I believe the intent of these testcases was to verify the loops are vectorized and don't need versioning for alias, which is the only thing these constructs tell the compiler about. On some architectures, it is possible the loops will need versioning for alignment (or peeling for alignment

[PATCH] Handle NAMELIST_DECLs in tree-nested (PR fortran/59440)

2014-01-17 Thread Jakub Jelinek
Hi! The following testcases ICE, because when tree-nested.c replaces various decls in the functions with local or nonlocal alternative decls and makes the old ones DECL_IGNORED_P, decls inside of NAMELIST_DECL NAMELIST_DECL_ASSOCIATED_DECL aren't replaced and thus debug info can't be generated

[PATCH] Fix up gen-vect-32.c testcase (PR testsuite/58776)

2014-01-17 Thread Jakub Jelinek
Hi! For -O2 vectorization by default GCC 4.9 uses the cheap cost model, which disallows e.g. peeling for alignment, but on strict alignment targets the loop needs to be peeled for alignment, otherwise vectorization isn't performed. Fixed by just adding -fno-vect-cost-model to dg-options,

Re: [PATCH i386 5/8] [AVX-512] Extend vectorizer hooks.

2014-01-17 Thread Jakub Jelinek
On Tue, Jan 14, 2014 at 08:12:41PM +0100, Jakub Jelinek wrote: For 4.9, if what you've added is what you want to do for performance reasons, then I'd do something like: Ok, here it is in a form of patch, bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk? 2014-01-17 Jakub

[PATCH] Add X86_TUNE_AVOID_LEA_FOR_ADDR

2014-01-17 Thread H.J. Lu
ix86_split_lea_for_addr transforms a single LEA instruction into a series of MOV and ADD instructions. For lea 0x400(%eax, %ecx, 8), %edx we get mov %eax, %edx add %ecx, %edx add %ecx, %edx add %ecx, %edx add %ecx, %edx add %ecx, %edx add %ecx, %edx add %ecx, %edx add %ecx, %edx add $0x400,

[build, libgcc] Ensure libgcc_s unwinder is always used on 64-bit Solaris 10+/x86 (PR target/59788)

2014-01-17 Thread Rainer Orth
As described in the PR, the 64-bit Solaris 10+/x86 libc contains an implementation of those _Unwind_* functions required by the AMD64 ABI, i.e. those contained in libgcc_s.so.1 at version GCC_3.0. If by some circumstance (use of -Bdirect, -z lazyload, maybe others) libc.so.1 happens to be

Re: [Patch][AArch64] vneg floating point testcase BE fixed

2014-01-17 Thread Alex Velenko
Hi, Here are some more improvements on changelog entry: gcc/testsuite/ 2013-01-16 Alex Velenko alex.vele...@arm.com * gcc.target/aarch64/vneg_f.c (STORE_INST): New macro. (RUN_TEST): Use new macro. (INDEX64_32): Delete. (INDEX64_64): Likewise.

[committed] Honza's alias/weakref fix (PR c++/57945)

2014-01-17 Thread Jakub Jelinek
Hi! I've bootstrapped/regtested on x86_64-linux and i686-linux following patch from Honza from the PR comment (written a month ago, acked by Jason a fortnight ago) and committed it to trunk. 2014-01-17 Jan Hubicka hubi...@ucw.cz PR c++/57945 * passes.c

Re: [PATCH] Add X86_TUNE_AVOID_LEA_FOR_ADDR

2014-01-17 Thread Uros Bizjak
On Fri, Jan 17, 2014 at 3:19 PM, H.J. Lu hongjiu...@intel.com wrote: ix86_split_lea_for_addr transforms a single LEA instruction into a series of MOV and ADD instructions. For lea 0x400(%eax, %ecx, 8), %edx we get mov %eax, %edx add %ecx, %edx add %ecx, %edx add %ecx, %edx add %ecx,

Re: [PATCH i386 5/8] [AVX-512] Extend vectorizer hooks.

2014-01-17 Thread Uros Bizjak
On Fri, Jan 17, 2014 at 3:15 PM, Jakub Jelinek ja...@redhat.com wrote: On Tue, Jan 14, 2014 at 08:12:41PM +0100, Jakub Jelinek wrote: For 4.9, if what you've added is what you want to do for performance reasons, then I'd do something like: Ok, here it is in a form of patch,

Re: [PATCH] Don't fold zero-sized elements (PR c/58346)

2014-01-17 Thread Richard Biener
On Fri, Jan 17, 2014 at 2:37 PM, Marek Polacek pola...@redhat.com wrote: This is the real fix for PR58346. I'd say the easiest solution is just not fold the zero-sized elements. Bootstrapped/regtested on x86_64-linux, ok for trunk? Ok. Thanks, Richard. 2014-01-17 Marek Polacek

Re: [PATCH] Add X86_TUNE_AVOID_LEA_FOR_ADDR

2014-01-17 Thread Jakub Jelinek
On Fri, Jan 17, 2014 at 06:19:37AM -0800, H.J. Lu wrote: ix86_split_lea_for_addr transforms a single LEA instruction into a series of MOV and ADD instructions. For lea 0x400(%eax, %ecx, 8), %edx we get mov %eax, %edx add %ecx, %edx add %ecx, %edx add %ecx, %edx add %ecx, %edx add

Re: [PATCH] Fix up ivdep/do concurrent testcases (PR testsuite/59064)

2014-01-17 Thread Richard Biener
On Fri, 17 Jan 2014, Jakub Jelinek wrote: Hi! I believe the intent of these testcases was to verify the loops are vectorized and don't need versioning for alias, which is the only thing these constructs tell the compiler about. On some architectures, it is possible the loops will need

Re: [PATCH] Handle NAMELIST_DECLs in tree-nested (PR fortran/59440)

2014-01-17 Thread Richard Biener
On Fri, 17 Jan 2014, Jakub Jelinek wrote: Hi! The following testcases ICE, because when tree-nested.c replaces various decls in the functions with local or nonlocal alternative decls and makes the old ones DECL_IGNORED_P, decls inside of NAMELIST_DECL NAMELIST_DECL_ASSOCIATED_DECL aren't

Re: [Patch][AArch64] vneg floating point testcase BE fixed

2014-01-17 Thread Richard Earnshaw
On 17/01/14 14:22, Alex Velenko wrote: Hi, Here are some more improvements on changelog entry: gcc/testsuite/ 2013-01-16 Alex Velenko alex.vele...@arm.com * gcc.target/aarch64/vneg_f.c (STORE_INST): New macro. (RUN_TEST): Use new macro. (INDEX64_32): Delete.

Re: [PATCH] Fix up gen-vect-32.c testcase (PR testsuite/58776)

2014-01-17 Thread Richard Biener
On Fri, 17 Jan 2014, Jakub Jelinek wrote: Hi! For -O2 vectorization by default GCC 4.9 uses the cheap cost model, which disallows e.g. peeling for alignment, but on strict alignment targets the loop needs to be peeled for alignment, otherwise vectorization isn't performed. Fixed by just

Re: [PATCH] Add X86_TUNE_AVOID_LEA_FOR_ADDR

2014-01-17 Thread H.J. Lu
On Fri, Jan 17, 2014 at 6:23 AM, Uros Bizjak ubiz...@gmail.com wrote: On Fri, Jan 17, 2014 at 3:19 PM, H.J. Lu hongjiu...@intel.com wrote: ix86_split_lea_for_addr transforms a single LEA instruction into a series of MOV and ADD instructions. For lea 0x400(%eax, %ecx, 8), %edx we get mov

Re: [PATCH] Add X86_TUNE_AVOID_LEA_FOR_ADDR

2014-01-17 Thread H.J. Lu
On Fri, Jan 17, 2014 at 6:30 AM, Jakub Jelinek ja...@redhat.com wrote: On Fri, Jan 17, 2014 at 06:19:37AM -0800, H.J. Lu wrote: ix86_split_lea_for_addr transforms a single LEA instruction into a series of MOV and ADD instructions. For lea 0x400(%eax, %ecx, 8), %edx we get mov %eax, %edx

[patch] fix libstdc++/56267 - local iterator requirements

2014-01-17 Thread Jonathan Wakely
The issue in PR 56267 is that unordered_xxx::local_iterator sometimes inherits from the user-defined hash function (via _Hash_code_base, which inherits from the hash function to use the EBO), and local_iterator must be DefaultConstructible and Assignable, even when the hash function isn't. My

Re: [PATCH] Add X86_TUNE_AVOID_LEA_FOR_ADDR

2014-01-17 Thread Uros Bizjak
On Fri, Jan 17, 2014 at 3:46 PM, H.J. Lu hjl.to...@gmail.com wrote: ix86_split_lea_for_addr transforms a single LEA instruction into a series of MOV and ADD instructions. For lea 0x400(%eax, %ecx, 8), %edx we get mov %eax, %edx add %ecx, %edx add %ecx, %edx add %ecx, %edx add %ecx,

Re: [C++ Patch] PR 59269

2014-01-17 Thread Jason Merrill
OK. Jason

Re: [C++ PATCH] Don't segv in cvt.c (PR c++/59838)

2014-01-17 Thread Jason Merrill
OK. Jason

Re: [PATCH] Add X86_TUNE_AVOID_LEA_FOR_ADDR

2014-01-17 Thread H.J. Lu
On Fri, Jan 17, 2014 at 7:11 AM, Uros Bizjak ubiz...@gmail.com wrote: On Fri, Jan 17, 2014 at 3:46 PM, H.J. Lu hjl.to...@gmail.com wrote: ix86_split_lea_for_addr transforms a single LEA instruction into a series of MOV and ADD instructions. For lea 0x400(%eax, %ecx, 8), %edx we get mov

Re: [PATCH] Add X86_TUNE_AVOID_LEA_FOR_ADDR

2014-01-17 Thread Uros Bizjak
On Fri, Jan 17, 2014 at 3:50 PM, H.J. Lu hjl.to...@gmail.com wrote: Wrong example. It should be lea 0x400(%edx, %ecx, 8), %edx we get add %ecx, %edx add %ecx, %edx add %ecx, %edx add %ecx, %edx add %ecx, %edx add %ecx, %edx add %ecx, %edx add %ecx, %edx add $0x400, %edx Even for

Re: [PATCH] Add X86_TUNE_AVOID_LEA_FOR_ADDR

2014-01-17 Thread Jakub Jelinek
On Fri, Jan 17, 2014 at 04:24:50PM +0100, Uros Bizjak wrote: On Fri, Jan 17, 2014 at 3:50 PM, H.J. Lu hjl.to...@gmail.com wrote: Wrong example. It should be lea 0x400(%edx, %ecx, 8), %edx we get add %ecx, %edx add %ecx, %edx add %ecx, %edx add %ecx, %edx add %ecx, %edx

Re: PATCH: PR middle-end/59789: [4.9 Regression] ICE in in convert_move, at expr.c:333

2014-01-17 Thread Jan Hubicka
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5c674bc..284bc66 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,12 @@ +2014-01-13 Sriraman Tallam tmsri...@google.com + H.J. Lu hongjiu...@intel.com + + PR middle-end/59789 + * tree-inline.c

Re: [PATCH] Add X86_TUNE_AVOID_LEA_FOR_ADDR

2014-01-17 Thread Uros Bizjak
On Fri, Jan 17, 2014 at 4:17 PM, H.J. Lu hjl.to...@gmail.com wrote: BTW: There are some ix86_tune == XXX conditions scattered throughout LEA handling code. Can these be substituted with appropriate TARGET_* defines? I have been looking at them closely to check their impacts on both Haswell

Re: [committed] Honza's alias/weakref fix (PR c++/57945)

2014-01-17 Thread Jan Hubicka
Hi! I've bootstrapped/regtested on x86_64-linux and i686-linux following patch from Honza from the PR comment (written a month ago, acked by Jason a fortnight ago) and committed it to trunk. 2014-01-17 Jan Hubicka hubi...@ucw.cz PR c++/57945 * passes.c

Re: PATCH: PR middle-end/59789: [4.9 Regression] ICE in in convert_move, at expr.c:333

2014-01-17 Thread H.J. Lu
On Fri, Jan 17, 2014 at 7:35 AM, Jan Hubicka hubi...@ucw.cz wrote: diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5c674bc..284bc66 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,12 @@ +2014-01-13 Sriraman Tallam tmsri...@google.com + H.J. Lu

Re: [PATCH] Add X86_TUNE_AVOID_LEA_FOR_ADDR

2014-01-17 Thread H.J. Lu
On Fri, Jan 17, 2014 at 7:36 AM, Uros Bizjak ubiz...@gmail.com wrote: On Fri, Jan 17, 2014 at 4:17 PM, H.J. Lu hjl.to...@gmail.com wrote: BTW: There are some ix86_tune == XXX conditions scattered throughout LEA handling code. Can these be substituted with appropriate TARGET_* defines? I

Re: [Patch AArch64] Implement Vector Permute Support

2014-01-17 Thread Richard Earnshaw
On 16/01/14 14:43, Alex Velenko wrote: On 14/01/14 15:51, pins...@gmail.com wrote: On Jan 14, 2014, at 7:19 AM, Alex Velenko alex.vele...@arm.com wrote: Hi, This patch turns off the vec_perm patterns for aarch64_be, this should resolve the issue highlighted here

Re: [Patch, AArch64] Relax CANNOT_CHANGE_MODE_CLASS.

2014-01-17 Thread Richard Earnshaw
On 16/01/14 18:22, Tejas Belagod wrote: Tejas Belagod wrote: Tejas Belagod wrote: Hi, Currently, CANNOT_CHANGE_MODE_CLASS is too restrictive wrt the mode-changes it allows on FPREGs - it allows none at the moment. In fact, there are many mode changes that are safe and can be allowed.

Re: [PATCH] Add X86_TUNE_AVOID_LEA_FOR_ADDR

2014-01-17 Thread Uros Bizjak
On Fri, Jan 17, 2014 at 4:26 PM, Jakub Jelinek ja...@redhat.com wrote: On Fri, Jan 17, 2014 at 04:24:50PM +0100, Uros Bizjak wrote: On Fri, Jan 17, 2014 at 3:50 PM, H.J. Lu hjl.to...@gmail.com wrote: Wrong example. It should be lea 0x400(%edx, %ecx, 8), %edx we get add %ecx,

Re: [PATCH, go]: Skip some go tests

2014-01-17 Thread Matthias Klose
Am 09.01.2014 18:11, schrieb Uros Bizjak: On Thu, Jan 9, 2014 at 4:01 PM, Ian Lance Taylor i...@google.com wrote: On Thu, Jan 9, 2014 at 2:54 AM, Uros Bizjak ubiz...@gmail.com wrote: 2014-01-09 Uros Bizjak ubiz...@gmail.com * go.test/go-test.exp (go-gc-tests): Don't run peano.go on

Re: [PATCH, go]: Skip some go tests

2014-01-17 Thread Ian Lance Taylor
On Fri, Jan 17, 2014 at 8:32 AM, Matthias Klose d...@ubuntu.com wrote: Am 09.01.2014 18:11, schrieb Uros Bizjak: On Thu, Jan 9, 2014 at 4:01 PM, Ian Lance Taylor i...@google.com wrote: On Thu, Jan 9, 2014 at 2:54 AM, Uros Bizjak ubiz...@gmail.com wrote: 2014-01-09 Uros Bizjak

Re: PATCH: PR middle-end/59789: [4.9 Regression] ICE in in convert_move, at expr.c:333

2014-01-17 Thread Jan Hubicka
For this testcase, we get CIF_TARGET_OPTION_MISMATCH. Do you want to add a new flag so that inliner can use for other errors? Just add flags parameter to DEFCIFCODE in cif-code.def and flag those that are final and should be output already in early inlining. This way we will not forget to

Re: [PATCH] Add X86_TUNE_AVOID_LEA_FOR_ADDR

2014-01-17 Thread H.J. Lu
On Fri, Jan 17, 2014 at 7:55 AM, H.J. Lu hjl.to...@gmail.com wrote: On Fri, Jan 17, 2014 at 7:36 AM, Uros Bizjak ubiz...@gmail.com wrote: On Fri, Jan 17, 2014 at 4:17 PM, H.J. Lu hjl.to...@gmail.com wrote: BTW: There are some ix86_tune == XXX conditions scattered throughout LEA handling code.

Re: [C++ Patch] PR 59270

2014-01-17 Thread Jason Merrill
OK. Does returning error_mark_node from build_value_init in the case of erroneous type not work? Jason

[GOOGLE] don't overwrite precomputed loop bound in AutoFDO

2014-01-17 Thread Dehao Chen
If a loop is cunrolled/vectorized, the AutoFDO computed trip count will be very small. This patch disallows overwritting of precomputed loop bound in AutoFDO mode. Bootstrapped and passed regression test. Performance test on-going. OK for Google branches? Thanks, Dehao Index:

[PATCH, PR 59736] Fix an IPA-CP issue with de-speculation

2014-01-17 Thread Martin Jambor
Hi, in PR 59736, IPA-CP stumples on an already removed call graph edge. The reason is that it keeps an internal linked list of edge clones which can however now be corrupted by cgraph de-speculation machinery which can decide to remove an edge. In order to fix this, I made the linked-list

Re: [GOOGLE] don't overwrite precomputed loop bound in AutoFDO

2014-01-17 Thread Xinliang David Li
Ok. David On Fri, Jan 17, 2014 at 9:08 AM, Dehao Chen de...@google.com wrote: If a loop is cunrolled/vectorized, the AutoFDO computed trip count will be very small. This patch disallows overwritting of precomputed loop bound in AutoFDO mode. Bootstrapped and passed regression test.

Re: [GOMP4][PATCH] SIMD-enabled functions (formerly Elemental functions) for C++

2014-01-17 Thread Jakub Jelinek
On Thu, Dec 19, 2013 at 06:12:29PM +, Iyer, Balaji V wrote: 2013-12-19 Balaji V. Iyer balaji.v.i...@intel.com * parser.c (cp_parser_direct_declarator): When Cilk Plus is enabled see if there is an attribute after function decl. If so, then parse them now.

Re: PATCH: PR middle-end/59789: [4.9 Regression] ICE in in convert_move, at expr.c:333

2014-01-17 Thread H.J. Lu
On Fri, Jan 17, 2014 at 8:42 AM, Jan Hubicka hubi...@ucw.cz wrote: For this testcase, we get CIF_TARGET_OPTION_MISMATCH. Do you want to add a new flag so that inliner can use for other errors? Just add flags parameter to DEFCIFCODE in cif-code.def and flag those that are final and should be

Re: [Patch, cilk, C++] Fix cilk testsuite failure

2014-01-17 Thread Steve Ellcey
On Fri, 2014-01-17 at 08:23 +, Richard Sandiford wrote: I think it'd be more direct to check the register class, since we used to store CCmode in GPRs too. I.e. ST_REGNO_P (XEXP (op, 0)). OK with that change, thanks. Please backport to 4.8 too. Richard I assume you meant ST_REG_P

Re: Allow passing arrays in registers on AArch64

2014-01-17 Thread Yufeng Zhang
Hi Michael, Thanks for the fix. The patch looks OK to me in general, although I have some minor comments below. On 01/17/14 08:22, Michael Hudson-Doyle wrote: Hi, as discussed inhttp://gcc.gnu.org/bugzilla/show_bug.cgi?id=59799 GCC currently gets a detail of the AArch64 ABI wrong: arrays

Re: Allow passing arrays in registers on AArch64

2014-01-17 Thread Ian Lance Taylor
On Fri, Jan 17, 2014 at 11:32 AM, Michael Hudson-Doyle michael.hud...@canonical.com wrote: On 18 Jan 2014 07:50, Yufeng Zhang yufeng.zh...@arm.com wrote: Also can you please try to add some new test(s)? It may not be that straightforward to add non-C/C++ tests, but give it a try. Can you

Re: [google gcc-4_8] port gcov-tool to gcc-4_8

2014-01-17 Thread Xinliang David Li
For LIPO parameters, you can do this 1) isolate all LIPO specific parameters into lipo_params.def, and include it from params.def. 2) include lipo_params.def (after proper definition of DEFPARAM) in the profile tool source dir. By so doing, the compiler setting and profile tool will be in sync.

[gomp4] Generalize mapping functions for future OpenACC runtime library usage.

2014-01-17 Thread James Norris
Hi! Here is a patch that changes the mapping functions to use functions defined with the device descriptor. These changes generalize the mapping functions so that they can be used by the soon to be added OpenACC Runtime functions. These changes assume that the previous set of changes described

Re: [PATCH] FIx up ANNOTATE_EXPR gimplification (PR middle-end/59706)

2014-01-17 Thread Richard Biener
Jakub Jelinek ja...@redhat.com wrote: Hi! When gimplifying ANNOTATE_EXPR, gimplify_expr used create_tmp_var_raw, which unfortunately (among tons of other desirable things) doesn't set DECL_CONTEXT on the temporary var and tree-nested.c then ICEs on it because of that. The following patch fixes

Re: [google gcc-4_8] port gcov-tool to gcc-4_8

2014-01-17 Thread Rong Xu
Do we have to split params.def? I can include params.h and link in params.o (a special version as we don't have some global vars). As for lipo_cutoff, I think we don't need a special handling -- we should use the default value of 100 and let logic in dyn-ipa.c takes care of the rest. Please

PR middle-end/58125

2014-01-17 Thread Jan Hubicka
Hi, this patch fixes no longer reproducing ICE where we try to free summary of alias but we never allocate one. Bootstrapped/regtested x86_64-linux, comitted. Index: ChangeLog === --- ChangeLog (revision 206732) +++ ChangeLog

Re: [google gcc-4_8] port gcov-tool to gcc-4_8

2014-01-17 Thread Xinliang David Li
Ok for google branch. It might be good to think about adding regression tests (similar to those gcov tests under g++.dg/gcov, but handling multiple files). David On Fri, Jan 17, 2014 at 12:59 PM, Rong Xu x...@google.com wrote: last attachment is not the complete patch. Re-send again. On Fri,

Re: [RFA] [PATCH][PR tree-optimization/59749] Fix recently introduced ree bug

2014-01-17 Thread Jeff Law
On 01/17/14 01:41, Eric Botcazou wrote: Bootstrapped regression tested on x86_64-unknown-linux. Also bootstrapped with --enable-checking=rtl. Note that you can do only one bootstrap with --enable-checking=yes,rtl. Installed on the trunk. As far as I can see, no, it was not installed.

Re: Fix bootstrap with -mno-accumulate-outgoing-args

2014-01-17 Thread Jan Hubicka
* combine-stack-adj.c (combine_stack_adjustments_for_block): Remove ARG_SIZE note when adjustment was eliminated. Ping... This patch prevents me from switching the accumulate-args default for generic and I am waiting for that witht he inliner tunning, so there is quite a dependency

Re: [RFA] [PATCH][PR tree-optimization/59749] Fix recently introduced ree bug

2014-01-17 Thread Jeff Law
On 01/16/14 15:07, Jakub Jelinek wrote: On Thu, Jan 16, 2014 at 02:31:09PM -0700, Jeff Law wrote: +2014-01-16 Jeff Law l...@redhat.com + + * ree.c (combine_set_extension): Correct test for changing number + of hard registers when widening a reaching definition. + 2014-01-16

Re: [RFA] [PATCH][PR tree-optimization/59749] Fix recently introduced ree bug

2014-01-17 Thread Jeff Law
On 01/17/14 14:51, Jeff Law wrote: Anyway, I clearly need to rethink that test. Given this is something we haven't seen in the wild, I'm going to disable it over the weekend/monday so that enable-checking bugs pass and continue to ponder. And the patch which disables the test. jeff

[GOOGLE] Restrict the count_scale to be no larger than 100%

2014-01-17 Thread Dehao Chen
In AutoFDO, sometime edge count might be propagated to be too large due to bad debug info. In this cases, we need to make sure the count scale is no larger than 100% otherwise it'll make real hot code cold. Bootstrapped and passed regression test. Performance test on-going. OK for google-4_8 if

libgo patch committed: Align variable on 8-byte boundary

2014-01-17 Thread Ian Lance Taylor
This patch to libgo aligns the variable work in mgc0.c on an 8-byte boundary. The code expects that to be the case, and complains if it is not aligned. It would already be the case on a 64-bit system, but not necessarily on a 32-bit system. I haven't been able to recreate PR 59866, but I think

Re: [GOOGLE] Restrict the count_scale to be no larger than 100%

2014-01-17 Thread Xinliang David Li
Can callgraph node count be fixed up properly instead of doing individual fixups like this? David On Fri, Jan 17, 2014 at 2:38 PM, Dehao Chen de...@google.com wrote: In AutoFDO, sometime edge count might be propagated to be too large due to bad debug info. In this cases, we need to make sure

Re: [PING][PATCH]Improving mklog [was: Re: RFC Asan instrumentation control]

2014-01-17 Thread Diego Novillo
Apologies for the delay. The patch is OK. On Thu, Jan 16, 2014 at 12:59 AM, Tatiana Udalova t.udal...@samsung.com wrote: Ping! Thank you, Tatiana Udalova -- Hello, I have reproduced the problem with mklog mentioned by Jakub: In my experience mklog is pretty much useless, e.g.

Re: [patch] fix doc header in contrib/mklog

2014-01-17 Thread Diego Novillo
The patch is OK. It qualifies as obvious, too. Thanks. On Thu, Jan 16, 2014 at 6:44 AM, Jonathan Wakely jwakely@gmail.com wrote: The mklog script claims to write to stdout, but it actually modifies the input file in-place. OK to commit this change, which also updates the copyright dates?

Re: Allow passing arrays in registers on AArch64

2014-01-17 Thread Michael Hudson-Doyle
Ian Lance Taylor i...@golang.org writes: On Fri, Jan 17, 2014 at 11:32 AM, Michael Hudson-Doyle michael.hud...@canonical.com wrote: On 18 Jan 2014 07:50, Yufeng Zhang yufeng.zh...@arm.com wrote: Also can you please try to add some new test(s)? It may not be that straightforward to add

[committed] Fix long call support for indirect calls on hppa

2014-01-17 Thread John David Anglin
The attached change fixes a problem detected building gcl. A short call to $$dyncall was sometimes output when doing long call sequences. This caused a link error. Tested on hppa2.0-hp-hpux11.11, hppa64-hp-hpux11.11 and hppa-unknown- linux-gnu. Committed to active branches. Dave -- John

Re: [patch] Pass -fuse-ld=gold to gccgo on targets supporting -fsplit-stack

2014-01-17 Thread Ian Lance Taylor
On Fri, Nov 29, 2013 at 5:29 AM, Matthias Klose d...@ubuntu.com wrote: to get full advantage of the -fsplit-stack option, gccgo binaries have to be linked with gold, not the bfd linker. When the system linker defaults to the bfd linker, then gccgo should explicitly use the gold linker, passing

[committed] PATCH: Fix a comment typo in ix86_split_lea_for_addr

2014-01-17 Thread H.J. Lu
Hi, I checked in this patch as an obvious fix to correct a comment typo in ix86_split_lea_for_addr. The line below the comments is gcc_assert (regno2 != regno0); There is no way for r1 = r1 + C * r1. It should be r1 = r1 + C * r2. H.J. --- Index: ChangeLog

Fix 59828 - Broken assembly on ppc* with two -mcpu= options

2014-01-17 Thread Alan Modra
This patch cures PR59828 by translating all the -mcpu options at once, in order, to their equivalent assembler -m options by using a new spec function. In the process this removes some duplication. All the rhs of -mcpu= options from the command line can be extracted with %{mcpu=*:%*}, and then