[PATCH][PR rtl-optimization/pr52773] Do not reference virtual_outgoing_args after vreg instantiation

2015-01-16 Thread Jeff Law
As discussed in the PR and associated patch from Bernd https://gcc.gnu.org/ml/gcc-patches/2013-06/msg01147.html There are cases where we can call into emit_library_call_value after virtual register instantiation is complete. That can result in a reference to a virtual register surviving unti

[PATCH] [PR rtl-optimization/32790] Fix long standing typo/thinko in reg_scan_mark_refs

2015-01-16 Thread Jeff Law
Currently virtually working in PST, not sure if I'll end up in Hawaii or points further west or not. :-) This has been around a long long time. reg_scan_mark_refs counts the number of references to each pseudo in a function. It has to peek at SET_DEST operands in the off chance that they

Re: [patch libstdc++] Optimize synchronization in std::future if futexes are available.

2015-01-16 Thread Hans-Peter Nilsson
On Fri, 16 Jan 2015, pins...@gmail.com wrote: > > On Jan 16, 2015, at 9:57 PM, David Edelsohn wrote: > > > > This patch has broken bootstrap on AIX > > > > May I mention that this really should have been tested on systems > > other than x86 Linux. > > It also broke all newlib targets too. So you c

Re: [patch] DW_AT_producer: Ignore -fpreprocessed

2015-01-16 Thread Jakub Jelinek
On Sat, Jan 17, 2015 at 12:42:21AM +0100, Jan Kratochvil wrote: > Hi, > > I have provided a sufficient fix in GDB for the -fplugin=libcc1plugin feature: > [patch+7.9] compile: Filter out -fpreprocessed > https://sourceware.org/ml/gdb-patches/2015-01/msg00485.html > > But still I think

Re: [patch libstdc++] Optimize synchronization in std::future if futexes are available.

2015-01-16 Thread pinskia
> On Jan 16, 2015, at 9:57 PM, David Edelsohn wrote: > > This patch has broken bootstrap on AIX > > May I mention that this really should have been tested on systems > other than x86 Linux. It also broke all newlib targets too. So you could have tested one listed in the sim-test web page.

Re: [patch libstdc++] Optimize synchronization in std::future if futexes are available.

2015-01-16 Thread David Edelsohn
This patch has broken bootstrap on AIX May I mention that this really should have been tested on systems other than x86 Linux. In file included from /tmp/20150117/powerpc-ibm-aix7.1.0.0/libstdc++-v3/include/ future:44:0, from /nasfarm/edelsohn/src/src/libstdc++-v3/src/c++11/compa

[patch] Update C++11 status in libstdc++ docs

2015-01-16 Thread Jonathan Wakely
Update the C++11 library status table and regenerate HTML. Committed to trunk. commit 3413bcff19f3ca144c8b4ba9660d8737d5c12072 Author: Jonathan Wakely Date: Sat Jan 17 03:22:15 2015 + 2015-01-17 Ville Voutilainen Jonathan Wakely * doc/xml/manual/status_cxx2011

[patch] libstdc++/58357 DR 488 std::rotate should return an iterator

2015-01-16 Thread Jonathan Wakely
http://cplusplus.github.io/LWG/lwg-defects.html#488 Tested x86_64-linux, committed to trunk. commit a5ae94562335d47358186f76ca71cc6cf0560ed8 Author: Jonathan Wakely Date: Tue Sep 23 00:11:26 2014 +0100 DR 488 PR libstdc++/58357 * include/bits/algorithmfwd.h (rotate): Return an

Re: RTL cprop vs. fixed hard regs

2015-01-16 Thread Alan Modra
On Sat, Jan 17, 2015 at 11:16:57AM +1030, Alan Modra wrote: > On Fri, Jan 16, 2015 at 09:35:16AM -0700, Jeff Law wrote: > > On 01/16/15 02:42, Alan Modra wrote: > > > * cprop.c (do_local_cprop): Disallow replacement of fixed > > > hard registers. > > OK. Extra credit for a testcase, ppc specif

[rl78] Various fixes and tweaks

2015-01-16 Thread DJ Delorie
Various RL78-specific fixes and tweaks wrt volatiles and addressing modes. Committed. * config/rl78/rl78-real.md (addqi3_real): Allow volatiles. (addhi3_real): Likewise. Fix [HL+0] syntax. (subqi3_real): Likewise. (subhi3_real): Likewise. (cbranchqi4_real

Re: RTL cprop vs. fixed hard regs

2015-01-16 Thread Alan Modra
On Fri, Jan 16, 2015 at 08:09:51PM -0600, Segher Boessenkool wrote: > On Sat, Jan 17, 2015 at 11:07:12AM +1030, Alan Modra wrote: > > On Fri, Jan 16, 2015 at 11:03:24AM -0600, Segher Boessenkool wrote: > > > On Fri, Jan 16, 2015 at 08:12:27PM +1030, Alan Modra wrote: > > > > OK, so we need to fix t

Re: [PR libgomp/64625] Remove __OFFLOAD_TABLE__ variable/formal parameter (was: Merge current set of OpenACC changes from gomp-4_0-branch)

2015-01-16 Thread Jack Howarth
Using /sw/share/dejagnu/config/unix.exp as generic interface file for target. Using /sw/src/fink.build/gcc50-5.0.0-1000/gcc-5-20150116/libgomp/testsuite/config/default.exp as tool-and-target-specific interface file. Running /sw/src/fink.build/gcc50-5.0.0-1000/gcc-5-20150116/libgomp/testsuite/li

[RFC][PATCH 3/3] Enable zero/sign extension elimination

2015-01-16 Thread Kugan
Re-enable zero/sign extension elimination using value range that includes wrapped attribute. Thanks, Kugan gcc/ChangeLog: 2015-01-16 Kugan Vivekanandarajah * calls.c (precompute_arguments): Check promoted_for_signed_and_unsigned_p and set the promoted mode. * expr.

Re: RTL cprop vs. fixed hard regs

2015-01-16 Thread Segher Boessenkool
On Sat, Jan 17, 2015 at 11:07:12AM +1030, Alan Modra wrote: > On Fri, Jan 16, 2015 at 11:03:24AM -0600, Segher Boessenkool wrote: > > On Fri, Jan 16, 2015 at 08:12:27PM +1030, Alan Modra wrote: > > > OK, so we need to fix this in the rs6000 backend, but it occurs to me > > > that cprop also has a b

[RFC][PATCH 2/3] Propagate and save value ranges wrapped information

2015-01-16 Thread Kugan
This patch propagate value range wrapps attribute and save this to SSA_NAME. Thanks, Kugan gcc/ChangeLog: 2015-01-16 Kugan Vivekanandarajah * builtins.c (determine_block_size): Use new definition of get_range_info. * gimple-pretty-print.c (dump_ssaname_info): Dump n

[RFC][PATCH 1/3] Free a bit in SSA_NAME to save wrapped information

2015-01-16 Thread Kugan
Freeing a spare-bit to store wrapped attribute by going back to representing VR_ANTI_RANGE as [max + 1, min - 1] in SSA_NAME. Thanks, Kugan gcc/ChangeLog: 2015-01-16 Kugan Vivekanandarajah * tree-ssanames.c (set_range_info): Change range info representation and represent VR

[RFC][PATCH 0/3] Re-enable zero/sign extension elimination using value ranges

2015-01-16 Thread Kugan
Hi, Due to wrapping in the value ranges, there was a regression in aplha-linux (https://gcc.gnu.org/ml/gcc-patches/2014-08/msg02458.html) and hence I had to revert the patch that enabled zero/sign extension elimination using value range. I have now attempted to propagate this information and enabl

[patch] libstdc++/60940 unify std::atomic_xxx typedefs with std::atomic types

2015-01-16 Thread Jonathan Wakely
Here's the finished version of the proof-of-concept patch I sent in stage1. This changes the atomic_int typedef to be a synonym for std::atomic instead of std::__atomic_base, and likewise for the other atomic integral types. This fixes PR 60940, so that the non-member atomic ops such as std::ato

Re: RTL cprop vs. fixed hard regs

2015-01-16 Thread Alan Modra
On Fri, Jan 16, 2015 at 09:35:16AM -0700, Jeff Law wrote: > On 01/16/15 02:42, Alan Modra wrote: > > * cprop.c (do_local_cprop): Disallow replacement of fixed > > hard registers. > OK. Extra credit for a testcase, ppc specific is obviously OK. Thanks. Committed revision 219786. I'll see

Re: RTL cprop vs. fixed hard regs

2015-01-16 Thread Alan Modra
On Fri, Jan 16, 2015 at 11:03:24AM -0600, Segher Boessenkool wrote: > On Fri, Jan 16, 2015 at 08:12:27PM +1030, Alan Modra wrote: > > OK, so we need to fix this in the rs6000 backend, but it occurs to me > > that cprop also has a bug here. It shouldn't be touching fixed hard > > registers. > > Wh

Re: [PR libgomp/64625] Remove __OFFLOAD_TABLE__ variable/formal parameter (was: Merge current set of OpenACC changes from gomp-4_0-branch)

2015-01-16 Thread Ilya Verbin
On 16 Jan 19:23, Jack Howarth wrote: > As I read https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64625#c3, the > requirement for __OFFLOAD_TABLE__ was not longer present and the > residual usages of it just had to be removed. The weak symbol on > darwin is fragile and seems to trip up on the existing

Re: [PR libgomp/64625] Remove __OFFLOAD_TABLE__ variable/formal parameter (was: Merge current set of OpenACC changes from gomp-4_0-branch)

2015-01-16 Thread Jack Howarth
As I read https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64625#c3, the requirement for __OFFLOAD_TABLE__ was not longer present and the residual usages of it just had to be removed. The weak symbol on darwin is fragile and seems to trip up on the existing code which produces undefined symbols for __

[patch] libstdc++/56785 reduce space overhead of nested tuples

2015-01-16 Thread Jonathan Wakely
This replaces the current empty _Tuple_impl that terminates the recursive inheritance hierarchy, instead adding the extra code to the last base class that holds data so that the recursion terminates there instead. The purpose of this is to avoid nested tuples having two instances of the same _Tup

Re: [patch] Add and last pieces of C++11 std::lib

2015-01-16 Thread Jonathan Wakely
On 16/01/15 23:38 +, Jonathan Wakely wrote: This defines the C++11 header and adds the wstring_convert and wbuffer_convert utilities. These need lots more tests, so if anyone understands how to use them please test them and report problems to Bugzilla. Tested x86_64-linux, committed to tru

[SH] Introduce treg_set_expr

2015-01-16 Thread Oleg Endo
Hi, The attached patch does a couple of things, which are based on the treg_set_expr (for an explanation/motivation see below). Somehow the stuff just kept piling on and it was difficult to make step-by-step patches for all the individual issues. Some patterns needed to be rewritten to keep the

[patch] DW_AT_producer: Ignore -fpreprocessed

2015-01-16 Thread Jan Kratochvil
Hi, I have provided a sufficient fix in GDB for the -fplugin=libcc1plugin feature: [patch+7.9] compile: Filter out -fpreprocessed https://sourceware.org/ml/gdb-patches/2015-01/msg00485.html But still I think "-fpreprocessed" is inappropriate for DW_AT_producer. Otherwise for an i

[patch] Add and last pieces of C++11 std::lib

2015-01-16 Thread Jonathan Wakely
This defines the C++11 header and adds the wstring_convert and wbuffer_convert utilities. These need lots more tests, so if anyone understands how to use them please test them and report problems to Bugzilla. Tested x86_64-linux, committed to trunk. commit dd8ed5fe16c0d0a5805504da9ea98da86837a5

Re: [PR libgomp/64625] Remove __OFFLOAD_TABLE__ variable/formal parameter (was: Merge current set of OpenACC changes from gomp-4_0-branch)

2015-01-16 Thread Ilya Verbin
On 16 Jan 18:22, Jack Howarth wrote: > On 86_64 Fedora 15, current gcc trunk only produces… > > nm libgcc_s.so.1 | grep OFF > 00215478 d _GLOBAL_OFFSET_TABLE_ > > and not __OFFLOAD_TABLE__, The libgcc_s.so.1 built on > x86_64-apple-darwin14 doesn't even contain the _GLOBAL_OFFSET_TABLE_

Re: [libgo] Build fix for sparc-linux

2015-01-16 Thread Ian Lance Taylor
On Fri, Jan 16, 2015 at 12:37 PM, Richard Henderson wrote: > > The glibc setcontext modifies %g7, so the SETCONTEXT_CLOBBERS_TLS configure > test triggers. > > My guess is that Solaris doesn't clobber %g7, or Rainer would have noticed > this > before. Is it worth also checking for __linux__ in t

Re: [PR libgomp/64625] Remove __OFFLOAD_TABLE__ variable/formal parameter (was: Merge current set of OpenACC changes from gomp-4_0-branch)

2015-01-16 Thread Jack Howarth
On 86_64 Fedora 15, current gcc trunk only produces… nm libgcc_s.so.1 | grep OFF 00215478 d _GLOBAL_OFFSET_TABLE_ and not __OFFLOAD_TABLE__, The libgcc_s.so.1 built on x86_64-apple-darwin14 doesn't even contain the _GLOBAL_OFFSET_TABLE_ symbol. On Fri, Jan 16, 2015 at 5:40 PM, Ilya Ver

Re: Use static chain and libffi for Go closures

2015-01-16 Thread Ian Lance Taylor
On Fri, Jan 16, 2015 at 2:22 AM, Uros Bizjak wrote: > > You should also revert alpha specific change to > libgo/go/testing/quick/quick_test.go, please see [1] and [2]. > > [1] https://gcc.gnu.org/ml/gcc-patches/2013-03/msg00038.html > [2] https://gcc.gnu.org/ml/gcc-patches/2013-03/msg00038/foo.pat

common.opt and optimization attribute housekeeping

2015-01-16 Thread Jan Hubicka
Hi, this patch finishes transition of IPA passes to be per-function (and thus behaving sanely at LTO time when different flags are mixed). It also goes through common.opt and fixes attributes of quite few flags: fauto-inc-dec, fdelete-dead-exceptions, ffunction-cse, fgraphite, fst

Re: Merge current set of OpenACC changes from gomp-4_0-branch

2015-01-16 Thread Ilya Verbin
Hi! On 15 Jan 21:20, Thomas Schwinge wrote: > In r219682, I have committed to trunk our current set of OpenACC changes, > which we had prepared on gomp-4_0-branch. Thanks to everyone who has > been contributing! Unfortunately, it broke offloading from shared libraries (I mean common libs with NE

Re: Use static chain and libffi for Go closures

2015-01-16 Thread Ian Lance Taylor
On Thu, Jan 15, 2015 at 2:12 PM, Richard Henderson wrote: > > All of this has been posted before. > > I believe the ABI change is something we should have for gcc 5. > > Yes, the libffi merge has been causing problems (on targets that > don't even support libgo, annoyingly), but missing support fo

Re: [PR libgomp/64625] Remove __OFFLOAD_TABLE__ variable/formal parameter (was: Merge current set of OpenACC changes from gomp-4_0-branch)

2015-01-16 Thread Ilya Verbin
On 16 Jan 21:34, Thomas Schwinge wrote: > On Thu, 15 Jan 2015 21:20:07 +0100, I wrote: > Here is a patch to remove the __OFFLOAD_SYMBOL__ variable/formal > parameter, as discussed in . > > But -- I now wonder whether that's actually the issue that has been > reported i

Re: Fix a MinGW warning in libiberty/strerror.c

2015-01-16 Thread DJ Delorie
> Thanks. Do I need to hear from someone else approving this, or can I > go ahead and commit? Go ahead and commit.

[PATCH, committed] Parallelize the jit testsuite

2015-01-16 Thread David Malcolm
This patch adds "check-jit" to lang_checks_parallelized, and sets check_jit_parallelize, enabling jit.exp to be split across multiple jobs. Running: time make -j64 check-jit I saw: Before: real 6m49.601s user 6m19.851s sys0m15.824s After real 2m55.869s user 6m

Re: Merge current set of OpenACC changes from gomp-4_0-branch

2015-01-16 Thread Andreas Schwab
n 7 6 8 2 (set (reg:SI 0 %d0) (call (mem:QI (reg/f:SI 33) [0 acc_on_device S1 A8]) (const_int 4 [0x4]))) /daten/aranym/gcc/gcc-20150116/gcc/testsuite/c-c++-common/goacc/acc_on_device-2-off.c:19 -1 (nil) (nil)) Andreas. -- Andreas Schwab, sch...@linux-m68k.org GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 "And now for something completely different."

Re: Stage3 closing soon, call for patch pings

2015-01-16 Thread Jeff Law
On 01/16/15 13:14, Magnus Granberg wrote: torsdag 15 januari 2015 13.26.43 skrev H.J. Lu: On Thu, Jan 15, 2015 at 1:04 PM, Jeff Law wrote: Stage3 is closing rapidly. I've drained my queue of patches I was tracking for gcc-5.However, note that I don't track everything. If it's a patch fo

Re: [debug-early] C++ clones and limbo DIEs

2015-01-16 Thread Jason Merrill
On 01/16/2015 12:50 PM, Aldy Hernandez wrote: Can you remove the first flush and just do it in the second place? If I only flush the limbo list in the second place, that's basically what mainline does, albeit abstracted into a function. I thought the whole point was to get rid of the limbo lis

[libgo] Build fix for sparc-linux

2015-01-16 Thread Richard Henderson
The glibc setcontext modifies %g7, so the SETCONTEXT_CLOBBERS_TLS configure test triggers. My guess is that Solaris doesn't clobber %g7, or Rainer would have noticed this before. Is it worth also checking for __linux__ in the elif test, or just wait until someone notices that they have an incompa

[PR libgomp/64625] Remove __OFFLOAD_TABLE__ variable/formal parameter (was: Merge current set of OpenACC changes from gomp-4_0-branch)

2015-01-16 Thread Thomas Schwinge
Hi! On Thu, 15 Jan 2015 21:20:07 +0100, I wrote: > In r219682, I have committed to trunk our current set of OpenACC changes, Here is a patch to remove the __OFFLOAD_SYMBOL__ variable/formal parameter, as discussed in . But -- I now wonder whether that's actually the

Re: Stage3 closing soon, call for patch pings

2015-01-16 Thread Magnus Granberg
torsdag 15 januari 2015 13.26.43 skrev H.J. Lu: > On Thu, Jan 15, 2015 at 1:04 PM, Jeff Law wrote: > > Stage3 is closing rapidly. I've drained my queue of patches I was > > tracking > > for gcc-5.However, note that I don't track everything. If it's a > > patch > > for a backend, language ot

Re: Merge current set of OpenACC changes from gomp-4_0-branch

2015-01-16 Thread Thomas Schwinge
Hi Gerald! On Fri, 16 Jan 2015 13:32:10 +0100 (CET), Gerald Pfeifer wrote: > On Thursday 2015-01-15 21:20, Thomas Schwinge wrote: > > In r219682, I have committed to trunk our current set of OpenACC changes, > > which we had prepared on gomp-4_0-branch. Thanks to everyone who has > > been contr

Re: [[ARM/AArch64][testsuite] 30/36] Add vpaddl tests.

2015-01-16 Thread Christophe Lyon
On 16 January 2015 at 19:49, Christophe Lyon wrote: > On 16 January 2015 at 19:33, Tejas Belagod wrote: >> >>> +VECT_VAR_DECL(expected,poly,8,16) [] = { 0x33, 0x33, 0x33, 0x33, >>> +0x33, 0x33, 0x33, 0x33, >>> +0x33,

Re: [COMMITTED] Merge libffi with upstream

2015-01-16 Thread Richard Henderson
On 01/15/2015 08:40 AM, Rainer Orth wrote: > * on Solaris/SPARC, /bin/as requires > > .type fn,#function Gas accepts this as well, so let's just use that. > * Yet unfixed for Solaris/SPARC /bin/as: > > as: "v8.s", line 128: error: invalid digit in radix 10 > > as seems to only understand s

Re: Fix CC_MODE pessimization in reorg.c

2015-01-16 Thread Richard Henderson
On 01/16/2015 09:47 AM, Eric Botcazou wrote: > > 2015-01-16 Eric Botcazou > > * reorg.c (fill_simple_delay_slots): If TARGET_FLAGS_REGNUM is valid, > implement a more precise life analysis for it during backward scan. Ok. r~

Merge from trunk to gccgo branch

2015-01-16 Thread Ian Lance Taylor
I merged trunk revision 219753 to the gccgo branch. Ian

[PATCH] Re: Stage 3 RFC: using "jit" for ahead-of-time compilation

2015-01-16 Thread David Malcolm
On Thu, 2015-01-15 at 22:50 +0100, Richard Biener wrote: > On January 15, 2015 9:05:59 PM CET, David Malcolm wrote: > >Release managers: given that this only touches the jit, and that the > >jit > >is off by default, any objections if I go ahead and commit this? > >It's a late-breaking feature, bu

Re: [[ARM/AArch64][testsuite] 36/36] Add vqdmull_n tests.

2015-01-16 Thread Christophe Lyon
On 16 January 2015 at 19:40, Tejas Belagod wrote: > On 13/01/15 15:18, Christophe Lyon wrote: >> >> * gcc.target/aarch64/advsimd-intrinsics/vqdmull_n.c: New file. >> >> diff --git >> a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vqdmull_n.c >> b/gcc/testsuite/gcc.target/aarch64/adv

Re: [[ARM/AArch64][testsuite] 30/36] Add vpaddl tests.

2015-01-16 Thread Christophe Lyon
On 16 January 2015 at 19:33, Tejas Belagod wrote: > >> +VECT_VAR_DECL(expected,poly,8,16) [] = { 0x33, 0x33, 0x33, 0x33, >> +0x33, 0x33, 0x33, 0x33, >> +0x33, 0x33, 0x33, 0x33, >> +

Re: [PING ^ 3] [RFC PATCH, AARCH64] Add support for -mlong-calls option

2015-01-16 Thread David Abdurachmanov
Ping. This was posted in Stage 1, thus still should be valid for Stage 3. First we hit a issue with OpenLoops package were we generated big functions bodies (1-2MB) [1]. This caused the GNU assembler not to be happy as it generated PC-relative offsets to literal pool above 1MB. The authors of pa

Re: [debug-early] C++ clones and limbo DIEs

2015-01-16 Thread Richard Biener
On January 16, 2015 5:31:49 PM CET, Jason Merrill wrote: >On 01/16/2015 05:55 AM, Richard Biener wrote: >> I'd hope that in the very distant future all early DIEs would be >"created" >> by the frontends (that is, dwarf2out.c wouldn't walk into >parents/siblings >> so much). > >Are you thinking tha

Re: [[ARM/AArch64][testsuite] 36/36] Add vqdmull_n tests.

2015-01-16 Thread Tejas Belagod
On 13/01/15 15:18, Christophe Lyon wrote: * gcc.target/aarch64/advsimd-intrinsics/vqdmull_n.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vqdmull_n.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vqdmull_n.c new file mode 100644 index 000..9e7

Re: [[ARM/AArch64][testsuite] 30/36] Add vpaddl tests.

2015-01-16 Thread Tejas Belagod
+VECT_VAR_DECL(expected,poly,8,16) [] = { 0x33, 0x33, 0x33, 0x33, +0x33, 0x33, 0x33, 0x33, +0x33, 0x33, 0x33, 0x33, +0x33, 0x33, 0x33, 0x33 }; +VECT_VAR_DECL(expected,poly,16,8

Re: [[ARM/AArch64][testsuite] 29/36] Add vpadal tests.

2015-01-16 Thread Tejas Belagod
+VECT_VAR_DECL(expected,poly,8,16) [] = { 0x33, 0x33, 0x33, 0x33, +0x33, 0x33, 0x33, 0x33, +0x33, 0x33, 0x33, 0x33, +0x33, 0x33, 0x33, 0x33 }; +VECT_VAR_DECL(expected,poly,16,8)

Re: [[ARM/AArch64][testsuite] 28/36] Add vmnv tests.

2015-01-16 Thread Tejas Belagod
+VECT_VAR_DECL(expected,poly,16,8) [] = { 0x, 0x, 0x, 0x, +0x, 0x, 0x, 0x }; +VECT_VAR_DECL(expected,hfloat,32,4) [] = { 0x, 0x, + 0x, 0x }; + No float

Re: [[ARM/AArch64][testsuite] 27/36] Add vmull_n tests.

2015-01-16 Thread Tejas Belagod
On 13/01/15 15:18, Christophe Lyon wrote: * gcc.target/aarch64/advsimd-intrinsics/vmull_n.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmull_n.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmull_n.c new file mode 100644 index 000..df28a94 -

Re: [[ARM/AArch64][testsuite] 26/36] Add vmull_lane tests.

2015-01-16 Thread Tejas Belagod
On 13/01/15 15:18, Christophe Lyon wrote: * gcc.target/aarch64/advsimd-intrinsics/vmull_lane.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmull_lane.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmull_lane.c new file mode 100644 index 000..

Re: [[ARM/AArch64][testsuite] 25/36] Add vmull tests.

2015-01-16 Thread Tejas Belagod
On 13/01/15 15:18, Christophe Lyon wrote: * gcc.target/aarch64/advsimd-intrinsics/vmull.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmull.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmull.c new file mode 100644 index 000..3fdd51e --- /de

Re: [[ARM/AArch64][testsuite] 24/36] Add vmul_n tests.

2015-01-16 Thread Tejas Belagod
On 13/01/15 15:18, Christophe Lyon wrote: * gcc.target/aarch64/advsimd-intrinsics/vmul_n.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmul_n.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmul_n.c new file mode 100644 index 000..be0ee65 ---

Re: [[ARM/AArch64][testsuite] 23/36] Add vmul_lane tests.

2015-01-16 Thread Tejas Belagod
On 13/01/15 15:18, Christophe Lyon wrote: * gcc.target/aarch64/advsimd-intrinsics/vmul_lane.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmul_lane.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmul_lane.c new file mode 100644 index 000..978

Re: [[ARM/AArch64][testsuite] 22/36] Add vmovn tests.

2015-01-16 Thread Tejas Belagod
On 13/01/15 15:18, Christophe Lyon wrote: * gcc.target/aarch64/advsimd-intrinsics/vmovn.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmovn.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmovn.c new file mode 100644 index 000..bc2c2ca --- /de

Re: [[ARM/AArch64][testsuite] 21/36] Add vmovl tests.

2015-01-16 Thread Tejas Belagod
On 13/01/15 15:18, Christophe Lyon wrote: * gcc.target/aarch64/advsimd-intrinsics/vmovl.c: New file. diff --git a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmovl.c b/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vmovl.c new file mode 100644 index 000..427c9ba --- /de

Re: [[ARM/AArch64][testsuite] 05/36] Add vldX_dup test.

2015-01-16 Thread Christophe Lyon
On 16 January 2015 at 16:20, Tejas Belagod wrote: > On 13/01/15 15:18, Christophe Lyon wrote: >> >> >> * gcc.target/aarch64/advsimd-intrinsics/vldX_dup.c: New file. >> >> diff --git >> a/gcc/testsuite/gcc.target/aarch64/advsimd-intrinsics/vldX_dup.c >> b/gcc/testsuite/gcc.target/aarch64/a

Re: [[ARM/AArch64][testsuite] 20/36] Add vsubw tests, putting most of the code in common with vaddw through vXXWw.inc

2015-01-16 Thread Tejas Belagod
On 13/01/15 15:18, Christophe Lyon wrote: * gcc.target/aarch64/advsimd-intrinsics/vXXXw.inc: New file. * gcc.target/aarch64/advsimd-intrinsics/vsubw.c: New file. * gcc.target/aarch64/advsimd-intrinsics/vaddw.c: Use code from vXXXw.inc. diff --git a/gcc/testsui

Re: [patch libstdc++] Optimize synchronization in std::future if futexes are available.

2015-01-16 Thread Jonathan Wakely
On 16/01/15 18:00 +0100, Torvald Riegel wrote: OK for trunk? OK, thanks.

Re: [[ARM/AArch64][testsuite] 08/36] Add vtrn tests. Refactor vzup and vzip tests.

2015-01-16 Thread Christophe Lyon
On 16 January 2015 at 16:58, Tejas Belagod wrote: > On 13/01/15 15:18, Christophe Lyon wrote: >> >> >> * gcc.target/aarch64/advsimd-intrinsics/vshuffle.inc: New file. >> * gcc.target/aarch64/advsimd-intrinsics/vtrn.c: New file. >> * gcc.target/aarch64/advsimd-intrinsics/

Re: [[ARM/AArch64][testsuite] 19/36] Add vsubl tests, put most of the code in common with vaddl in vXXXl.inc.

2015-01-16 Thread Tejas Belagod
On 13/01/15 15:18, Christophe Lyon wrote: * gcc.target/aarch64/advsimd-intrinsics/vXXXl.inc: New file. * gcc.target/aarch64/advsimd-intrinsics/vsubl.c: New file. * gcc.target/aarch64/advsimd-intrinsics/vaddl.c: Use code from vXXXl.inc. diff --git a/gcc/testsui

Re: [[ARM/AArch64][testsuite] 18/36] Add vsli_n and vsri_n tests.

2015-01-16 Thread Tejas Belagod
+ +void vsri_extra(void) +{ +/* Test cases with maximum shift amount (this amount is different + * from vsli. */ + Nit. Comment Formatting. Similarly, few other places. Otherwise, LGTM. Tejas.

Re: [PATCH, Aarch64] Add FMA steering pass for Cortex-A57

2015-01-16 Thread Andrew Pinski
On Fri, Jan 16, 2015 at 5:42 AM, Thomas Preud'homme wrote: > Hi all, > > Quoting the patch: > > For better performance, the destination of FMADD/FMSUB instructions should > have the same parity as their accumulator register if the accumulator contains > the result of a previous FMUL or FMADD/FMSUB

Re: [debug-early] C++ clones and limbo DIEs

2015-01-16 Thread Aldy Hernandez
On 01/16/2015 08:31 AM, Jason Merrill wrote: On 01/16/2015 05:55 AM, Richard Biener wrote: I'd hope that in the very distant future all early DIEs would be "created" by the frontends (that is, dwarf2out.c wouldn't walk into parents/siblings so much). Are you thinking that the front end would i

Re: [[ARM/AArch64][testsuite] 17/36] Add vpadd, vpmax and vpmin tests.

2015-01-16 Thread Christophe Lyon
On 16 January 2015 at 18:52, Tejas Belagod wrote: > On 13/01/15 15:18, Christophe Lyon wrote: >> >> * gcc.target/aarch64/advsimd-intrinsics/vpXXX.inc: New file. >> * gcc.target/aarch64/advsimd-intrinsics/vpadd.c: New file. >> * gcc.target/aarch64/advsimd-intrinsics/vpmax.c:

Fix CC_MODE pessimization in reorg.c

2015-01-16 Thread Eric Botcazou
As exposed in https://gcc.gnu.org/ml/gcc-patches/2014-12/msg01052.html the conversion of the original cc0-based Visium port into a CC_MODE port went smoothly and didn't affect the run time performance, except for a single but notable case: the reorg.c pass cannot put an insn that clobbers the CC

Re: [[ARM/AArch64][testsuite] 03/36] Add vmax, vmin, vhadd, vhsub and vrhadd tests.

2015-01-16 Thread Christophe Lyon
On 16 January 2015 at 18:14, Marcus Shawcroft wrote: > On 16 January 2015 at 16:21, Christophe Lyon > wrote: > >> My existing tests only cover armv7 so far. >> I do plan to expand them once they are all in GCC. >> >>> Otherwise, they look good to me(but I can't approve it). >>> >>> Tejas. >>> >

Re: [[ARM/AArch64][testsuite] 17/36] Add vpadd, vpmax and vpmin tests.

2015-01-16 Thread Tejas Belagod
On 13/01/15 15:18, Christophe Lyon wrote: * gcc.target/aarch64/advsimd-intrinsics/vpXXX.inc: New file. * gcc.target/aarch64/advsimd-intrinsics/vpadd.c: New file. * gcc.target/aarch64/advsimd-intrinsics/vpmax.c: New file. * gcc.target/aarch64/advsimd-intrinsics/vpmi

Re: [debug-early] C++ clones and limbo DIEs

2015-01-16 Thread Aldy Hernandez
On 01/15/2015 07:11 PM, Jason Merrill wrote: On 01/15/2015 09:58 PM, Aldy Hernandez wrote: Now back to limbdo_die_list... My approach is to flush the limbo list, generically, after the front-ends have finished, by adding a new "early_finish" debug hook. This gets rid of any permanence into LT

RE: [PING] [PATCH] Fix parameters of __tsan_vptr_update

2015-01-16 Thread Bernd Edlinger
Hi, On Fri, 16 Jan 2015 21:25:42, Dmitry Vyukov wrote: > > This is just a copy from llvm repo, right? > Looks good to me. > Thanks. Yes I found these test case in the llvm tree, and just adapted them to work in the gcc test suite. However, here is a small tweak in the positive test: That is we

Re: [PATCH 0/4][ARM Intrinsics][RFTesting] Add missing float16x8_t type, and float16x[48] intrinsics

2015-01-16 Thread Christophe Lyon
On 16 January 2015 at 18:22, Alan Lawrence wrote: > These add all the V[48]HFmode insns and corresponding intrinsics for ARM. > Depends on the two patches at > https://gcc.gnu.org/ml/gcc-patches/2015-01/msg01422.html . > > Unfortunately I don't at present have a testsuite. I've done some testing >

[Obvious ARM Testsuite] mangle-arm-crypto.C needs arm_crypto arguments added

2015-01-16 Thread James Greenhalgh
Hi, g++.dg/abi/mangle-arm-crypto.C fails on some ARM targets (see: https://gcc.gnu.org/ml/gcc-testresults/2015-01/msg01654.html ). Much to my irritation, I can't reproduce the failures locally, but the reason looks simple enough - you need to pass the correct flags to enable the cypto intrinsics

[PATCH 4/4][ARM Intrinsics] Add float16 v(ld|st)[234](q?|_lane|_dup),vcombine,vget_(low|high)

2015-01-16 Thread Alan Lawrence
These intrinsics are all made from patterns in neon.md, and are all tied together by iterators - I've tried to reduce coupling a bit but there is possibly more that could be done here. gcc/ChangeLog: * config/arm/arm-builtins.c (VAR11, VAR12): New. * config/arm/arm_neon_builtins.def (v

[PATCH 3/4][ARM Intrinsics]float16x8_t intrinsics: vgetq_lane, vsetq_lane, vdupq_n, vdupq_lane, vld1q_lane, vld1q_dup, vreinterpretq

2015-01-16 Thread Alan Lawrence
Much like the first patch, this adds the equivalent ...q... intrinsics for float16x8_t, using GCC vector extensions. gcc/ChangeLog: * config/arm/arm_neon.h (vdupq_lane_f16, vld1q_lane_f16, vld1q_dup_f16, vreinterpretq_p8_f16, vreinterpretq_f16_p8, vreinterpretq_f16_p16, vreinterpret

[PATCH 2/4][ARM Intrinsics] Add missing float16x8_t type

2015-01-16 Thread Alan Lawrence
This defines arm_neon.h's float16x8_t type, although no intrinsics yet (see next patch). Adding V8HFmode does mean programmers can define a GCC vector of same size themselves. gcc/ChangeLog: * config/arm/arm.h (VALID_NEON_QREG_MODE): Add V8HFmode. * config/arm/arm.c (arm_vector_mode_s

[PATCH 1/4][ARM Intrinsics]float16x4_t intrinsics: vget_lane, vset_lane, vcreate, vdup_n, vdup_lane, vld1_lane, vld1_dup, vreinterpret

2015-01-16 Thread Alan Lawrence
This adds a bunch of new intrinsics, implemented with GCC vector extensions to maximise mid-end optimization (the same approach as AArch64). Note that unlike AArch64, no attempt is made to support bigendian. gcc/ChangeLog: * config/arm/arm_neon.h (vcreate_f16, vdup_lane_f16, vld1_lane_f16,

[PATCH 2/2][ARM] PR/63870: Add a __builtin_lane_check

2015-01-16 Thread Alan Lawrence
This parallels the present form of __builtin_aarch64_im_lane_boundsi, and allows to check lane indices for intrinsics that can otherwise be written in terms of GCC vector extensions. The new builtin is not used in this patch but is used in my series of float16_t intrinsics (https://gcc.gnu.org

Re: [PING] [PATCH] Fix parameters of __tsan_vptr_update

2015-01-16 Thread Dmitry Vyukov
This is just a copy from llvm repo, right? Looks good to me. On Fri, Jan 16, 2015 at 10:17 AM, Bernd Edlinger wrote: > Hi, > > > I think I should ping for this patch now: > https://gcc.gnu.org/ml/gcc-patches/2015-01/msg00599.html > > note that by mistake the change log referenced sanitizer.c inst

[PATCH 0/4][ARM Intrinsics][RFTesting] Add missing float16x8_t type, and float16x[48] intrinsics

2015-01-16 Thread Alan Lawrence
These add all the V[48]HFmode insns and corresponding intrinsics for ARM. Depends on the two patches at https://gcc.gnu.org/ml/gcc-patches/2015-01/msg01422.html . Unfortunately I don't at present have a testsuite. I've done some testing both manually and on a large internal testsuite for Neon/

Re: [PATCH][ARM] PR 62066: Call va_end on early return from va_list processing function

2015-01-16 Thread Ramana Radhakrishnan
On 16/01/15 16:56, Kyrill Tkachov wrote: Hi all, As the simple PR says we should call va_end before returning early from a function that started processing the va_list with va_start. The C spec agrees: "Each invocation of the va_start and va_copy macros shall be matched by a corresponding invo

Re: [[ARM/AArch64][testsuite] 16/36] Add vqdmlal_n and vqdmlsl_n tests.

2015-01-16 Thread Tejas Belagod
On 13/01/15 15:18, Christophe Lyon wrote: * gcc.target/aarch64/advsimd-intrinsics/vqdmlXl_n.inc: New file. * gcc.target/aarch64/advsimd-intrinsics/vqdmlal_n.c: New file. * gcc.target/aarch64/advsimd-intrinsics/vqdmlsl_n.c: New file. diff --git a/gcc/testsuite/gcc.target/a

Re: [[ARM/AArch64][testsuite] 04/36] Add vld1_lane tests.

2015-01-16 Thread Marcus Shawcroft
On 16 January 2015 at 16:23, Christophe Lyon wrote: > On 16 January 2015 at 15:09, Tejas Belagod wrote: >> On 13/01/15 15:18, Christophe Lyon wrote: >>> >>> * gcc.target/aarch64/advsimd-intrinsics/vld1_lane.c: New file. >> Hmm.. again, I don't see vld1_lane_f64? > > Same answer: unless

Re: [PING] [PATCH] Fix parameters of __tsan_vptr_update

2015-01-16 Thread Jeff Law
On 01/16/15 00:17, Bernd Edlinger wrote: Hi, I think I should ping for this patch now: https://gcc.gnu.org/ml/gcc-patches/2015-01/msg00599.html note that by mistake the change log referenced sanitizer.c instead of sanitizer.def, consider that fixed on my local copy. That patch is fine. Thank

Re: [[ARM/AArch64][testsuite] 03/36] Add vmax, vmin, vhadd, vhsub and vrhadd tests.

2015-01-16 Thread Marcus Shawcroft
On 16 January 2015 at 16:21, Christophe Lyon wrote: > My existing tests only cover armv7 so far. > I do plan to expand them once they are all in GCC. > >> Otherwise, they look good to me(but I can't approve it). >> >> Tejas. >> OK provided, as per the previous couple, that we don;t regression or

Re: [[ARM/AArch64][testsuite] 02/36] Be more verbose, and actually confirm that a test was checked.

2015-01-16 Thread Marcus Shawcroft
On 13 January 2015 at 15:18, Christophe Lyon wrote: > * gcc.target/aarch64/advsimd-intrinsics/arm-neon-ref.h (CHECK): > Add trace. > (CHECK_FP): Likewise. > (CHECK_CUMULATIVE_SAT): Likewise. OK, provided no regressions and no new fails for aarch64, aarch64_be and a

Re: [[ARM/AArch64][testsuite] 01/36] Add explicit dependency on Neon Cumulative Saturation flag (QC).

2015-01-16 Thread Marcus Shawcroft
On 13 January 2015 at 15:17, Christophe Lyon wrote: > * gcc.target/aarch64/advsimd-intrinsics/arm-neon-ref.h > (Set_Neon_Cumulative_Sat): Add parameter. > (__set_neon_cumulative_sat): Support new parameter. > * gcc.target/aarch64/advsimd-intrinsics/binary_sat_op.in

Re: RTL cprop vs. fixed hard regs

2015-01-16 Thread Segher Boessenkool
On Fri, Jan 16, 2015 at 08:12:27PM +1030, Alan Modra wrote: > https://lists.ozlabs.org/pipermail/linuxppc-dev/2014-December/123776.html > shows gcc-5 miscompiling a powerpc64 linux kernel. The executive > summary is that the rs6000 backend has a bug in its RTL description of > indirect calls. We

[patch libstdc++] Optimize synchronization in std::future if futexes are available.

2015-01-16 Thread Torvald Riegel
This patch optimizes synchronization in std::future by using atomic operations and futexes if the latter are available, instead of the mutex/condvar combination in the existing code. That reduces the space overhead for futexes as well as synchronization runtime overheads. To do that, the patch in

Re: [PATCH, CHKP] [always_inline 2/2] Fix segafult in SRA

2015-01-16 Thread Jeff Law
On 01/16/15 04:09, Ilya Enkovich wrote: Hi, In early SRA some_callers_have_mismatched_arguments_p function is called for function, all its thunks and aliases, but actually cannot handle function with thunks because assumes call_stmt for call_edge is not NULL. This patch rejects functions wit

[PATCH][ARM][committed] Move comment about splitting Thumb1 patterns to thumb1.md

2015-01-16 Thread Kyrill Tkachov
Hi all, Sorry for the rototill, but this bugged me ;) Since now we have a separate .md file for Thumb1 patterns, I think this comment is better placed there. Applied as obvious with r219755. Thanks, Kyrill 2015-01-16 Kyrylo Tkachov kyrylo.tkac...@arm.com * config/arm/arm.md: Move comme

[PATCH 1/2][ARM] PR/63870: Add qualifier to check lane bounds in expand

2015-01-16 Thread Alan Lawrence
This is based loosely upon svn r217440, "[AArch64] Add bounds checking to vqdm_lane intrinsics...", but applies to more intrinsics (including e.g. vget_lane), and does not do the endianness-flipping present on AArch64: the objective is to exactly preserve behaviour on all valid code. (Yes, the n

Re: [PATCH, CHKP] [always_inline 1/2] Allow inlining for not instrumented calls to always_inline functions

2015-01-16 Thread Jeff Law
On 01/16/15 04:04, Ilya Enkovich wrote: Hi, Currently compiler emits an error in case of not instrumented call to instrumented alwyas_inline function. It happens because when we inline there is only instrumented version of function available and we don't inline thunks. This patch solves the

  1   2   3   >