Re: [patch] improve sloc assignment on bind_expr entry/exit code

2014-06-18 Thread Olivier Hainque
Hi Jeff, On Jun 17, 2014, at 22:42 , Jeff Law wrote: >> * tree-core.h (tree_block): Add an "end_locus" field, allowing >> memorization of the end of block source location. >> * tree.h (BLOCK_SOURCE_END_LOCATION): New accessor. >> * gimplify.c (gimplify_bind_expr): Propagate t

[PATCH] Make sure cfg-cleanup runs

2014-06-18 Thread Richard Biener
This makes sure we run cfg-cleanup when we propagate into PHI nodes or on the FRE/PRE side remove any stmt. Otherwise we can end up with not removed forwarder blocks. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2014-06-18 Richard Biener * tree-ssa-propaga

Re: [PATCH, aarch64] Fix 61545

2014-06-18 Thread Richard Earnshaw
On 18/06/14 06:19, Richard Henderson wrote: > Trivial fix for missing clobber of the flags over the tlsdesc call. > > Ok for all branches? > > OK. R. > r~ > > * config/aarch64/aarch64.md (tlsdesc_small_): Clobber CC_REGNUM. > > > z > > > diff --git a/gcc/config/aarch64/aarch64.md b

Re: [PATCH 1/5] New Identical Code Folding IPA pass

2014-06-18 Thread Martin Liška
On 06/17/2014 10:14 PM, David Malcolm wrote: On Fri, 2014-06-13 at 12:24 +0200, mliska wrote: [...snip...] Statistics about the pass: Inkscape: 11.95 MB -> 11.44 MB (-4.27%) Firefox: 70.12 MB -> 70.12 MB (-3.07%) FWIW, you wrote 70.12 MB here for both before and after for Firefox, but

Re: [patch] improve sloc assignment on bind_expr entry/exit code

2014-06-18 Thread Olivier Hainque
On Jun 18, 2014, at 09:42 , Olivier Hainque wrote: >> I assume y'all will add a suitable test to the Ada testsuite and propagate >> it into the GCC testsuite in due course? > ISTM that dg-scan-asm for the expected extra .loc's would work, maybe > restricted to some target we know produces .loc

[PATCH] PR61123 : Fix the ABI mis-matching error caused by LTO

2014-06-18 Thread Hale Wang
Hi, With LTO, -fno-short-enums is ignored, resulting in ABI mis-matching in linking. Refer https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61123  for details. This patch add fshort-enums and fshout-wchar to LTO group. To check it, a new procedure object-readelf is added in testsuite/lib/lto.exp a

[PATCH, PR 61540] Do not ICE on impossible devirtualization

2014-06-18 Thread Martin Jambor
Hi, I was quite surprised we still had an assert checking that the target of a virtual call derived by ipa-cp is among possible ones derived by ipa-devirt. This is not true for various down-casts and I managed to trigger it in PR 61540 (where the testcase purposefully invokes undefined behavior b

[PATCH] pass cleanups

2014-06-18 Thread Richard Biener
This removes the special dce_loop pass in favor of dealing with scev and niter estimates in dce generally. Likewise it makes copyprop always cleanup after itself, dealing with scev and niter estimates. It also makes copyprop not unconditionally schedule a cfg-cleanup but only do so if copyprop d

Re: [Patch, GCC/Thumb-1]Mishandle the label type insn in function thumb1_reorg

2014-06-18 Thread Richard Earnshaw
On 10/06/14 12:42, Terry Guo wrote: > Hi There, > > The thumb1_reorg function use macro INSN_CODE to find expected instructions. > But the macro INSN_CODE doesn’t work for label type instruction. The > INSN_CODE(label_insn) will return the label number. When we have a lot of > labels and current l

Re: [PATCH][RFC] Add phiopt in early opts (and add -fssa-phiopt option)

2014-06-18 Thread Richard Biener
On Tue, 17 Jun 2014, Jeff Law wrote: > On 06/17/14 07:07, Richard Biener wrote: > > > > I felt that -ftree-XXX is bad naming so I went for -fssa-XXX > > even if that is now inconsistent. Any optinion here? For > > RTL we simply have unsuffixed names so shall we instead go > > for -fphiopt? PHI

Re: [PATCH 1/5] New Identical Code Folding IPA pass

2014-06-18 Thread Martin Liška
On 06/17/2014 10:09 PM, Paolo Carlini wrote: Hi, On 13/06/14 12:24, mliska wrote: The optimization is inspired by Microsoft /OPT:ICF optimization (http://msdn.microsoft.com/en-us/library/bxwfs976.aspx) that merges COMDAT sections with each function reside in a separate section. In terms

Re: [PATCH 1/5] New Identical Code Folding IPA pass

2014-06-18 Thread Paolo Carlini
Hi, On 18/06/14 10:46, Martin Liška wrote: As one would expect, there is a function 'size'. Cool, thanks! Paolo.

Re: [PATCH 4/5] Existing tests fix

2014-06-18 Thread Martin Liška
On 06/17/2014 10:50 PM, Rainer Orth wrote: Jeff Law writes: On 06/13/14 04:48, mliska wrote: Hi, many tests rely on a precise number of scanned functions in a dump file. If IPA ICF decides to merge some function and(or) read-only variables, counts do not match. Martin Changelog: 201

Re: [patch] fix tests for AVX512

2014-06-18 Thread Jakub Jelinek
On Mon, Jun 09, 2014 at 01:43:48PM +0200, Uros Bizjak wrote: > On Mon, Jun 9, 2014 at 1:34 PM, Kirill Yukhin wrote: > > Hello Uroš, > > On 08 Jun 11:26, Uros Bizjak wrote: > >> On Tue, May 27, 2014 at 12:28 PM, Petr Murzin > >> wrote: > >> > Hi, > >> > I've fixed tests for AVX512, so they could

RE: [Patch, GCC/Thumb-1]Mishandle the label type insn in function thumb1_reorg

2014-06-18 Thread Terry Guo
> -Original Message- > From: Richard Earnshaw > Sent: Wednesday, June 18, 2014 4:31 PM > To: Terry Guo > Cc: gcc-patches@gcc.gnu.org; Ramana Radhakrishnan > Subject: Re: [Patch, GCC/Thumb-1]Mishandle the label type insn in function > thumb1_reorg > > On 10/06/14 12:42, Terry Guo wrote: >

Re: [Patch, GCC/Thumb-1]Mishandle the label type insn in function thumb1_reorg

2014-06-18 Thread Richard Earnshaw
On 18/06/14 10:16, Terry Guo wrote: > > >> -Original Message- >> From: Richard Earnshaw >> Sent: Wednesday, June 18, 2014 4:31 PM >> To: Terry Guo >> Cc: gcc-patches@gcc.gnu.org; Ramana Radhakrishnan >> Subject: Re: [Patch, GCC/Thumb-1]Mishandle the label type insn in function >> thumb1_r

[Patch libstdc++] PR61536 Export out of line comparison operations.

2014-06-18 Thread Ramana Radhakrishnan
PR61536 is a case where linking fails on arm-linux-gnueabi* and arm-eabi* systems as the C++ ABI for ARM specifies out of line comparison operators for typeinfo. Rev r211355 tightened the symbols exported by libstdc++ a bit too much which caused some carnage in the test results for arm-linux-g

Update gcc.gnu.org/projects/gomp/

2014-06-18 Thread Jakub Jelinek
Hi! I've committed following change: --- projects/gomp/index.html25 Oct 2013 07:16:35 - 1.13 +++ projects/gomp/index.html18 Jun 2014 09:48:34 - @@ -63,9 +63,19 @@ available. Status +Jun 18, 2014 +The last major part of Fortran OpenMP v4.0 support has been +committed into

[PATCH] Create less TARGET_MEM_REFs

2014-06-18 Thread Richard Biener
I just figured that we create &TARGET_MEM_REF [base: a_4, offset: 0] from within IVOPTs. That pessimizes further passes unnecessarily. Bootstrap and regtest running on x86_64-unknown-linux-gnu. Richard. 2014-06-18 Richard Biener * tree-ssa-address.c (create_mem_ref_raw): Use proper

Re: [RFC][ARM]: Fix reload spill failure (PR 60617)

2014-06-18 Thread Ramana Radhakrishnan
On Mon, Jun 16, 2014 at 1:53 PM, Venkataramanan Kumar wrote: > Hi Maintainers, > > This patch fixes the PR 60617 that occurs when we turn on reload pass > in thumb2 mode. > > It occurs for the pattern "*ior_scc_scc" that gets generated for the 3 > argument of the below function call. > > JIT:emitS

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

2014-06-18 Thread Ramana Radhakrishnan
On Mon, Jun 2, 2014 at 5:47 PM, Charles Baylis wrote: > 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? This is OK. Ramana > > > g

Re: [PATCH] Create less TARGET_MEM_REFs

2014-06-18 Thread Jakub Jelinek
On Wed, Jun 18, 2014 at 11:56:01AM +0200, Richard Biener wrote: > > I just figured that we create &TARGET_MEM_REF [base: a_4, offset: 0] > from within IVOPTs. That pessimizes further passes unnecessarily. > > Bootstrap and regtest running on x86_64-unknown-linux-gnu. Isn't that against the comm

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

2014-06-18 Thread Ramana Radhakrishnan
On Tue, Jun 17, 2014 at 4:03 PM, Charles Baylis wrote: > On 5 June 2014 07:27, Ramana Radhakrishnan wrote: >> On Mon, Jun 2, 2014 at 5:47 PM, Charles Baylis >> wrote: >>> This patch adds support for post-indexed addressing for NEON structure >>> memory accesses. >>> >>> For example VLD1.8 {d0},

Re: [PATCH] PR61517: fix stmt replacement in bswap pass

2014-06-18 Thread Richard Biener
On Wed, Jun 18, 2014 at 3:30 AM, Thomas Preud'homme wrote: > Hi everybody, > > Thanks to a comment from Richard Biener, the bswap pass take care to not > perform its optimization is memory is modified between the load of the > original expression. However, when it replaces these statements by a

Re: [PATCH] Fix PR61306: improve handling of sign and cast in bswap

2014-06-18 Thread Richard Biener
On Wed, Jun 18, 2014 at 6:55 AM, Thomas Preud'homme wrote: >> From: Richard Biener [mailto:richard.guent...@gmail.com] >> Sent: Wednesday, June 11, 2014 4:32 PM >> > >> > >> > Is this OK for trunk? Does this bug qualify for a backport patch to >> > 4.8 and 4.9 branches? >> >> This is ok for trunk

Re: [PATCH] PR61123 : Fix the ABI mis-matching error caused by LTO

2014-06-18 Thread Richard Biener
On Wed, Jun 18, 2014 at 10:14 AM, Hale Wang wrote: > Hi, > > With LTO, -fno-short-enums is ignored, resulting in ABI mis-matching in > linking. > > Refer https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61123 for details. > > This patch add fshort-enums and fshout-wchar to LTO group. > > To check it,

Re: [PATCH] PR61123 : Fix the ABI mis-matching error caused by LTO

2014-06-18 Thread Richard Biener
On Wed, Jun 18, 2014 at 12:21 PM, Richard Biener wrote: > On Wed, Jun 18, 2014 at 10:14 AM, Hale Wang wrote: >> Hi, >> >> With LTO, -fno-short-enums is ignored, resulting in ABI mis-matching in >> linking. >> >> Refer https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61123 for details. >> >> This pat

[PATCH, i386]: Fix recently added sibcall insns and peephole2 patterns

2014-06-18 Thread Uros Bizjak
Hello! Attached patch fixes recently added sibcall insns and their corresponding peephole2 patterns: - There is no need for new memory_nox32_operand. A generic memory_operand can be used, since new insns and peephole2 patterns should be disabled for TARGET_X32 entirely. - Adds missing "m" constra

Re: [PATCH] Create less TARGET_MEM_REFs

2014-06-18 Thread Richard Biener
On Wed, 18 Jun 2014, Jakub Jelinek wrote: > On Wed, Jun 18, 2014 at 11:56:01AM +0200, Richard Biener wrote: > > > > I just figured that we create &TARGET_MEM_REF [base: a_4, offset: 0] > > from within IVOPTs. That pessimizes further passes unnecessarily. > > > > Bootstrap and regtest running on

Re: [RFC][ARM]: Fix reload spill failure (PR 60617)

2014-06-18 Thread Venkataramanan Kumar
Hi Ramana, On 18 June 2014 15:29, Ramana Radhakrishnan wrote: > On Mon, Jun 16, 2014 at 1:53 PM, Venkataramanan Kumar > wrote: >> Hi Maintainers, >> >> This patch fixes the PR 60617 that occurs when we turn on reload pass >> in thumb2 mode. >> >> It occurs for the pattern "*ior_scc_scc" that get

Re: [PATCH] PR54555: Use strict_low_part for loading a constant only if it is cheaper

2014-06-18 Thread Andreas Schwab
Jeff Law writes: > Let's do better this time ;-) Add a testcase for the m68k port which > verifies we're getting the desired code. Make sense. Installed with the following test case. Andreas. PR rtl-optimization/54555 * gcc.target/m68k/pr54555.c: New test. diff --git a/gcc/t

[PATCH][RFC] Gate loop passes group on number-of-loops > 1, add no-loops group

2014-06-18 Thread Richard Biener
The following aims at reducing the number of pointless passes we run on functions containing no loops. Those are at least two copyprop and one dce pass (two dce passes when vectorization is enabled, three dce passes and an additional copyprop pass when any graphite optimization is enabled). Simp

[PATCH PR61518]

2014-06-18 Thread Yuri Rumyantsev
Hi All, Here is a fix for PR 61518 - additional test was added to reject transformation if reduction variable is not used in reduction statement only since such reduction will not be vectorized. Bootstrap and regression testing did not show any new failures. Is it OK for trunk? gcc/ChangeLog 2

Re: [PATCH][RFC] Gate loop passes group on number-of-loops > 1, add no-loops group

2014-06-18 Thread Jakub Jelinek
On Wed, Jun 18, 2014 at 12:42:19PM +0200, Richard Biener wrote: > Any comments? Does such followup sound realistic or would it be > better to take the opportunity to move IVOPTs a bit closer to > RTL expansion and avoid that "pass_tree_no_loop hack"? I think it is fine to have pass_tree_no_loop p

[PATCH][ARM][committed] Fix check for __FAST_MATH in arm_neon.h

2014-06-18 Thread Kyrill Tkachov
Hi all, All other #ifdefs in arm_neon.h that look for fast math use the __FAST_MATH form rather than __FAST_MATH__. They have the same effect AFAICS. This patch fixes the one sticking out. Committed as obvious with r211779. Thanks, Kyrill 2014-06-18 Kyrylo Tkachov * config/arm/arm_n

Re: [PATCH PR61518]

2014-06-18 Thread Richard Biener
On Wed, Jun 18, 2014 at 12:47 PM, Yuri Rumyantsev wrote: > Hi All, > > Here is a fix for PR 61518 - additional test was added to reject > transformation if reduction variable is not used in reduction > statement only since such reduction will not be vectorized. > > Bootstrap and regression testing

Re: [PATCH] pass cleanups

2014-06-18 Thread Richard Biener
On Wed, 18 Jun 2014, Richard Biener wrote: > > This removes the special dce_loop pass in favor of dealing with > scev and niter estimates in dce generally. Likewise it makes > copyprop always cleanup after itself, dealing with scev and niter > estimates. It also makes copyprop not unconditional

Re: [PATCH, i386]: Fix recently added sibcall insns and peephole2 patterns

2014-06-18 Thread Kai Tietz
2014-06-18 12:24 GMT+02:00 Uros Bizjak : > Hello! > > Attached patch fixes recently added sibcall insns and their > corresponding peephole2 patterns: > > - There is no need for new memory_nox32_operand. A generic > memory_operand can be used, since new insns and peephole2 patterns > should be disab

[GSoC] [match-and-simplify] check for capture index

2014-06-18 Thread Prathamesh Kulkarni
Put a check for capture index. * genmatch.c (parse_capture): Add condition to check capture index. (capture_max): New constant. (stdlib.h): Include. Thanks and Regards, Prathamesh Index: genmatch.c =

Re: [PATCH, i386]: Fix recently added sibcall insns and peephole2 patterns

2014-06-18 Thread Uros Bizjak
On Wed, Jun 18, 2014 at 2:24 PM, Kai Tietz wrote: > The following change in predicates.md seems to be a bit premature. > There is still the point about Darwin's PIC issue for unspec-gotpcrel. > > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61387 > > return ANY_QI_REG_P (op); > }) > > +;; Retur

Re: [PATCH, i386]: Fix recently added sibcall insns and peephole2 patterns

2014-06-18 Thread Dominique Dhumieres
> The following change in predicates.md seems to be a bit premature. > There is still the point about Darwin's PIC issue for unspec-gotpcrel. The change is indeed incompatible with the patch in pr61387 comment 9. And without it the failures are back!-( Kai, what is wrong with Iain's patch in com

Re: [PATCH][RFC] Gate loop passes group on number-of-loops > 1, add no-loops group

2014-06-18 Thread Jeff Law
On 06/18/14 04:42, Richard Biener wrote: The following aims at reducing the number of pointless passes we run on functions containing no loops. Those are at least two copyprop and one dce pass (two dce passes when vectorization is enabled, three dce passes and an additional copyprop pass when a

Re: [PATCH, i386]: Fix recently added sibcall insns and peephole2 patterns

2014-06-18 Thread Kai Tietz
2014-06-18 15:11 GMT+02:00 Dominique Dhumieres : > >> The following change in predicates.md seems to be a bit premature. >> There is still the point about Darwin's PIC issue for unspec-gotpcrel. > > The change is indeed incompatible with the patch in pr61387 comment 9. > And without it the failures

Re: [patch] improve sloc assignment on bind_expr entry/exit code

2014-06-18 Thread Jeff Law
On 06/18/14 01:42, Olivier Hainque wrote: Hi Jeff, On Jun 17, 2014, at 22:42 , Jeff Law wrote: * tree-core.h (tree_block): Add an "end_locus" field, allowing memorization of the end of block source location. * tree.h (BLOCK_SOURCE_END_LOCATION): New accessor. *

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

2014-06-18 Thread Charles Baylis
On 18 June 2014 11:01, Ramana Radhakrishnan wrote: > On Mon, Jun 2, 2014 at 5:47 PM, Charles Baylis > wrote: >> 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-gnuea

Re: [patch] improve sloc assignment on bind_expr entry/exit code

2014-06-18 Thread Olivier Hainque
On Jun 18, 2014, at 15:48 , Jeff Law wrote: >> ISTM that dg-scan-asm for the expected extra .loc's would work, maybe >> restricted to some target we know produces .loc directives. >> >> Sounds appropriate ? > Yea, that should be fine. Most folks test x86-64 linux, so that's going to > get

Re: [PATCH, rs6000] Remove XFAIL from default_format_denormal_2.f90 for PowerPC on Linux

2014-06-18 Thread David Edelsohn
On Tue, Jun 17, 2014 at 4:48 PM, Rainer Orth wrote: > "William J. Schmidt" writes: > >> Index: gcc/testsuite/gfortran.dg/default_format_denormal_2.f90 >> === >> --- gcc/testsuite/gfortran.dg/default_format_denormal_2.f90 (revision

Re: [PATCH 3/9] Optimise __aeabi_uldivmod (stack manipulation)

2014-06-18 Thread Richard Earnshaw
On 11/06/14 11:19, Charles Baylis wrote: > 2014-05-22 Charles Baylis > > * config/arm/bpabi.S (__aeabi_uldivmod): Optimise stack pointer > manipulation. OK. R. > --- > libgcc/config/arm/bpabi.S | 54 > +-- > 1 file changed, 43 inserti

Re: [PATCH 4/9] Optimise __aeabi_uldivmod

2014-06-18 Thread Richard Earnshaw
On 11/06/14 11:19, Charles Baylis wrote: > 2014-05-22 Charles Baylis > > * config/arm/bpabi.S (__aeabi_uldivmod): Perform division using call > to __udivmoddi4. OK. R. > --- > libgcc/config/arm/bpabi.S | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a

Re: [PATCH 5/9] Optimise __aeabi_ldivmod (stack manipulation)

2014-06-18 Thread Richard Earnshaw
On 11/06/14 11:19, Charles Baylis wrote: > 2014-05-22 Charles Baylis > > * config/arm/bpabi.S (__aeabi_ldivmod): Optimise stack manipulation. OK. R. > --- > libgcc/config/arm/bpabi.S | 14 +++--- > 1 file changed, 3 insertions(+), 11 deletions(-) > > diff --git a/libgcc/confi

Re: [PATCH, rs6000] Fix PR61542 - V4SF vector extract for little endian

2014-06-18 Thread David Edelsohn
On Tue, Jun 17, 2014 at 6:44 PM, BIll Schmidt wrote: > Hi, > > As described in https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61542, a > new test case (gcc.dg/vect/vect-nop-move.c) was added in 4.9. This > exposes a bug on PowerPC little endian for extracting an element from a > V4SF value that goe

Re: [PATCH 6/9] Optimise __aeabi_ldivmod

2014-06-18 Thread Richard Earnshaw
On 11/06/14 11:19, Charles Baylis wrote: > 2014-05-22 Charles Baylis > > * config/arm/bpabi.S (__aeabi_ldivmod): Perform division using > __udivmoddi4, and fixups for negative operands. OK. > --- > libgcc/config/arm/bpabi.S | 41 - > 1 fil

Re: [PATCH 7/9] Fix cfi annotations

2014-06-18 Thread Richard Earnshaw
On 11/06/14 11:19, Charles Baylis wrote: > 2014-05-22 Charles Baylis > > * config/arm/bpabi.S (__aeabi_ldivmod, __aeabi_uldivmod, > push_for_divide, pop_for_divide): Use .cfi_* directives for DWARF > annotations. Fix DWARF information. OK. > --- > libgcc/config/arm/bpabi.S

Re: [PATCH 8/9] Use __udivmoddi4 for v6M aeabi_uldivmod

2014-06-18 Thread Richard Earnshaw
On 11/06/14 11:19, Charles Baylis wrote: > 2014-05-22 Charles Baylis > > * config/arm/bpabi-v6m.S (__aeabi_uldivmod): Perform division using > __udivmoddi4. OK. R. > --- > libgcc/config/arm/bpabi-v6m.S | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/lib

Re: [PATCH 9/9] Remove __gnu_uldivmod_helper

2014-06-18 Thread Richard Earnshaw
On 11/06/14 11:19, Charles Baylis wrote: > 2014-05-22 Charles Baylis > > * config/arm/bpabi.c (__gnu_uldivmod_helper): Remove. OK. R. > --- > libgcc/config/arm/bpabi.c | 14 -- > 1 file changed, 14 deletions(-) > > diff --git a/libgcc/config/arm/bpabi.c b/libgcc/config/ar

Re: Fwd: [RFC][gomp4] Offloading patches (2/3): Add tables generation

2014-06-18 Thread Ilya Verbin
On 17 Jun 21:22, Bernd Schmidt wrote: > On 06/17/2014 08:20 PM, Ilya Verbin wrote: > >I don't get this part of the plan. Where a host compiler will look for > >mkoffloads? > > > >E.g., first I configure/make/install the target gcc and corresponding > >mkoffload with the following options: > >--e

Re: [PATCH, ARM] Enable fuse-caller-save for ARM

2014-06-18 Thread Ramana Radhakrishnan
On Sun, Jun 1, 2014 at 12:27 PM, Tom de Vries wrote: > Richard, > > This patch: > - adds the for TARGET_CALL_FUSAGE_CONTAINS_NON_CALLEE_CLOBBERS required > clobbers in CALL_INSN_FUNCTION_USAGE, > - sets TARGET_CALL_FUSAGE_CONTAINS_NON_CALLEE_CLOBBERS to true, which > enables > the fuse-caller-

[PATCH, Testsuite, AArch64] Make Function Return Value Test More Robust

2014-06-18 Thread Yufeng Zhang
Hi, This improves the robustness of the aapcs64 test framework for testing function return ABI rules. It ensures the test facility functions now able to see the exact content of return registers right at the moment when a function returns. OK for trunk? Thanks, Yufeng gcc/testsuite

[PATCH] rs6000: Make cr5 allocatable

2014-06-18 Thread Segher Boessenkool
A comment in rs6000.h says "cr5 is not supposed to be used". I checked all ABIs, going as far back as PowerOpen (1994), and found no mention of this. Also document cr6 is used by some vector instructions. Tested on powerpc64-linux, no regressions. Okay to apply? Segher 2014-06-18 Segher Bo

Re: [PATCH, Testsuite, AArch64] Make Function Return Value Test More Robust

2014-06-18 Thread Richard Earnshaw
On 18/06/14 15:16, Yufeng Zhang wrote: > Hi, > > This improves the robustness of the aapcs64 test framework for testing > function return ABI rules. It ensures the test facility functions now > able to see the exact content of return registers right at the moment > when a function returns. >

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

2014-06-18 Thread Charles Baylis
On 18 June 2014 11:06, Ramana Radhakrishnan wrote: >> 2014-06-15 Charles Baylis >> >> * config/arm/arm.c (arm_new_rtx_costs): Reduce cost for mem with >> embedded side effects. > > I'm not too thrilled with putting in more special cases that are not > table driven in there. Can

Re: Fwd: [RFC][gomp4] Offloading patches (2/3): Add tables generation

2014-06-18 Thread Bernd Schmidt
On 06/18/2014 04:13 PM, Ilya Verbin wrote: On 17 Jun 21:22, Bernd Schmidt wrote: On 06/17/2014 08:20 PM, Ilya Verbin wrote: I don't get this part of the plan. Where a host compiler will look for mkoffloads? E.g., first I configure/make/install the target gcc and corresponding mkoffload with

Re: [PATCH, AARCH64] Enable fuse-caller-save for AARCH64

2014-06-18 Thread Marcus Shawcroft
On 1 June 2014 11:00, Tom de Vries wrote: > Richard, > > This patch: > - adds the for TARGET_CALL_FUSAGE_CONTAINS_NON_CALLEE_CLOBBERS required > clobbers in CALL_INSN_FUNCTION_USAGE, > - sets TARGET_CALL_FUSAGE_CONTAINS_NON_CALLEE_CLOBBERS to true, which > enables > the fuse-caller-save optimi

Formatting fixes for (gccint) Standard Names

2014-06-18 Thread Andreas Schwab
Tested with make info and installed as obvious. Andreas. * doc/md.texi (Standard Names): Use @itemx for grouped items. Remove blank line after @item. diff --git a/gcc/doc/md.texi b/gcc/doc/md.texi index e17ffca..1c3a326 100644 --- a/gcc/doc/md.texi +++ b/gcc/doc/md.texi @@ -4835,

Re: [PATCH] Fix PR61306: improve handling of sign and cast in bswap

2014-06-18 Thread Marek Polacek
On Wed, Jun 18, 2014 at 12:55:01PM +0800, Thomas Preud'homme wrote: > @@ -1646,20 +1648,23 @@ do_shift_rotate (enum tree_code code, >n->n <<= count; >break; > case RSHIFT_EXPR: > + /* Arithmetic shift of signed type: result is dependent on the value. > */ > + if (!T

Re: [PATCH 1/9] Whitespace

2014-06-18 Thread Charles Baylis
On 11 June 2014 13:55, Richard Earnshaw wrote: > On 11/06/14 11:19, Charles Baylis wrote: >> 2014-05-22 Charles Baylis >> >> * config/arm/bpabi.S (__aeabi_uldivmod): Fix whitespace. >> (__aeabi_ldivmod): Fix whitespace. > > This is OK, but please wait until the others are ready to g

Re: [PATCH, PR 61540] Do not ICE on impossible devirtualization

2014-06-18 Thread Bernhard Reutner-Fischer
On 18 June 2014 10:24:16 Martin Jambor wrote: @@ -3002,10 +3014,8 @@ try_make_edge_direct_virtual_call (struct cgraph_edge *ie, if (target) { -#ifdef ENABLE_CHECKING - gcc_assert (possible_polymorphic_call_target_p -(ie, cgraph_get_node (target))); -#endif + if (!pos

[PATCH, ARM] Improve code-gen for multiple shifted accumulations in array indexing

2014-06-18 Thread Yufeng Zhang
Hi, This patch improves the code-gen of -marm in the case of two-dimensional array access. Given the following code: typedef struct { int x,y,a,b; } X; int f7a(X p[][4], int x, int y) { return p[x][y].a; } The code-gen on -O2 -marm -mcpu=cortex-a15 is currently mov r2, r2, as

Re: [PATCH, ARM] Improve code-gen for multiple shifted accumulations in array indexing

2014-06-18 Thread Yufeng Zhang
This time with patch... Apologize. Yufeng On 06/18/14 17:31, Yufeng Zhang wrote: Hi, This patch improves the code-gen of -marm in the case of two-dimensional array access. Given the following code: typedef struct { int x,y,a,b; } X; int f7a(X p[][4], int x, int y) { return p[x][y].a; }

RE: [PATCH, rs6000] Fix PR61542 - V4SF vector extract for little endian

2014-06-18 Thread Bernd Edlinger
Hi, On Wed, 18 Jun 2014 09:56:15, David Edelsohn wrote: > > On Tue, Jun 17, 2014 at 6:44 PM, BIll Schmidt > wrote: >> Hi, >> >> As described in https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61542, a >> new test case (gcc.dg/vect/vect-nop-move.c) was added in 4.9. This >> exposes a bug on PowerPC l

Re: [PATCH] PR61123 : Fix the ABI mis-matching error caused by LTO

2014-06-18 Thread Mike Stump
On Jun 18, 2014, at 3:22 AM, Richard Biener wrote: >> Space after the *. >> >> I think you don't need to copy the LTO harness but you can simply >> use dg.exp and sth similar to gcc.dg/20081223-1.c (there is an >> effective target 'lto' to guard for lto support). >> >> So simply place the testca

Re: [PATCH] Fix PR61306: improve handling of sign and cast in bswap

2014-06-18 Thread Jakub Jelinek
On Wed, Jun 18, 2014 at 05:23:13PM +0200, Marek Polacek wrote: > On Wed, Jun 18, 2014 at 12:55:01PM +0800, Thomas Preud'homme wrote: > > @@ -1646,20 +1648,23 @@ do_shift_rotate (enum tree_code code, > >n->n <<= count; > >break; > > case RSHIFT_EXPR: > > + /* Arithmetic shi

Re: [PATCH] rs6000: Make cr5 allocatable

2014-06-18 Thread Mike Stump
On Jun 18, 2014, at 7:14 AM, Segher Boessenkool wrote: > A comment in rs6000.h says "cr5 is not supposed to be used". I checked > all ABIs, I usually do a blame and find that change that added it… Ah, there it is, r341… let’s see, rms did it! :-) Oh well… never mind. Kinda amazing the b

[GSoC] Addition of ISL AST generation to Graphite

2014-06-18 Thread Roman Gareev
These patches add ISL AST generation to graphite, which can be chosen by the fgraphite-code-generator=[isl|cloog] switch. The first patch makes initial renaming of gloog and gloog_error to graphite_regenerate_ast_cloog and graphite_regenerate_error, respectively. The second one adds new files with

Re: [GSoC] Addition of ISL AST generation to Graphite

2014-06-18 Thread Tobias Grosser
On 18/06/2014 21:00, Roman Gareev wrote: These patches add ISL AST generation to graphite, which can be chosen by the fgraphite-code-generator=[isl|cloog] switch. The first patch makes initial renaming of gloog and gloog_error to graphite_regenerate_ast_cloog and graphite_regenerate_error, respec

Re: [PATCH 1/5] New Identical Code Folding IPA pass

2014-06-18 Thread Jan Hubicka
> On 06/13/14 04:24, mliska wrote: > > > >You may ask, why the GNU GCC does need such a new optimization. The > >compiler, having simply better knowledge of a compiled source file, > >is capable of reaching better results, especially if Link-Time > >optimization is enabled. Apart from that, GCC imp

Re: [patch i386]: Combine memory and indirect jump

2014-06-18 Thread Jeff Law
On 06/17/14 14:35, Kai Tietz wrote: I just did retest my testcase with recent source. I can't reproduce this missed optimization before sched2 pass anymore. I moved second peephole2 pass just before split_before_sched2 and everything got caught. Let's go with this if your idea of using a define

Re: [PATCH] rs6000: Make cr5 allocatable

2014-06-18 Thread David Edelsohn
On Wed, Jun 18, 2014 at 10:14 AM, Segher Boessenkool wrote: > A comment in rs6000.h says "cr5 is not supposed to be used". I checked > all ABIs, going as far back as PowerOpen (1994), and found no mention > of this. > > Also document cr6 is used by some vector instructions. > > Tested on powerpc6

RE: RFA: Make LRA temporarily eliminate addresses before testing constraints

2014-06-18 Thread Matthew Fortune
> On 2014-06-16, 12:12 PM, Robert Suchanek wrote: > > Pinging for approval. > > > > This part of the patch will be needed for MIPS16. The second part to > enable > > LRA in MIPS has been already approved. > > > >Sorry, Robert. I thought you are waiting for some Richard's comment > (actually h

[PATCH] dwarf2out.c: Pass DWARF type modifiers around as flags argument.

2014-06-18 Thread Mark Wielaard
modified_type_die and add_type_attribute take two separate arguments for whether the type should be const and/or volatile. To help add more type modifiers pass the requested modifiers as one flag value to these functions. And introduce helper functions dw_mod_type_flags and dw_mod_decl_flags to eas

[Fortran, Patch, committed] Update {gfortran,intrinsic}.texi refs to OpenMP 4

2014-06-18 Thread Tobias Burnus
Committed as obvious as Rev. 211806. Tobias Index: gcc/fortran/ChangeLog === --- gcc/fortran/ChangeLog (Revision 211805) +++ gcc/fortran/ChangeLog (Arbeitskopie) @@ -1,3 +1,8 @@ +2014-06-18 Tobias Burnus + + * gfortran.texi (OpenM

Re: [PATCH 5/5] add libcc1

2014-06-18 Thread Tom Tromey
> "Joseph" == Joseph S Myers writes: Tom> This patch adds the plugin to the gcc tree and updates the Tom> top-level configury. Following up on your review. Joseph> I don't see anything obvious that would disable the plugin if Joseph> plugins are unsupported (e.g. on Windows host) or disable

C++ PATCH for c++/61507 (variadics and explicit template args)

2014-06-18 Thread Jason Merrill
In this bug we were throwing away the explicit args when doing nested unification for a function, with the result that we didn't remember them when proceeding to do unification for the trailing arguments. Fixed by preserving ARGUMENT_PACK_EXPLICIT_ARGS. Tested x86_64-pc-linux-gnu, applying to

C++ PATCH for c++/59296 (rvalue object and lvalue ref-qualifier)

2014-06-18 Thread Jason Merrill
We were treating a const & member function like a normal const reference, and binding an rvalue object argument to it. But it doesn't work that way. Tested x86_64-pc-linux-gnu, applying to trunk. commit 20a165532a9b0b0dada391716a1fb781af3ec005 Author: Jason Merrill Date: Wed Jun 18 22:56:25

[patch committed] [SH] Fix build failure in libgomp

2014-06-18 Thread Kaz Kojima
Hi, Trunk fails to build on sh4-unknown-linux-gnu with an ICE during compiling libgomp. See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61550 for detail. sh.c:prepare_move_operands has the code for TLS addresses which shouldn't be run if reload in progress or done. The attached patch is to fix

Re: [PATCH, aarch64] Fix 61545

2014-06-18 Thread Kyle McMartin
On Tue, Jun 17, 2014 at 10:19:06PM -0700, Richard Henderson wrote: > Trivial fix for missing clobber of the flags over the tlsdesc call. > > Ok for all branches? > > > r~ > > * config/aarch64/aarch64.md (tlsdesc_small_): Clobber CC_REGNUM. > pretty sure we need a similar fix for tlsgd_s

Re: [PATCH, aarch64] Fix 61545

2014-06-18 Thread Richard Henderson
On 06/18/2014 03:57 PM, Kyle McMartin wrote: > pretty sure we need a similar fix for tlsgd_small, since __tls_get_addr > could clobber CC as well. As I replied in IRC, no, because tlsgd_small is modeled with an actual CALL_INSN, and thus call-clobbered registers work as normal. r~

Re: [PATCH, aarch64] Fix 61545

2014-06-18 Thread Kyle McMartin
On Wed, Jun 18, 2014 at 04:04:53PM -0700, Richard Henderson wrote: > On 06/18/2014 03:57 PM, Kyle McMartin wrote: > > pretty sure we need a similar fix for tlsgd_small, since __tls_get_addr > > could clobber CC as well. > > As I replied in IRC, no, because tlsgd_small is modeled with an actual > C

Re: [PATCH, AARCH64] Enable fuse-caller-save for AARCH64

2014-06-18 Thread Richard Henderson
On 06/01/2014 03:00 AM, Tom de Vries wrote: > +/* Emit call insn with PAT and do aarch64-specific handling. */ > + > +bool > +aarch64_emit_call_insn (rtx pat) > +{ > + rtx insn = emit_call_insn (pat); > + > + rtx *fusage = &CALL_INSN_FUNCTION_USAGE (insn); > + clobber_reg (fusage, gen_rtx_REG (

Re: [PATCH, AARCH64] Enable fuse-caller-save for AARCH64

2014-06-18 Thread Richard Henderson
On 06/01/2014 03:00 AM, Tom de Vries wrote: > +aarch64_emit_call_insn (rtx pat) > +{ > + rtx insn = emit_call_insn (pat); > + > + rtx *fusage = &CALL_INSN_FUNCTION_USAGE (insn); > + clobber_reg (fusage, gen_rtx_REG (word_mode, IP0_REGNUM)); > + clobber_reg (fusage, gen_rtx_REG (word_mode, IP1_R

Re: [PATCH, ARM] Enable fuse-caller-save for ARM

2014-06-18 Thread Richard Henderson
On 06/01/2014 04:27 AM, Tom de Vries wrote: > + if (TARGET_AAPCS_BASED) > +{ > + /* For AAPCS, IP and CC can be clobbered by veneers inserted by the > + linker. We need to add these to allow > + arm_call_fusage_contains_non_callee_clobbers to return true. */ > + rtx *fusa

Re: Update gcc.gnu.org/projects/gomp/

2014-06-18 Thread Gerald Pfeifer
On Wed, 18 Jun 2014, Jakub Jelinek wrote: > I've committed following change: Cool. > Status > > +Jun 18, 2014 > +The last major part of Fortran OpenMP v4.0 support has been > +committed into SVN mainline. > + > Oct 11, 2013 > The gomp-4_0-branch has been merged into SVN > -mainline, so GCC 4

Re: -fuse-caller-save - Collect register usage information

2014-06-18 Thread Richard Henderson
On 05/19/2014 07:30 AM, Tom de Vries wrote: > + for (insn = get_insns (); insn != NULL_RTX; insn = next_insn (insn)) > +{ > + HARD_REG_SET insn_used_regs; > + > + if (!NONDEBUG_INSN_P (insn)) > + continue; > + > + find_all_hard_reg_sets (insn, &insn_used_regs, false); > + >

RE: [PATCH] Fix PR61306: improve handling of sign and cast in bswap

2014-06-18 Thread Thomas Preud'homme
> From: Jakub Jelinek [mailto:ja...@redhat.com] > Sent: Thursday, June 19, 2014 1:54 AM > > Seems there are actually two spots with this, not just one. > > Completely untested fix: > > 2014-06-18 Jakub Jelinek > > * tree-ssa-math-opts.c (do_shift_rotate, find_bswap_or_nop_1): > Cast >