Re: Please include ada-hurd.diff upstream (try2)

2016-04-18 Thread Svante Signell
ping! The updated attachment was included in message https://gcc.gnu.org/ml/gcc-patches/2016-03/msg01659.html On Thu, 2016-03-31 at 11:33 +0200, Svante Signell wrote: > On Thu, 2016-03-17 at 08:51 +0100, Arnaud Charlet wrote: > > > > > > > > > > > > > > > > > > > > The copyright notices are

Re: [PATCH] [AArch64] support -mfentry feature for arm64

2016-04-18 Thread AKASHI Takahiro
On Mon, Apr 18, 2016 at 06:54:33PM +0300, Alexander Monakov wrote: > On Mon, 18 Apr 2016, Szabolcs Nagy wrote: > > On 18/04/16 14:26, Alexander Monakov wrote: > > > On Thu, 14 Apr 2016, Szabolcs Nagy wrote: > > >> looking at [2] i don't see why > > >> > > >> func: > > >> mov x9, x30 > > >> bl _

Re: [PATCH] [AArch64] support -mfentry feature for arm64

2016-04-18 Thread Alexander Monakov
On Tue, 19 Apr 2016, AKASHI Takahiro wrote: > > looking at [2] i don't see why > > > > func: > > mov x9, x30 > > bl _tracefunc > > > > Actually, > mov x9, x30 > bl _tracefunc > mov x30, x9 > I think here Szabolcs' point was that the last instruction can be eliminated: _tr

Re: [PATCH] [AArch64] support -mfentry feature for arm64

2016-04-18 Thread Alexander Monakov
On Tue, 19 Apr 2016, AKASHI Takahiro wrote: > > > But if Szabolcs' two-instruction > > > sequence in the adjacent subthread is sufficient, this is moot. > > > > . It can also be solved by having just one NOP after the function label, > > and a number of them before, then no thread can be in the

Re: [PATCH] [AArch64] support -mfentry feature for arm64

2016-04-18 Thread AKASHI Takahiro
On Mon, Apr 18, 2016 at 02:12:09PM +0200, Michael Matz wrote: > Hi, > > On Sun, 17 Apr 2016, Alexander Monakov wrote: > > > I've noticed an issue in my (and probably Michael's) solution: if > > there's a thread that made it past the first nop, but is still executing > > the nop pad, it's unsafe

[gomp4] Merge trunk r235033 (2016-04-15) into gomp-4_0-branch

2016-04-18 Thread Thomas Schwinge
Hi! Committed to gomp-4_0-branch in r235188: commit d481297b3d1460e430341a837c1a8bc77335a266 Merge: 8798e58 a050099 Author: tschwinge Date: Tue Apr 19 05:49:18 2016 + svn merge -r 234575:235033 svn+ssh://gcc.gnu.org/svn/gcc/trunk git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc

Re: [PATCH] [AArch64] support -mfentry feature for arm64

2016-04-18 Thread AKASHI Takahiro
On Thu, Apr 14, 2016 at 04:58:12PM +0100, Szabolcs Nagy wrote: > On 14/04/16 14:15, Andrew Pinski wrote: > > On Thu, Apr 14, 2016 at 9:08 PM, Maxim Kuvyrkov > > wrote: > >> On Mar 14, 2016, at 11:14 AM, Li Bin wrote: > >>> > >>> As ARM64 is entering enterprise world, machines can not be stopped f

Re: [PATCH] [AArch64] support -mfentry feature for arm64

2016-04-18 Thread AKASHI Takahiro
On Thu, Apr 14, 2016 at 04:08:23PM +0300, Maxim Kuvyrkov wrote: > On Mar 14, 2016, at 11:14 AM, Li Bin wrote: > > > > As ARM64 is entering enterprise world, machines can not be stopped for > > some critical enterprise production environment, that is, live patch as > > one of the RAS features is i

patch to fix PR70689

2016-04-18 Thread Vladimir N Makarov
The following patch fixes https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70689 The patch was successfully tested and bootstrapped on x86/x86-64. Committed to the trunk as rev. 235184. Index: ChangeLog === --- ChangeLog (revision 2351

Re: [PATCH] Optimize strchr (s, 0) to strlen

2016-04-18 Thread Oleg Endo
On Mon, 2016-04-18 at 17:00 +, Wilco Dijkstra wrote: > Optimize strchr (s, 0) to s + strlen (s). strchr (s, 0) appears a > common > idiom for finding the end of a string, however it is not a very > efficient > way of doing so. Strlen is a much simpler operation which is > significantly > fast

[PATCH, rs6000] Expand vec_ld and vec_st during parsing to improve performance

2016-04-18 Thread Bill Schmidt
Hi, Expanding built-ins in the usual way (leaving them as calls until expanding into RTL) restricts the amount of optimization that can be performed on the code represented by the built-ins. This has been observed to be particularly bad for the vec_ld and vec_st built-ins on PowerPC, which repres

Re: [wwwdocs,Java] java/index.html -- fix formatting on gcc.gnu.org

2016-04-18 Thread Mike Stump
> On Apr 16, 2016, at 1:31 PM, Gerald Pfeifer wrote: > Soo, GCC 6 has branched -- would it make sense for you guys to > start this removal? No, the home page says: Status: 2016-03-10 (regression fixes & docs only). for gcc 7 (aka trunk). Technically, that should update to say all fixes, _b

Re: [wwwdocs] Document GCC 6 Solaris changes

2016-04-18 Thread Gerald Pfeifer
On Mon, 18 Apr 2016, Rainer Orth wrote: > While updating docs for Solaris, here's a Solaris section for > gcc-6/changes.html. Ok? Looks good to me, thanks. Gerald

Re: Free up bits in DECLs and TYPEs

2016-04-18 Thread Michael Matz
Hi, On Thu, 10 Dec 2015, Bernd Schmidt wrote: > On 12/10/2015 04:04 PM, Michael Matz wrote: > > This isn't stage 3 material really, OTOH fairly low risk. Anyway, okay > > for trunk now or once stage 1 opens? > > This is cool and we want it, but not now. Ok for stage 1, with the > formatting pr

Re: [PATCH, GCC 5] PR 70613, -fabi-version docs don't match implementation

2016-04-18 Thread Jim Wilson
On 04/11/2016 01:41 PM, Jim Wilson wrote: Here is a patch to correct the -fabi-version docs on the GCC 5 branch. Ping https://gcc.gnu.org/ml/gcc-patches/2016-04/msg00480.html Jim

Re: RFA (6): C++ PATCH for c++/70690, wrong code in tcmalloc

2016-04-18 Thread Jakub Jelinek
On Mon, Apr 18, 2016 at 02:58:51PM -0400, Jason Merrill wrote: > My change to type_has_constexpr_default_constructor broke build_vec_init, > which asserts that it implies that default-initialization is the same as > value-initialization, which is not the case for the "maybe constexpr" case. > So th

Re: [PATCH] PR target/70708: Suboptimal code generated when using _mm_set_sd (X64)

2016-04-18 Thread Uros Bizjak
On Mon, Apr 18, 2016 at 6:07 PM, H.J. Lu wrote: > "movq" should used to load double into xmm register with zero_extend: > > (set (reg:V2DF 90) > (vec_concat:V2DF (reg/v:DF 88 [ d ]) > (const_double:DF 0.0 [0x0.0p+0]))) > > Unlike "movsd", which only works with load from

Re: [PATCH] Remove UNSPEC_LOADU and UNSPEC_STOREU

2016-04-18 Thread Uros Bizjak
On Mon, Apr 18, 2016 at 9:17 PM, H.J. Lu wrote: >>> Here is the updated patch for GCC 7. Tested on x86-64. OK for >>> trrunk? >> >> IIRC from previous discussion, are we sure we won't propagate >> unaligned memory into SSE arithmetic insns? > > Yes, it is true and it is what > > (define_special

Re: [PATCH] Remove UNSPEC_LOADU and UNSPEC_STOREU

2016-04-18 Thread H.J. Lu
On Mon, Apr 18, 2016 at 12:13 PM, Uros Bizjak wrote: > On Mon, Apr 18, 2016 at 8:40 PM, H.J. Lu wrote: >> On Sun, Jan 10, 2016 at 11:45 PM, Uros Bizjak wrote: >>> On Sun, Jan 10, 2016 at 11:32 PM, H.J. Lu wrote: Since *mov_internal and _(load|store)_mask patterns can handle unaligned

Re: [PATCH] Remove UNSPEC_LOADU and UNSPEC_STOREU

2016-04-18 Thread Uros Bizjak
On Mon, Apr 18, 2016 at 8:40 PM, H.J. Lu wrote: > On Sun, Jan 10, 2016 at 11:45 PM, Uros Bizjak wrote: >> On Sun, Jan 10, 2016 at 11:32 PM, H.J. Lu wrote: >>> Since *mov_internal and _(load|store)_mask patterns >>> can handle unaligned load and store, we can remove UNSPEC_LOADU and >>> UNSPEC_ST

[PATCH, i386]: Use gen_lowpart some more

2016-04-18 Thread Uros Bizjak
Hello! After middle-end fix for PR69577 [1] allowed us to relax ix86_cannot_change_mode_class conditions, we can substitute: -{ - if (REG_P (operands[1])) -operands[1] = gen_rtx_REG (SImode, REGNO (operands[1])); - else -operands[1] = adjust_address (operands[1], SImode, 0); -}) with a

RFA (6): C++ PATCH for c++/70690, wrong code in tcmalloc

2016-04-18 Thread Jason Merrill
My change to type_has_constexpr_default_constructor broke build_vec_init, which asserts that it implies that default-initialization is the same as value-initialization, which is not the case for the "maybe constexpr" case. So this patch reverts the change and adds a new "maybe constexpr" entry

Re: [PATCH] Remove UNSPEC_LOADU and UNSPEC_STOREU

2016-04-18 Thread H.J. Lu
On Sun, Jan 10, 2016 at 11:45 PM, Uros Bizjak wrote: > On Sun, Jan 10, 2016 at 11:32 PM, H.J. Lu wrote: >> Since *mov_internal and _(load|store)_mask patterns >> can handle unaligned load and store, we can remove UNSPEC_LOADU and >> UNSPEC_STOREU. We use function prototypes with pointer to scala

Re: [PATCH 6/6] [ARC] Various instruction pattern fixes

2016-04-18 Thread Claudiu Zissulescu
Forgot to add the reload cases. Here it is the updated patch. //Claudiu gcc/ 2016-04-18 Claudiu Zissulescu * config/arc/arc.md (mulsidi3): Change operand 0 predicate to register_operand. (umulsidi3): Likewise. (indirect_jump): Fix jump instruction assembly pat

[patch] libstdc++/41759 reword static assertions in

2016-04-18 Thread Jonathan Wakely
The PR suggests using the positive condition for the static assert message. This patch changes them from the negative condition, to a statement about what must be true, which I think is better. Tested x86_64-linux, committed to trunk. commit 5f1930b675737caeb14e55e12a65f97ba96f992b Author: Jonat

[gomp-nvptx] nvptx backend: write_omp_entry cosmetics

2016-04-18 Thread Alexander Monakov
This brings write_omp_entry code a bit closer in style to the rest of nvptx.c by using write_fn_marker, and hopefully makes it a bit clearer. No functional change. * config/nvptx/nvptx.c (write_omp_entry): Adjust. (nvptx_declare_function_name): Adjust. --- Applied to amonakov/gomp-

Re: [PATCH] [AArch64] support -mfentry feature for arm64

2016-04-18 Thread Michael Matz
Hi, On Mon, 18 Apr 2016, Andrew Haley wrote: > >> That may not be safe. Consider an implementation which looks ahead > >> in the instruction stream and decodes the instructions speculatively. > > > > It should go without saying that patching instructions is followed by > > whatever means nece

Re: [PATCH] Optimize strchr (s, 0) to strlen

2016-04-18 Thread Wilco Dijkstra
Jakub Jelinek wrote: > On Mon, Apr 18, 2016 at 05:00:45PM +, Wilco Dijkstra wrote: >> Optimize strchr (s, 0) to s + strlen (s). strchr (s, 0) appears a common >> idiom for finding the end of a string, however it is not a very efficient >> way of doing so. Strlen is a much simpler operation w

Re-apply reverted niter change 1/4

2016-04-18 Thread Jan Hubicka
Hi, as discussed on IRC today, I would like to re-apply the patch to fix bogus realistic bounds in niter. As it turned out, we seem to rely on this bogus estimate in few benchmarks and there is miscompilation with avx512. The performance regressions should be solved my planned patch to introduce

Re: [PATCH] [AArch64] support -mfentry feature for arm64

2016-04-18 Thread Andrew Haley
On 04/18/2016 06:13 PM, Michael Matz wrote: > On Mon, 18 Apr 2016, Andrew Haley wrote: > >> On 04/15/2016 06:29 PM, Alexander Monakov wrote: >> >>> Alternatively: replace first nop with a short forward branch that >>> jumps over the rest of the pad, patch rest of the pad, patch the >>> initial fo

Re: [PATCH] [AArch64] support -mfentry feature for arm64

2016-04-18 Thread Michael Matz
Hi, On Mon, 18 Apr 2016, Andrew Haley wrote: > On 04/15/2016 06:29 PM, Alexander Monakov wrote: > > > Alternatively: replace first nop with a short forward branch that > > jumps over the rest of the pad, patch rest of the pad, patch the > > initial forward branch. > > That may not be safe. Con

Re: [PATCH] Optimize strchr (s, 0) to strlen

2016-04-18 Thread Jakub Jelinek
On Mon, Apr 18, 2016 at 05:00:45PM +, Wilco Dijkstra wrote: > Optimize strchr (s, 0) to s + strlen (s). strchr (s, 0) appears a common > idiom for finding the end of a string, however it is not a very efficient > way of doing so. Strlen is a much simpler operation which is significantly > fas

[PATCH] Optimize strchr (s, 0) to strlen

2016-04-18 Thread Wilco Dijkstra
Optimize strchr (s, 0) to s + strlen (s). strchr (s, 0) appears a common idiom for finding the end of a string, however it is not a very efficient way of doing so. Strlen is a much simpler operation which is significantly faster (eg. on x86 strlen is 50% faster for strings of 8 bytes and about tw

[patch] Remove unused typedefs in std::bind types

2016-04-18 Thread Jonathan Wakely
Tested x86_64-linux, committed to trunk. commit ea5d727f12fcbbb5a8b7b0789f88968649937176 Author: Jonathan Wakely Date: Mon Mar 14 09:40:41 2016 + Remove unused typedefs in std::bind types * include/std/function (_Bind, _Bind_result): Remove unused typedefs. diff --git a/li

[patch] Fix typo in comment

2016-04-18 Thread Jonathan Wakely
Committed to trunk. commit 9d7cfe77dece94e80e93aebc0c159824b33fcfd5 Author: Jonathan Wakely Date: Thu Apr 7 12:28:38 2016 +0100 * config/cpu/sh/atomicity.h: Fix typo in comment. diff --git a/libstdc++-v3/config/cpu/sh/atomicity.h b/libstdc++-v3/config/cpu/sh/atomicity.h index bc62cf8..9

[patch] libstdc++/70294 Define std::thread::id comparison operators at namespace-scope

2016-04-18 Thread Jonathan Wakely
The operator< and operator== for std::thread::id are not visible at namespace scope, so can only be found by ADL. This fixes it. Tested x86_64-linux, committed to trunk. commit 8ca18880b4c6995fbccfb661eb652ebe9cd7f75f Author: Jonathan Wakely Date: Mon Apr 18 16:58:13 2016 +0100 Define s

[PATCH] PR target/70708: Suboptimal code generated when using _mm_set_sd (X64)

2016-04-18 Thread H.J. Lu
"movq" should used to load double into xmm register with zero_extend: (set (reg:V2DF 90) (vec_concat:V2DF (reg/v:DF 88 [ d ]) (const_double:DF 0.0 [0x0.0p+0]))) Unlike "movsd", which only works with load from memory, "movq" works with both memory and xmm register. OK f

Re: [PATCH] [AArch64] support -mfentry feature for arm64

2016-04-18 Thread Alexander Monakov
On Mon, 18 Apr 2016, Szabolcs Nagy wrote: > On 18/04/16 14:26, Alexander Monakov wrote: > > On Thu, 14 Apr 2016, Szabolcs Nagy wrote: > >> looking at [2] i don't see why > >> > >> func: > >> mov x9, x30 > >> bl _tracefunc > >> > >> > >> is not good for the kernel. > >> > >> mov x9, x30 is a

[patch] Patches to reduce warnings in libstdc++

2016-04-18 Thread Jonathan Wakely
Some small cleanups. These won't interfere with any testing of backports to gcc-6-branch before the release, so I'm committing them now. The first two remove some noise when using -Wsystem-headers: Avoid -Wsign-compare warnings in std::to_string() * include/ext/string_conversions.h (_

Re: [doc] Update install.texi for GCC 6 on Solaris

2016-04-18 Thread Sandra Loosemore
On 04/18/2016 08:35 AM, Rainer Orth wrote: The following patch updates the Solaris sections of install.texi for GCC 6 and beyond. This hasn't been done in a while, and it would be good to get it into the GCC 6.1 release due to the caveat concerning GNU as 2.26. Perhaps the doc maintainers could

[committed] Backport PR70297 to 5

2016-04-18 Thread Marek Polacek
To finally resolve this PR, I'm backporting the two attached patches to gcc-5-branch. Regtested/bootstrapped on x86_64-linux, applying. Marek 2015-11-11 Jason Merrill * decl.c (duplicate_decls): When combining typedefs, remove the new type from the variants list. dif

[wwwdocs] Document GCC 6 Solaris changes

2016-04-18 Thread Rainer Orth
While updating docs for Solaris, here's a Solaris section for gcc-6/changes.html. Ok? Rainer 2016-04-18 Rainer Orth * htdocs/gcc-6/changes.html (Solaris): New section. Index: htdocs/gcc-6/changes.html === RCS f

Re: [PATCH 3/4, libgomp] Resolve deadlock on plugin exit, HSA plugin parts

2016-04-18 Thread Martin Jambor
Hi, On Sat, Apr 16, 2016 at 03:38:57PM +0800, Chung-Lin Tang wrote: > Hi Martin, the attached patch reverts that queue_callback() change, and adds > some more descriptions in the comments to reflect the bool return changes. > Please see if they are acceptable. > If the rest of the patch-set is a

Re: [doc] Update install.texi for GCC 6 on Solaris

2016-04-18 Thread Jakub Jelinek
On Mon, Apr 18, 2016 at 04:35:05PM +0200, Rainer Orth wrote: > The following patch updates the Solaris sections of install.texi for GCC > 6 and beyond. This hasn't been done in a while, and it would be good to > get it into the GCC 6.1 release due to the caveat concerning GNU as 2.26. > > Perhaps

[PATCH 6/6] [ARC] Various instruction pattern fixes

2016-04-18 Thread Claudiu Zissulescu
OK to apply? Claudiu gcc/ 2016-04-18 Claudiu Zissulescu * config/arc/arc.md (mulsidi3): Change operand 0 predicate to register_operand. (umulsidi3): Likewise. (indirect_jump): Fix jump instruction assembly patterns. (arcset): Change operand 1 predicate t

[PATCH 1/6] [ARC] Don't use drsub* instructions when selecting fpuda.

2016-04-18 Thread Claudiu Zissulescu
The double precision floating point assist instructions are not implementing the reverse double subtract instruction (drsub) found in the FPX extension, hence, this patch. OK to apply? Claudiu gcc/ 2016-04-18 Claudiu Zissulescu * config/arc/arc.md (cpu_facility): Add fpx variant.

[PATCH 4/6] [ARC] Handle FPX NaN within optimized floating point library.

2016-04-18 Thread Claudiu Zissulescu
OK to apply? Claudiu gcc/ 2016-04-18 Claudiu Zissulescu * testsuite/gcc.target/arc/ieee_eq.c: New test. libgcc/ 2016-04-18 Claudiu Zissulescu * config/arc/ieee-754/eqdf2.S: Handle FPX NaN. --- gcc/testsuite/gcc.target/arc/ieee_eq.c | 47 ++

[PATCH 5/6] [ARC] Fix unwanted match for sign extend 16-bit constant.

2016-04-18 Thread Claudiu Zissulescu
The combine pass may conclude umulhisi3_imm pattern can accept also sign extended 16-bit constants. This patch prohibits the combine in considering this pattern as suitable. OK to apply? Claudiu gcc/ 2016-04-18 Claudiu Zissulescu * config/arc/arc.md (umulhisi3_imm): Avoid unwanted mat

[PATCH 2/6] [ARC] Fix FPX/FPUDA code gen when compiling for big-endian.

2016-04-18 Thread Claudiu Zissulescu
OK to apply? Claudiu gcc/ 2016-04-18 Claudiu Zissulescu * config/arc/arc.c (arc_process_double_reg_moves): Fix for big-endian compilation. * config/arc/arc.md (addf3): Likewise. (subdf3): Likewise. (muldf3): Likewise. --- gcc/config/arc/arc.c | 12

[doc] Update install.texi for GCC 6 on Solaris

2016-04-18 Thread Rainer Orth
The following patch updates the Solaris sections of install.texi for GCC 6 and beyond. This hasn't been done in a while, and it would be good to get it into the GCC 6.1 release due to the caveat concerning GNU as 2.26. Perhaps the doc maintainers could do a sanity check as well. Tested with make

[PATCH 3/6] [ARC] Pass mfpuda to assembler.

2016-04-18 Thread Claudiu Zissulescu
OK to apply? Claudiu gcc/ 2016-04-18 Claudiu Zissulescu * config/arc/arc.h (ASM_SPEC): Pass mfpuda to assembler. --- gcc/config/arc/arc.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc/config/arc/arc.h b/gcc/config/arc/arc.h index 1c2a38d..299e63a 100644 --- a

[PATCH 0/6] [ARC] Various fixes

2016-04-18 Thread Claudiu Zissulescu
Hi, This series of 6 patches are fixing a number of small issues found during time with our compiler. Patch 1 fixes the problem of using drsub* instructions when compiling with double assist instruction support. Patch 2 fixes big-endian emitted code when using FPX extension instructions. Patch

Re: [PATCH] [AArch64] support -mfentry feature for arm64

2016-04-18 Thread Andrew Haley
On 04/15/2016 06:29 PM, Alexander Monakov wrote: > Alternatively: replace first nop with a short forward branch that > jumps over the rest of the pad, patch rest of the pad, patch the > initial forward branch. That may not be safe. Consider an implementation which looks ahead in the instruction

Re: [PATCH] [AArch64] support -mfentry feature for arm64

2016-04-18 Thread Szabolcs Nagy
On 18/04/16 14:26, Alexander Monakov wrote: > On Thu, 14 Apr 2016, Szabolcs Nagy wrote: >> looking at [2] i don't see why >> >> func: >> mov x9, x30 >> bl _tracefunc >> >> >> is not good for the kernel. >> >> mov x9, x30 is a nop at function entry, so in >> theory 4 byte atomic write should

Re: [PATCH] [AArch64] support -mfentry feature for arm64

2016-04-18 Thread Alexander Monakov
On Mon, 18 Apr 2016, Ramana Radhakrishnan wrote: > > - and GCC is not smart enough to be aware that intra-TU calls to 'func' (the > > function we're instrumenting) don't touch x16/x17. And GCC should be that > > smart, if it's not, it's a bug, right? :) > > > > That it already is - IIRC. Oth

Re: [PATCH] [AArch64] support -mfentry feature for arm64

2016-04-18 Thread Ramana Radhakrishnan
On 18/04/16 14:44, Alexander Monakov wrote: > On Mon, 18 Apr 2016, Ramana Radhakrishnan wrote: >> On Mon, Apr 18, 2016 at 2:26 PM, Alexander Monakov >> wrote: >>> On Thu, 14 Apr 2016, Szabolcs Nagy wrote: looking at [2] i don't see why func: mov x9, x30 bl _tracefun

Re: [PATCH] [AArch64] support -mfentry feature for arm64

2016-04-18 Thread Alexander Monakov
On Mon, 18 Apr 2016, Ramana Radhakrishnan wrote: > On Mon, Apr 18, 2016 at 2:26 PM, Alexander Monakov wrote: > > On Thu, 14 Apr 2016, Szabolcs Nagy wrote: > >> looking at [2] i don't see why > >> > >> func: > >> mov x9, x30 > >> bl _tracefunc > >> > >> > >> is not good for the kernel. > >>

Re: [PATCH] [AArch64] support -mfentry feature for arm64

2016-04-18 Thread Ramana Radhakrishnan
On Mon, Apr 18, 2016 at 2:26 PM, Alexander Monakov wrote: > On Thu, 14 Apr 2016, Szabolcs Nagy wrote: >> looking at [2] i don't see why >> >> func: >> mov x9, x30 >> bl _tracefunc >> >> >> is not good for the kernel. >> >> mov x9, x30 is a nop at function entry, so in >> theory 4 byte atomi

Re: [PATCH] [AArch64] support -mfentry feature for arm64

2016-04-18 Thread Alexander Monakov
On Thu, 14 Apr 2016, Szabolcs Nagy wrote: > looking at [2] i don't see why > > func: > mov x9, x30 > bl _tracefunc > > > is not good for the kernel. > > mov x9, x30 is a nop at function entry, so in > theory 4 byte atomic write should be enough > to enable/disable tracing. Overwriting x9

Re: [PATCH] Improve PTA restrict handling for non-restrict pointers

2016-04-18 Thread Richard Biener
On Mon, Feb 15, 2016 at 11:16 AM, Richard Biener wrote: > > Currently we only disambiguate restrict based accesses against pointer > based accesses that end up using a default def. The following removes > this restriction allowing disambiguation against any pointer based > access where PTA comput

Re: Allow embedded timestamps by C/C++ macros to be set externally (3)

2016-04-18 Thread Markus Trippelsdorf
On 2016.04.18 at 14:26 +0200, Dhole wrote: > Hi! > > A few months ago I submited a patch to allow the embedded timestamps by > C/C++ macros to be set externally [2], which was already an improvement > over [1]. I was told to wait until the GCC 7 stage 1 started to send > this patch again. A nice

[Ada] File descriptors leaking

2016-04-18 Thread Arnaud Charlet
Two file descriptors are never closed when invoking Non_Blocking_Spawn version with String parameters Stdout_File and Stderr_File. They are now closed. Tested on x86_64-pc-linux-gnu, committed on trunk 2016-04-18 Vincent Celier * s-os_lib.adb (Non_Blocking_Spawn, version with Stdout_F

[Ada] Compiler error and crash over iterators over qualified expressions.

2016-04-18 Thread Arnaud Charlet
This patch handles properly Ada 2012 loops whose iterator specification is a qualified expression whose type is derived from an iterator type. Executing gnatmake -q ice_primes_2.adb ice_primes_2 must yield: 3 5 7 11 13 17 19 23 29 31 --- with Ada.Text_IO; with F552A00_Prime_Num

[Ada] Issue check instead of error in static division by zero

2016-04-18 Thread Arnaud Charlet
In some cases of generic instantiations, or code configuration, some code may be deactivated and contain static divisions by zero. Instead of issuing an error in SPARK code, generate a suitable check. Tested on x86_64-pc-linux-gnu, committed on trunk 2016-04-18 Yannick Moy * sem_eval.

Allow embedded timestamps by C/C++ macros to be set externally (3)

2016-04-18 Thread Dhole
Hi! A few months ago I submited a patch to allow the embedded timestamps by C/C++ macros to be set externally [2], which was already an improvement over [1]. I was told to wait until the GCC 7 stage 1 started to send this patch again. I'm quoting from the original emails: > As a reminder for th

[Ada] Stream output to fifos

2016-04-18 Thread Arnaud Charlet
This patch fixes a regression in stream output to fifos (named pipes). When a fifo is opened for output, the process should block until another process opens the fifo for reading. This is now (again) the case. Tested on x86_64-pc-linux-gnu, committed on trunk 2016-04-18 Bob Duff * s-f

Re: [PR target/70711][ARM] Fix big-endian ARMv8.1-A builds.

2016-04-18 Thread Matthew Wahab
On 18/04/16 10:41, Richard Biener wrote: On Mon, 18 Apr 2016, Ramana Radhakrishnan wrote: Testing for armeb-none-eabi with cross-compiled check-gcc and with command line testing to confirm working executables are built. Is this ok for trunk and for GCC-6 once testing is completed? Oops, Than

Re: [PATCH] [AArch64] support -mfentry feature for arm64

2016-04-18 Thread Michael Matz
Hi, On Sun, 17 Apr 2016, Alexander Monakov wrote: > I've noticed an issue in my (and probably Michael's) solution: if > there's a thread that made it past the first nop, but is still executing > the nop pad, it's unsafe to replace the nops. To solve that, it > suffices to have a forward branc

[Ada] Improved error message for illegal procedure function definition.

2016-04-18 Thread Arnaud Charlet
This patch adds information on an illegal definition for a stream procedure, indicating that the second argument of the procedure must be a first subtype. Compiling host-msg.ads must yield: host-msg.ads:11:08: formal of stream operation must be a first subtype host-msg.ads:12:41: incorrect

[Ada] Clean up global variables

2016-04-18 Thread Arnaud Charlet
This patch eliminates some uses of global variables in the GNAT front end. No test; no change in behavior. 2016-04-18 Bob Duff * sem_elab.adb (Output_Calls): Use Get_Name_String, to clearly indicate that the global Name_Buffer is being used. The previous code used Is_In

[PATCH] Fix PR70701

2016-04-18 Thread Richard Biener
The following fixes a missed optimization when value-numbering translates through memcpy calls. Bootstrapped on x86_64-unknown-linux-gnu, testing in progress. Richard. 2016-04-18 Richard Biener PR tree-optimization/70701 * tree-ssa-sccvn.c (vn_reference_lookup_3): Resolve fu

[Ada] Optimization of Unbounded_Priority_Queues

2016-04-18 Thread Arnaud Charlet
This patch improves the efficiency of Ada.Containers.Unbounded_Priority_Queues, especially in the case where many same-priority items are enqueued. No test, because no change in behavior. Tested on x86_64-pc-linux-gnu, committed on trunk 2016-04-18 Bob Duff * a-cuprqu.ads: Change the

[Ada] Remove SPARK legality checks performed in GNATprove

2016-04-18 Thread Arnaud Charlet
Checks that some types and objects are fully default initialized should be performed in GNATprove, where relevant information about SPARK status of private types in particular is available. Move two tests performed in the frontend to GNATprove here. Tested on x86_64-pc-linux-gnu, committed on trun

[Ada] New function GNAT.Source_Info.Compilation_ISO_Date

2016-04-18 Thread Arnaud Charlet
This patch adds a new function Compilation_ISO_Date to package GNAT.Source_Info. It is identical to Compilation_Date, except that the date is returned in standard ISO form -- "-mm-dd". This form has the advantage that string comparisons like "<" can be used to determine the order of dates. The

[Ada] Overflow in internal compiler tables

2016-04-18 Thread Arnaud Charlet
When compiling sources with many imported units, some tables internal to the compiler may overflow, for example the dependency table. This patch increase the maximum size of these internal table to a value that will never be reached. Tested on x86_64-pc-linux-gnu, committed on trunk 2016-04-18 V

[Ada] Warning on (others => <>) that does not cover any components.

2016-04-18 Thread Arnaud Charlet
This patch adds a warning on a record aggregate that includes an association with a box, when all other components of the record have explicit associations in the aggregate. Compiling: gcc -c -gnatwr question.ads must yield: question.ads:13:53: warning: others choice is redundant questi

[Ada] Derivation of Ghost types

2016-04-18 Thread Arnaud Charlet
This patch implements the following rules from the SPARK RM: 6.9(8) - A ghost primitive subprogram of a non-ghost type extension shall not override an inherited non-ghost primitive subprogram. A non-ghost primitive subprogram of a type extension shall not override an inherited ghost pr

[Ada] Implicit self dependence of task on itself

2016-04-18 Thread Arnaud Charlet
This patch implements the following SPARK rule from 6.1.4: The Depends and Refined_Depends aspect of a task unit T need not mention this implicit parameter; an implicit specification of "T => T" is assumed, although this may be confirmed explicitly. -- Source --

[Ada] Spurious errors on tag indeterminate calls.

2016-04-18 Thread Arnaud Charlet
This patch removes spurious errors on tag indeterminate calls that are actuals of other dispatching calls that may themselves be tag-indeterminate. Full test in ACATS 4.0G BC60004 Tested on x86_64-pc-linux-gnu, committed on trunk 2016-04-18 Ed Schonberg * sem_disp.adb (Check_Dispatch

[Ada] Spurious inlining error with function completed by an expression function

2016-04-18 Thread Arnaud Charlet
This patch fixes a spurious error on a call to an expression function whose expression is a call to a function whose full declaration is another expression function, when compiling with optimization and inlining warnings enabled. The following must compile quietly: gcc -c p.adb -gnatn -O -fdum

[Ada] Add statistics dumping function to Atree package

2016-04-18 Thread Arnaud Charlet
This adds a statistics dumping function to the Atree package, which is the package responsible for the allocation of the nodes of the front-end tree. No user-visible functional changes. Tested on x86_64-pc-linux-gnu, committed on trunk 2016-04-18 Eric Botcazou * atree.ads (Num_Extens

[Ada] Fix small inefficiency in Disambiguate

2016-04-18 Thread Arnaud Charlet
This prevents the procedure from calling Covers for standard operators when this is not necessary. No functional changes. Tested on x86_64-pc-linux-gnu, committed on trunk 2016-04-18 Eric Botcazou * sem_type.adb (Disambiguate): Call Covers only when necessary for standard ope

Re: [PR target/70711][ARM] Fix big-endian ARMv8.1-A builds.

2016-04-18 Thread Richard Biener
On Mon, 18 Apr 2016, Ramana Radhakrishnan wrote: > On 18/04/16 10:20, Matthew Wahab wrote: > > When ARMv8.1 support was added to the ARM target, the > > bpabi.h/BE8_LINK_SPEC list wasn't updated. That means that when GCC > > targets ARMv8.1 big-endian, it fails to generate working binaries. > > >

Re: [PATCH] Some tree-vect-data-refs.c cleanup

2016-04-18 Thread Richard Biener
On Wed, Apr 13, 2016 at 12:42 PM, Robin Dapp wrote: > Hi, > > the attached patch is a start at cleaning up tree-vect-data-refs.c. > I refactored some stuff I found strange and/or difficult to understand. > Probably more to come. > > The misalignment calculation in vect_compute_data_ref_alignment s

Re: [PATCH][combine] Check WORD_REGISTER_OPERATIONS normally rather than through preprocessor

2016-04-18 Thread Kyrill Tkachov
Hi Jeff, On 17/04/16 21:16, Jeff Law wrote: On 12/15/2015 10:07 AM, Kyrill Tkachov wrote: Hi all, As part of the war on conditional compilation here's an #if check on WORD_REGISTER_OPERATIONS that seems to have been missed out. Bootstrapped and tested on arm, aarch64, x86_64. Is it still ok

Re: [PR target/70711][ARM] Fix big-endian ARMv8.1-A builds.

2016-04-18 Thread Ramana Radhakrishnan
On 18/04/16 10:20, Matthew Wahab wrote: > When ARMv8.1 support was added to the ARM target, the > bpabi.h/BE8_LINK_SPEC list wasn't updated. That means that when GCC > targets ARMv8.1 big-endian, it fails to generate working binaries. > > This patch addds the required 'march=armv8.1-a' entries to

Re: [PATCH][GCC 7] Remove broken path in extract_bit_field_1

2016-04-18 Thread Richard Biener
On Mon, Apr 4, 2016 at 3:33 PM, Jakub Jelinek wrote: > On Mon, Apr 04, 2016 at 03:27:23PM +0200, Richard Biener wrote: >> It ICEs in >> >> /space/rguenther/src/svn/trunk/gcc/testsuite/gcc.target/i386/pr37870.c:19:1: >> internal compiler error: in subreg_get_info, at rtlanal.c:3695 >> 0xddee5a subr

[Ada] Fix inefficiency in Operator_Matches_Spec

2016-04-18 Thread Arnaud Charlet
First_Formal is not as cheap as it used to be so this patch eliminates a few redundant invocations in Operator_Matches_Spec. No functional changes. Tested on x86_64-pc-linux-gnu, committed on trunk 2016-04-18 Eric Botcazou * sem_type.adb (Operator_Matches_Spec): Call First_Formal on

[PR target/70711][ARM] Fix big-endian ARMv8.1-A builds.

2016-04-18 Thread Matthew Wahab
When ARMv8.1 support was added to the ARM target, the bpabi.h/BE8_LINK_SPEC list wasn't updated. That means that when GCC targets ARMv8.1 big-endian, it fails to generate working binaries. This patch addds the required 'march=armv8.1-a' entries to BE8_LINK_SPEC. It also adds the missing entries f

Re: [i386] Support .lbss etc. sections with Solaris as (PR target/59407)

2016-04-18 Thread Rainer Orth
Uros Bizjak writes: > On Thu, Mar 17, 2016 at 11:40 PM, Rainer Orth > wrote: >> gcc.target/i386/pr58218.c currently FAILs on 64-bit Solaris/x86 with the >> native assembler: >> >> FAIL: gcc.target/i386/pr58218.c (test for excess errors) >> >> Excess errors: >> Assembler: pr58218.c >> "/v

Re: [wwwdocs,Java] Remove java/status.html

2016-04-18 Thread Andrew Haley
On 17/04/16 17:09, Gerald Pfeifer wrote: > My recommendation is to handle that via java/index, which is the > main page, and redirect other GCJ pages to that one as we remove > them. > > Like in the following, for java/status.html. > > Are you fine with that? OK, thanks. Andrew.

Re: [PATCH] Fix missed DSE opportunity with operator delete.

2016-04-18 Thread Richard Biener
On Sat, Apr 16, 2016 at 11:32 PM, Mikhail Maltsev wrote: > Hi, all! > > Currently GCC can optimize away the following dead store: > > void test(char *x) > { > *x = 1; > free(x); > } > > but not this one (Clang handles both cases): > > void test(char *x) > { > *x = 1; > delete x; > } > > Th

Re: Edit the C++14 library warning header to not indicate experimental.

2016-04-18 Thread Jonathan Wakely
On 17/04/16 23:21 -0400, Ed Smith-Rowland wrote: Since the default is C++14 it seems apropos to *not* treat that C++ version thusly in the warning in libstdc++. Ed OK for trunk? And maybe some 6 branch later? OK for trunk, for now. Thanks. 2016-04-17 Edward Smith-Rowland <3dw...@verizo

Re: [PATCH] lto-streamer.h: Include gimple.h for LAST_AND_UNUSED_GIMPLE_CODE.

2016-04-18 Thread Richard Biener
On Sat, Apr 16, 2016 at 6:59 PM, Khem Raj wrote: > gcc/: > 2016-04-16 Khem Raj > > * lto-streamer.h: Include gimple.h for LAST_AND_UNUSED_GIMPLE_CODE. > > > Fixes build errors e.g. > > | > ../../../../../../../work-shared/gcc-6.0.0-r0/git/gcc/lto-streamer.h:159:34: > error: 'LAST_AND_

Re: [PATCH] [6 and trunk] Fix bootstrap with older host compilers

2016-04-18 Thread Richard Biener
On Fri, Apr 15, 2016 at 8:31 PM, Segher Boessenkool wrote: > We didn't have __builtin_swap16 on all targets before GCC 4.8; hsa-brig > tries to use it if the host GCC is 4.6 or up though, breaking bootstrap. > This trivial patch fixes it. > > Noticed on gcc22. > > Is this okay for trunk and gcc-6?

Re: [PING, testsuite] Add dot-file scan to test-case

2016-04-18 Thread Richard Biener
On Mon, 18 Apr 2016, Tom de Vries wrote: > On 18-04-16 09:30, Richard Biener wrote: > > > > diff --git a/gcc/testsuite/lib/scandump.exp > > > > b/gcc/testsuite/lib/scandump.exp > > > > > >index 74d27cc..89b3944 100644 > > > > > >--- a/gcc/testsuite/lib/scandump.exp > > > > > >+++ b/gcc/testsuite/l

Re: [PING, testsuite] Add dot-file scan to test-case

2016-04-18 Thread Tom de Vries
On 18-04-16 09:30, Richard Biener wrote: diff --git a/gcc/testsuite/lib/scandump.exp b/gcc/testsuite/lib/scandump.exp > >index 74d27cc..89b3944 100644 > >--- a/gcc/testsuite/lib/scandump.exp > >+++ b/gcc/testsuite/lib/scandump.exp > >@@ -22,7 +22,7 @@ > > # Extract the constant part of the dump

Re: [PING, testsuite] Add dot-file scan to test-case

2016-04-18 Thread Richard Biener
On Sun, 17 Apr 2016, Tom de Vries wrote: > [ was: PATCH, PR70161] Fix fdump-ipa-all-graph ] > > On 18/03/16 10:35, Tom de Vries wrote: > > On 18/03/16 10:23, Tom de Vries wrote: > > > On 15/03/16 12:37, Richard Biener wrote: > > > > On Mon, 14 Mar 2016, Tom de Vries wrote: > > > > > > > > > Hi,