Re: [C++] Fix __builtin_shuffle

2013-06-28 Thread Jakub Jelinek
Hi! On Thu, Jun 27, 2013 at 01:59:37PM +0200, Marc Glisse wrote: --- testsuite/g++.dg/ext/pr57509.C(revision 0) +++ testsuite/g++.dg/ext/pr57509.C(revision 0) @@ -0,0 +1,16 @@ +/* { dg-do compile } */ +/* { dg-options -std=c++11 } */ + +template bool struct enable_if {}; +template

[PATCH] Fix non-INTEGER_CST step vectorization (PR tree-optimization/57741)

2013-06-28 Thread Jakub Jelinek
Hi! My recent patch introduced a regression as shown by the attached testcases, there was nothing actually checking the type of the induction, but because we allowed only INTEGER_CST steps that implied integral/pointer types only. With -ffast-math I don't see a reason why we can't handle

Re: [PATCH] Fix pr57637

2013-06-28 Thread Zhenqiang Chen
On 27 June 2013 21:10, Richard Earnshaw rearn...@arm.com wrote: On 27/06/13 10:02, Zhenqiang Chen wrote: Hi, Shrink-wrap optimization sinks some instructions for more opportunities. It uses DF_LR_BB_INFO (bb)-def to check whether BB clobbers SRC. But for ARM, gcc might generate cond_exec

Re: [C++] Fix __builtin_shuffle

2013-06-28 Thread Marc Glisse
On Fri, 28 Jun 2013, Jakub Jelinek wrote: Hi! On Thu, Jun 27, 2013 at 01:59:37PM +0200, Marc Glisse wrote: --- testsuite/g++.dg/ext/pr57509.C (revision 0) +++ testsuite/g++.dg/ext/pr57509.C (revision 0) @@ -0,0 +1,16 @@ +/* { dg-do compile } */ +/* { dg-options -std=c++11 } */ +

Re: [PATCH][ARM][6/n] Partial IT block deprecation in ARMv8 AArch32 - VFP patterns

2013-06-28 Thread Ramana Radhakrishnan
Ok. Ramana On Mon, Jun 10, 2013 at 11:52 AM, Kyrylo Tkachov kyrylo.tkac...@arm.com wrote: Hi all, This patch makes the changes to the various floating point patterns in vfp.md. Since pretty much all floating point instruction are always encoded in 32 bits, they cannot be used inside an IT

Re: [patch, fortran] PR 50554 - redefinition of index variable with inquire(iolength=...)

2013-06-28 Thread Tobias Burnus
Tobias Burnus wrote: Actually, I wonder whether the following (untested) shouldn't be sufficient: Seems to work. Build and regtested on x86-64-gnu-linux. OK for the trunk? Tobias 2013-06-28 Tobias Burnus bur...@net-b.de PR fortran/50554 * io.c (match_inquire_element): Add missing do-var

Re: [PATCH][ARM][7/n] Partial IT block deprecation in ARMv8 AArch32 - straightforward arm.md changes

2013-06-28 Thread Ramana Radhakrishnan
2013-06-18 Kyrylo Tkachov kyrylo.tkac...@arm.com * config/arm/arm.md (arm_mulsi3_v6): Add alternative for 16-bit encoding. (mulsi3addsi_v6): Disable predicable variant for arm_restrict_it. (mulsi3subsi): Likewise. (mulsidi3adddi): Likewise.

*ping* - Re: [Patch, Fortran] Add end-of-scope finalization (Part 2 of 2)

2013-06-28 Thread Tobias Burnus
Ping. Change: Updated scan-tree-dump for -m32 / -m64 differences. Tobias Burnus wrote: This patch adds finalization calls for components. This completes the end-of-scope finalization, but it is also called for the LHS of intrinsic assignment. (LHS finalization for the variable itself is

Re: [PATCH][ARM][8/n] Partial IT block deprecation in ARMv8 AArch32 - mov* patterns and splitters

2013-06-28 Thread Ramana Radhakrishnan
On Thu, Jun 20, 2013 at 2:38 PM, Kyrylo Tkachov kyrylo.tkac...@arm.com wrote: Hi all, This patch adjusts the mov* patterns in the arm backend to generate code appropriate for -mrestrict-it. The rules are: moves between any two registers are allowed to be in IT blocks. mov immediate are

Re: [PATCH, i386, PR57623] Introduce _bextr (single underscore) intrinsucs

2013-06-28 Thread Kirill Yukhin
On 6/27/2013 8:28 PM, Richard Henderson wrote: Hello, The patch is ok with that fixed. Thanks, checked into trunk: http://gcc.gnu.org/ml/gcc-cvs/2013-06/msg00941.html. Thanks, K

[Ping]RE: [PATCH,ARM] Fix PR57329 - backport to gcc 4.8

2013-06-28 Thread Terry Guo
Ping. BR, Terry -Original Message- From: gcc-patches-ow...@gcc.gnu.org [mailto:gcc-patches- ow...@gcc.gnu.org] On Behalf Of Terry Guo Sent: Monday, June 03, 2013 6:02 PM To: gcc-patches@gcc.gnu.org Cc: Richard Earnshaw; Ramana Radhakrishnan Subject: [PATCH,ARM] Fix PR57329 -

Re: [Ping]RE: [PATCH,ARM] Fix PR57329 - backport to gcc 4.8

2013-06-28 Thread Ramana Radhakrishnan
On 06/28/13 11:00, Terry Guo wrote: Ping. BR, Terry -Original Message- From: gcc-patches-ow...@gcc.gnu.org [mailto:gcc-patches- ow...@gcc.gnu.org] On Behalf Of Terry Guo Sent: Monday, June 03, 2013 6:02 PM To: gcc-patches@gcc.gnu.org Cc: Richard Earnshaw; Ramana Radhakrishnan Subject:

Re: [C++] Fix __builtin_shuffle

2013-06-28 Thread Marc Glisse
On Fri, 28 Jun 2013, Marc Glisse wrote: It seems better to do the following, so we still test for extra warnings: -template class T void g (T) {} -template class T auto g (T x) - typename enable_ifsizeof(__builtin_shuffle(x,x))!=2::type {} +template class T void g (T const) {} +template

Re: [Ping]RE: [PATCH,ARM] Fix PR57329 - backport to gcc 4.8

2013-06-28 Thread Ramana Radhakrishnan
On 06/28/13 11:00, Terry Guo wrote: Ping. BR, Terry -Original Message- From: gcc-patches-ow...@gcc.gnu.org [mailto:gcc-patches- ow...@gcc.gnu.org] On Behalf Of Terry Guo Sent: Monday, June 03, 2013 6:02 PM To: gcc-patches@gcc.gnu.org Cc: Richard Earnshaw; Ramana Radhakrishnan Subject:

[Patch,Aarch64] Make frame grow downwards

2013-06-28 Thread Christophe Lyon
Hi, Following the discussion on http://gcc.gnu.org/ml/gcc/2013-05/msg00208.html here is a patch to change the frame direction. Passed 'make check' with no regression on aarch64-none-linux-gnu and with a few UNSUPPORTED - PASS on aarch64-none-elf (pr34225, pr38616, pr38902, pr40971, pr46440,

Re: Unordered container insertion hints

2013-06-28 Thread Jonathan Wakely
On 23 June 2013 13:51, Jonathan Wakely wrote: On 19 June 2013 20:56, François Dumont wrote: Still no chance to have a look ? I'll try to finish reviewing it today, thanks for the reminder. Sorry for the delay. The patch is OK, with a few small changes to the new docs: Please change

[PATCH] Disable strassen.f90 test for aarch64 tiny memory model.

2013-06-28 Thread Marcus Shawcroft
This test case is too large to fit in the aarch64 tiny memory model... OK? /Marcus 2013-06-28 Marcus Shawcroft marcus.shawcr...@arm.com * testsuite/libgomp.fortran/strassen.f90: Add dg-skip-if aarch64_tiny.diff --git a/libgomp/testsuite/libgomp.fortran/strassen.f90

[PATCH, COMMITTED] AArch64 remove aarch64_symbolic_constant_p.

2013-06-28 Thread Marcus Shawcroft
This patch replaces the use of aarch64_symbolic_constant_p with the (very similar) aarch64_classify_symbolic_expression. Tested on aarch64-none-elf. Committed. /Marcus 2013-06-28 Marcus Shawcroft marcus.shawcr...@arm.com * config/aarch64/aarch64-protos.h

Re: [PATCH] Disable strassen.f90 test for aarch64 tiny memory model.

2013-06-28 Thread Jakub Jelinek
On Fri, Jun 28, 2013 at 01:13:01PM +0100, Marcus Shawcroft wrote: This test case is too large to fit in the aarch64 tiny memory model... Ok. 2013-06-28 Marcus Shawcroft marcus.shawcr...@arm.com * testsuite/libgomp.fortran/strassen.f90: Add dg-skip-if aarch64_tiny. diff

[PATCH] Caller instrumentation with -finstrument-calls

2013-06-28 Thread Paul_Woegerer
Hi, The patch below provides caller instrumentation for GCC. The following new options have been added: -finstrument-calls -finstrument-calls-exclude-function-list=SYM,SYM,... -finstrument-calls-exclude-file-list=FILE,FILE,... These new options behave and appear similar to the

Re: [PATCH] Cilk Plus Array Notation for C++

2013-06-28 Thread Jason Merrill
On 06/28/2013 12:54 AM, Iyer, Balaji V wrote: I agree with you and I have fixed it such that if TREE_TYPE is void then don't bother creating a new variable. This error happens in comma_exp.c testcase in Mac. For example, the following expression: array[:] = (atoi(argv[1]),

Re: [PATCH] Cilk Plus Array Notation for C++

2013-06-28 Thread Jason Merrill
On 06/28/2013 12:54 AM, Iyer, Balaji V wrote: /* If stride and start are of same type and the induction var is not, convert induction variable to stride's type. */ if (TREE_TYPE (start) == TREE_TYPE (stride) TREE_TYPE (stride) != TREE_TYPE

Re: [c++-concepts] requires expression semantics

2013-06-28 Thread Andrew Sutton
I was not aware of that. That's probably the right, but I remember having some troubles getting that to work the way I wanted in the previous implementation. It seemed like I actually had to evaluate the expression to determine if it was actually constexpr. Right; an expression is a

Re: [c++-concepts] requires expression semantics

2013-06-28 Thread Andrew Sutton
This seems to assume that there is a result-type-requirement. +// Returns true if type1 can be implicitly converted to type2. +static inline bool +convertible_to_p (tree type1, tree type2) +{ + // Build a fake conversion expression to force the lookup of user + // defined conversion

Re: *ping* - Re: [Patch, Fortran] Add end-of-scope finalization (Part 2 of 2)

2013-06-28 Thread Dominique Dhumieres
Dear Tobias, Nit pick: I find that '(\\(integer\\(kind=8\\)\\) )?' is easier to parse than '(\\(integer\\(kind=8\\)\\) |)' (a matter of taste and I won't argue about it). /opt/gcc/work/gcc/testsuite/gfortran.dg/class_48.f90: In function '__final_test2_T.2138.constprop.0':

[Patch, Fortran] PR54788 ICE on pointer-array element assignment

2013-06-28 Thread Dominique Dhumieres
Dear all, The following patchlet fixes the ICE for the test case bellow and AFAICT gives the right error. Regstrapped on x86_64-apple-darwin10.8.0. OK for the trunk? Dominiaue 2013-06-28 Dominique d'Humieres domi...@lps.ens.fr PR fortran/54788 * array.c (spec_size):

[PATCH, powerpc], PR 57744, fix quad word atomic instructions to use even/odd registers

2013-06-28 Thread Michael Meissner
This patch fixes PR 57744, where the compiler did not allocate even/odd register combination for the lqarx and stqcx. instructions. I traced the problem down to the fact that PTImode can only go in even GPRs (in part to support the quad word instructions), while TImode can go in even/odd GPRs as

[PATCH, COMMITTED] AArch64 minor update to comment w.r.t address models.

2013-06-28 Thread Marcus Shawcroft
Updating a comment w.r.t address models. /Marcus 2013-06-28 Marcus Shawcroft marcus.shawcr...@arm.com * config/aarch64/aarch64-protos.h (aarch64_symbol_type): Update comment w.r.t SYMBOL_TINY_ABSOLUTE.diff --git a/gcc/config/aarch64/aarch64-protos.h

[PATCH, COMMITTED] AArch64 fix layout of aarch64_cannot_force_const_mem.

2013-06-28 Thread Marcus Shawcroft
Fixing the layout in aarch64_cannot_force_const_mem()... /Marcus 2013-06-28 Marcus Shawcroft marcus.shawcr...@arm.com * config/aarch64/aarch64.c (aarch64_cannot_force_const_mem): Adjust layout. diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c index

[linaro/gcc-4_8-branch] Backports from trunk

2013-06-28 Thread Christophe Lyon
Hi, I have just committed backports of the following revisions from trunk to linaro/gcc-4_8-branch: r199694 as r200524 r199533 as r200528 r200061 as r200529 r200148 as r200530 r200152 as r200533. Thanks, Christophe.

Re: [PATCH, powerpc], PR 57744, fix quad word atomic instructions to use even/odd registers

2013-06-28 Thread David Edelsohn
On Fri, Jun 28, 2013 at 11:09 AM, Michael Meissner meiss...@linux.vnet.ibm.com wrote: This patch fixes PR 57744, where the compiler did not allocate even/odd register combination for the lqarx and stqcx. instructions. I traced the problem down to the fact that PTImode can only go in even GPRs

Re: [Patch, AArch64, ILP32] 1/5 Initial support - configury changes

2013-06-28 Thread Yufeng Zhang
Hi Andrew, Thank you for your review. I'm currently testing an updated patch and will send it for further review early next week. Regards, Yufeng On 06/26/13 23:59, Andrew Pinski wrote: On Wed, Jun 26, 2013 at 3:33 PM, Yufeng Zhangyufeng.zh...@arm.com wrote: This patch adds the

Re: [PATCH, powerpc], PR 57744, fix quad word atomic instructions to use even/odd registers

2013-06-28 Thread Michael Meissner
On Fri, Jun 28, 2013 at 11:39:46AM -0400, David Edelsohn wrote: Only the PTI change is okay. As we discussed over IRC, this is the patch that I committed. [gcc] 2013-06-28 Michael Meissner meiss...@linux.vnet.ibm.com PR target/57744 * config/rs6000/rs6000.h (MODES_TIEABLE_P):

Re: [C++ Patch] PR 57645

2013-06-28 Thread Paolo Carlini
Hi, On 06/28/2013 02:52 AM, Jason Merrill wrote: On 06/19/2013 08:22 PM, Paolo Carlini wrote: If, in check_bases_and_members, I simply move deduce_noexcept_on_destructors after check_methods and nothing else, all the new testcases are fine + the tests added for Core/1123, but there are

Re: [gomp4] SIMD clauses patch committed

2013-06-28 Thread Aldy Hernandez
On 06/28/13 09:01, Jakub Jelinek wrote: Hi! The patch grew already too large, while doing something clever to avoid unnecessary memory loads/stores in vectorized loop is still unimplemented, the rest is and it seems to work now (at least on the added testcases), so I've committed it to

Re: [Patch, AArch64, ILP32] 5/5 Define _ILP32 and __ILP32__

2013-06-28 Thread Yufeng Zhang
On 06/27/13 20:28, Joseph S. Myers wrote: On Thu, 27 Jun 2013, Yufeng Zhang wrote: We need a reliable way to tell we are compiling for ILP32. On one hand LLP64 support may be added in the future; on the other hand, not all AArch64 If thinking of adding a third ABI, that suggests you should

Re: [PATCH] Fix ICE with __builtin_rd{tsc,tscp,pmc} without lhs (PR target/57736)

2013-06-28 Thread Richard Henderson
On 06/27/2013 11:20 PM, Jakub Jelinek wrote: 2013-06-27 Jakub Jelinek ja...@redhat.com PR target/57736 * config/i386/i386.c (ix86_expand_builtin): If target == NULL and mode is VOIDmode, don't create a VOIDmode pseudo to copy result into. *

[google/gcc-4_8] Fix ICE in output_pubname

2013-06-28 Thread Cary Coutant
This patch is for the google/gcc-4_8 branch. A namespace alias entry can cause a DW_TAG_imported_declaration DIE to be added to the pubnames table, but we don't handle that case when generating the .debug_gnu_pubnames table. 2013-06-28ccout...@google.com * gcc/dwarf2out.c

Re: [PATCH] Cilk Plus Array Notation for C++

2013-06-28 Thread Jason Merrill
OK. Jason

Re: [C++ Patch] PR 57645

2013-06-28 Thread Jason Merrill
On 06/28/2013 12:58 PM, Paolo Carlini wrote: If you like, this is the rationale behind my last patch: save its current value, set it only to force a thorough deduce_noexcept_on_destructor on everything (admittedly, I don't understand all the details of this), and then restore it, don't fiddle at

Re: patch to fix a bug in LRA hard reg splitting

2013-06-28 Thread Vladimir Makarov
On 13-06-27 12:22 PM, Vladimir Makarov wrote: The following patch fixes a LRA bug for some experimental target. Sorry, there is no a test case and the bug can not be reproduced by other people until the target is made public. Here is one more fix for another hard reg splitting bug. The patch

Re: [PATCH, updated] Vtable pointer verification, C++ front end changes (patch 1 of 3)

2013-06-28 Thread Caroline Tice
On Tue, Jun 4, 2013 at 10:20 AM, Jason Merrill ja...@redhat.com wrote: On 05/24/2013 12:15 PM, Caroline Tice wrote: Changes to g++spec.c only affect the g++ driver, not the gcc driver. Are you sure this is what you want? Can't you handle this stuff directly in the

Re: [C++ Patch] PR 57645

2013-06-28 Thread Paolo Carlini
Hi, On 06/28/2013 08:58 PM, Jason Merrill wrote: On 06/28/2013 12:58 PM, Paolo Carlini wrote: If you like, this is the rationale behind my last patch: save its current value, set it only to force a thorough deduce_noexcept_on_destructor on everything (admittedly, I don't understand all the

[patch,i386] Cannot inline sse*.* functions into avx functions

2013-06-28 Thread Sriraman Tallam
Hi, Inlining sse* functions into avx is broken? Here is an example: __attribute__((always_inline,target(sse3))) inline int callee () { return 0; } __attribute__((target(avx))) inline int caller () { return callee (); } main () { return caller (); } $ g++ -O2 foo.cc error: inlining

Re: [patch] regex_traits implementation

2013-06-28 Thread Paolo Carlini
On 06/28/2013 05:47 AM, Tim Shen wrote: Here is an all-in-one patch of implementing std::regex_traits in libstdc++-v3, including testsuites. Very nice to see progress in this area! Obvious question - I may have missed past discussions: is your paperwork, the copyright assignment, Ok?

Re: patch to fix a bug in LRA hard reg splitting

2013-06-28 Thread Vladimir Makarov
On 13-06-28 3:47 PM, Vladimir Makarov wrote: On 13-06-27 12:22 PM, Vladimir Makarov wrote: The following patch fixes a LRA bug for some experimental target. Sorry, there is no a test case and the bug can not be reproduced by other people until the target is made public. Here is one more fix