Re: [PATCH] OpenACC routines -- c++ front end

2016-11-11 Thread Chung-Lin Tang
On 2016/11/12 07:43 AM, Cesar Philippidis wrote: > Like it's c FE counterpart, this contains the following changes: > > * Updates c_parser_oacc_shape_clause to accept a location_t >argument in order to make the diagnostics more precise. > > * Adds support for the bind and nohost clauses. >

Re: [PATCH] Add std::future_error constructor from future_errc

2016-11-11 Thread Tim Song
On Fri, Nov 11, 2016 at 10:39 PM, Jonathan Wakely wrote: > making the existing not-required-by-the-standard constructor private. > + public: > +explicit > +future_error(error_code __ec) > +: logic_error("std::future_error: " + __ec.message()), _M_code(__ec)+ > { } That doesn't l

Re: [patch,avr] Add new option -mabsdata.

2016-11-11 Thread Denis Chertykov
2016-11-09 19:55 GMT+03:00 Sandra Loosemore : > On 11/07/2016 05:54 AM, Georg-Johann Lay wrote: >> >> @@ -15261,6 +15262,13 @@ GCC supports the following AVR devices a >> >> @include avr-mmcu.texi >> >> +@item -mabsdata >> +@opindex mabsdata >> + >> +Assume that all data in static stocage can be a

Re: [Patch 5/17] Add -fpermitted-flt-eval-methods=[c11|ts-18661-3]

2016-11-11 Thread Sandra Loosemore
On 11/11/2016 08:37 AM, James Greenhalgh wrote: diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index f133b3a..75ff8ec 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -378,7 +378,8 @@ Objective-C and Objective-C++ Dialects}. -flto-partition=@var{alg} -fmerge-all-constants @

New Spanish PO file for 'gcc' (version 6.2.0)

2016-11-11 Thread Translation Project Robot
Hello, gentle maintainer. This is a message from the Translation Project robot. A revised PO file for textual domain 'gcc' has been submitted by the Spanish team of translators. The file is available at: http://translationproject.org/latest/gcc/es.po (This file, 'gcc-6.2.0.es.po', has just

[PATCH] Add std::future_error constructor from future_errc

2016-11-11 Thread Jonathan Wakely
At the WG21 meeting we just approved a change to replace the exposition-only constructor for future_error with a constructor taking a future_errc error code enum instead. This adds it, making the existing not-required-by-the-standard constructor private. * include/std/future (future_error

[PATCH] Use shared_ptr::element_type in hash specializations

2016-11-11 Thread Jonathan Wakely
Some tweaks I missed from the preparing-shared_ptr-for-arrays patch. * include/bits/shared_ptr.h (hash>): Use element_type. * include/bits/shared_ptr_base.h (hash<__shared_ptr>): Likewise. Tested powerpc64le-linux, committed to trunk. commit 6b13d2ff4a8528fb663c855da0d11d5992120

Re: Fix compilation errors with libstdc++v3 for AVR target and allow --enable-libstdcxx

2016-11-11 Thread Jonathan Wakely
On 10/11/16 13:39 -0200, Felipe Magno de Almeida wrote: Hello, Sorry for top-posting, but this is a ping for the attached patch. The patch doesn't seem to have been applied nor refused. So I'm pinging to see if I need to change something? I already have a copyright assignment now. Sorry for t

[PATCH] C FE: implement fix-it hint for -Wmissing-braces

2016-11-11 Thread David Malcolm
This patch implements fix-it hints to -Wmissing-braces, showing where to add braces. For example: $ cat test.c int arr_2_3_2[2][3][2] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11}; $ ./xgcc -B. -c test.c -Wall -fdiagnostics-generate-patch test.c:2:3: warning: missing braces around

[committed] Add testcase for PR c++/71225

2016-11-11 Thread Jakub Jelinek
Hi! This testcase got accepted in 6.x, started to ICE with r236221, r236486 stopped ICEing on it and started rejecting it, r237654 accepts it again. clang++ also accepts it. Tested on x86_64-linux, committed to trunk so that the PR can be closed. 2016-11-12 Jakub Jelinek PR c++/7122

[PATCH] OpenACC routines -- test cases

2016-11-11 Thread Cesar Philippidis
This patch contains new and adjusted, runtime and compiler test cases for the new OpenACC routine functionality. Is this ok for trunk? Cesar 2016-11-11 Cesar Philippidis Thomas Schwinge gcc/testsuite/ * c-c++-common/goacc/routine-1.c: Add more coverage. * c-c++-common/goacc/routine

[PATCH] OpenACC routines -- fortran front end

2016-11-11 Thread Cesar Philippidis
This patch contains for following changes to the Fortran FE: * Update module support for acc routines. * Add support for the bind and nohost clauses. * Add more acc routine diagnostics. I probably should have split the module changes from the rest of the routine changes, but they are closely

[PATCH] OpenACC routines -- c++ front end

2016-11-11 Thread Cesar Philippidis
Like it's c FE counterpart, this contains the following changes: * Updates c_parser_oacc_shape_clause to accept a location_t argument in order to make the diagnostics more precise. * Adds support for the bind and nohost clauses. * Adds more diagnostics for invalid acc routines. Is this pa

[PATCH] OpenACC routines -- c front end

2016-11-11 Thread Cesar Philippidis
This contains the following changes: * Updates c_parser_oacc_{shape,simple}_clause to accept a location_t argument in order to make the diagnostics more precise. * Adds support for the bind and nohost clauses. * Adds more diagnostics for invalid acc routines. Is this patch OK for trunk?

[PATCH] OpenACC routines -- middle end

2016-11-11 Thread Cesar Philippidis
Currently GCC lacks support for the bind and nohost clauses in OpenACC routine. Furthermore, none of the FEs preform much error handling to detect incompatible acc loops inside those functions. This patch adds the common middle end components, namely tree codes for the clauses, and OMP lowering an

Re: [RFC] Fix PR rtl-optimization/59461

2016-11-11 Thread Eric Botcazou
> This also eliminate quite a few zero-extensions in the compile.exp testsuite > at -O2 on the SPARC. Tested on x86-64/Linux and SPARC/Solaris. > > > 2016-11-07 Eric Botcazou > > PR rtl-optimization/59461 > * doc/rtl.texi (paradoxical subregs): Add missing word. > * combine

Re: [Patch] Don't expand targetm.stack_protect_fail if it's NULL_TREE

2016-11-11 Thread Joseph Myers
On Fri, 11 Nov 2016, Jiong Wang wrote: >In this new patch, I introduced a new target macro for SSP to allow one > backend GCC's default SSP runtime generation be disabled. I see no reason this needs to be a target macro rather than a hook. New target macros are discouraged and should only

Re: [7/9][AArch64, libgcc] Let AArch64 use customized unwinder file

2016-11-11 Thread Joseph Myers
On Fri, 11 Nov 2016, Jiong Wang wrote: > There are two ways of introducing these AArch64 support: > * Introducing a few target macros so we can customize functions like > uw_init_context, uw_install_context etc. > * Use target private unwind-dw2 implementation, i.e duplicate the generic >

Re: [PATCH][GCC][PATCHv3] Improve fpclassify w.r.t IEEE like numbers in GIMPLE.

2016-11-11 Thread Joseph Myers
On Fri, 11 Nov 2016, Tamar Christina wrote: > is_infinite and is_zero have been created. This patch also introduces two new > intrinsics __builtin_iszero and __builtin_issubnormal. And so the ChangeLog entry needs to include: PR middle-end/77925 PR middle-end/77926 (in addition

Re: [fixincludes] Fix macOS 10.12 and (PR sanitizer/78267)

2016-11-11 Thread Bruce Korb
On Fri, Nov 11, 2016 at 3:18 AM, Mike Stump wrote: > > No objections from me. > Or me. Thanks!

[PATCH 8/9] Introduce class function_reader (v4)

2016-11-11 Thread David Malcolm
Changed in v4: - error-handling changes split out into a separate patch - rewritten the loader to use the new "compact" dump format - support for reuse_rtx in loader - handling of params, DECL_RTL and DECL_RTL_INCOMING - moved target-dependent selftests to target-specific code (aarch64.c and i386.c

[PATCH 7/9] Add RTL-error-handling to host

2016-11-11 Thread David Malcolm
Link to previous discussion: https://gcc.gnu.org/ml/gcc-patches/2016-10/msg00648.html On Mon, 2016-10-10 at 19:53 +0100, Richard Sandiford wrote: > David Malcolm writes: > > On Wed, 2016-10-05 at 18:00 +0200, Bernd Schmidt wrote: > > > On 10/05/2016 06:15 PM, David Malcolm wrote: > > > >

[PATCH 9/9] Add "__RTL" to cc1 (v4)

2016-11-11 Thread David Malcolm
Changed in this version: * Rather than running just one pass, run *all* passes, but start at the given pass; support for "dg-do run" tests that execute the resulting code. * Updated test cases to new "compact" dump format; more test cases; use "dg-do run" in various places. * Lots of bugfixi

[PATCH 4/9] (approved) Add some functions for use by the RTL frontend.

2016-11-11 Thread David Malcolm
An earlier version of this was approved by Bernd as: https://gcc.gnu.org/ml/gcc-patches/2016-10/msg00280.html and the changes since then probably fall under the "obvious" rule. gcc/ChangeLog: * read-md.c (rtx_reader::require_char): New method. (require_char_ws): Convert from func

[PATCH 5/9] Introduce selftest::locate_file (v4)

2016-11-11 Thread David Malcolm
Link to discussion of earlier version of patch: https://gcc.gnu.org/ml/gcc-patches/2016-10/msg00260.html On Wed, 2016-10-05 at 18:10 +0200, Bernd Schmidt wrote: > On 10/05/2016 06:15 PM, David Malcolm wrote: > > selftest: s-selftest > > s-selftest: $(GCC_PASSES) cc1$(exeext) stmp-int-hdrs > >

[PATCH 1/9] print_rtx: implement support for reuse IDs (v2)

2016-11-11 Thread David Malcolm
Posted earlier here: https://gcc.gnu.org/ml/gcc-patches/2016-11/msg00651.html Link to earlier discussion: https://gcc.gnu.org/ml/gcc-patches/2016-10/msg01801.html This version: - eliminates the rtx_reuse_manager singleton - eliminates print-rtl-reuse.h, moving class rtx_reuse_manager into prin

[PATCH 6/9] Split class rtx_reader into md_reader vs rtx_reader

2016-11-11 Thread David Malcolm
Link to earlier discussion: https://gcc.gnu.org/ml/gcc-patches/2016-10/msg01690.html This moves read_rtx and friends into rtx_reader, and splits rtx_reader into two classes: class md_reader: has responsibility for reading chars, managing include files, top-level directives etc. It is the read-

[PATCH 3/9] Introduce emit_status::ensure_regno_capacity

2016-11-11 Thread David Malcolm
Link to earlier version of the patch: https://gcc.gnu.org/ml/gcc-patches/2016-10/msg00278.html gcc/ChangeLog: * emit-rtl.c (gen_reg_rtx): Move regno_pointer_align and regno_reg_rtx resizing logic to... (emit_status::ensure_regno_capacity): ...this new method. (ini

[PATCH 2/9] (approved) Introduce rtl_data::init_stack_alignment

2016-11-11 Thread David Malcolm
(approved by Bernd) Move this part of "expand"'s initialization of crtl into its own method so that it can used by the RTL frontend when postprocessing RTL dumps. gcc/ChangeLog: * cfgexpand.c (pass_expand::execute): Move stack initializations to rtl_data::init_stack_alignment and

[PATCH 0/9] RTL frontend v4

2016-11-11 Thread David Malcolm
This patch kit is v4 of the RTL frontend. For reference, the earlier versions were: v1 (2016-05-04): "[PATCH 0/4] RFC: RTL frontend" https://gcc.gnu.org/ml/gcc-patches/2016-05/msg00352.html v2 (2016-09-08): "[PATCH 0/9] RFC: selftests based on RTL dumps" https://gcc.gnu.org/ml/gcc-

Re: [PATCH v3] PR77359: Properly align local variables in functions calling alloca.

2016-11-11 Thread Segher Boessenkool
On Fri, Nov 11, 2016 at 10:33:16AM +0100, Dominik Vogt wrote: > > > So, is this patch in order to be committed? (Assuming that a > > > followup patch will clean up the rs6000.h+aix.h quirks.) > > > > Please also update the ASCII pictures above the rs6000_stack_info() > > function in rs6000.c to s

Re: [PATCH] PR77359: Properly align local variables in functions calling alloca.

2016-11-11 Thread Segher Boessenkool
On Fri, Nov 11, 2016 at 09:58:21AM +0100, Dominik Vogt wrote: > > You say it needs more testing -- what testing? > > Regression testing on AIX (David has done this in reply to the > original message), possibly also on 32-Bit Power, if that is a > reasonable target. It is. I'll test powerpc64-lin

Re: [PATCH, i386]: Fix PR78626, wrong code with -fschedule-insns

2016-11-11 Thread Uros Bizjak
On Wed, Nov 9, 2016 at 8:25 PM, Uros Bizjak wrote: > Hello! > > We need earlyclobber on output operand of doubleword shift insns, > since we have to prevent (partial) output matching %ecx as count > argument. > > 2016-11-09 Uros Bizjak > > PR target/78262 > * config/i386/i386.md (*3_dou

Re: [1/9][RFC][DWARF] Reserve three DW_OP numbers in vendor extension space

2016-11-11 Thread Jakub Jelinek
On Fri, Nov 11, 2016 at 06:21:48PM +, Jiong Wang wrote: > This patch introduces three AARCH64 private DWARF operations in vendor > extension > space. > > DW_OP_AARCH64_pauth 0xea > === > Takes one unsigned LEB 128 Pointer Authentication Description. Bits [3:0] of > the description contain

Re: [PATCH] Add AVX512 k-mask intrinsics

2016-11-11 Thread Uros Bizjak
On Fri, Nov 11, 2016 at 7:23 PM, Andrew Senkevich wrote: > 2016-11-11 20:56 GMT+03:00 Uros Bizjak : >> On Fri, Nov 11, 2016 at 6:50 PM, Uros Bizjak wrote: >>> On Fri, Nov 11, 2016 at 6:38 PM, Andrew Senkevich >>> wrote: 2016-11-11 17:34 GMT+03:00 Uros Bizjak : > Some quick remarks:

Re: [PATCH] loop distribution bug fix

2016-11-11 Thread Jim Wilson
On Thu, Nov 10, 2016 at 2:53 AM, Richard Biener wrote: > The biggest "lack" of loop distribution is the ability to undo CSE so for I hadn't noticed this problem yet. I will have to take a look. > Then of course the cost model is purely modeled for STREAM (reduce the number > of memory streams).

Re: [PATCH] libiberty: Add Rust symbol demangling.

2016-11-11 Thread David Tolnay
On Fri, Nov 11, 2016 at 10:46 AM, Ian Lance Taylor wrote: > The patch is OK when the copyright assignment is clear. Ian I sent out the paperwork Monday night to ass...@gnu.org. David

Re: [PATCH] libiberty: Add Rust symbol demangling.

2016-11-11 Thread Ian Lance Taylor
On Fri, Nov 11, 2016 at 10:45 AM, Mark Wielaard wrote: > On Fri, 2016-11-11 at 09:11 -0800, Ian Lance Taylor wrote: >> On Fri, Nov 11, 2016 at 8:32 AM, Mark Wielaard wrote: >> > On Fri, 2016-11-11 at 07:01 -0800, Ian Lance Taylor wrote: >> > >> >> Are you completely confident that Rust mangling w

Re: [PATCH] libiberty: Add Rust symbol demangling.

2016-11-11 Thread Mark Wielaard
On Fri, 2016-11-11 at 09:11 -0800, Ian Lance Taylor wrote: > On Fri, Nov 11, 2016 at 8:32 AM, Mark Wielaard wrote: > > On Fri, 2016-11-11 at 07:01 -0800, Ian Lance Taylor wrote: > > > >> Are you completely confident that Rust mangling will never change to > >> start requiring more space in the dem

Re: [Patch] Don't expand targetm.stack_protect_fail if it's NULL_TREE

2016-11-11 Thread Jiong Wang
On 24/10/16 16:22, Jeff Law wrote: Asserting couldn't hurt. I'd much rather have the compiler issue an error, ICE or somesuch than silently not generate a call to the stack protector fail routine. Hi Jeff, I have just send out the other patch which accelerates -fstack-protector on AArc

[9/9][RFC][AArch64] Accelerate -fstack-protector through pointer authentication extension

2016-11-11 Thread Jiong Wang
This patch accelerates GCC's existed -fstack-protector using ARMv8.3-A pointer authentication instructions. Given AArch64 currently has the following stack layout: | caller's LR | | | canary<- sentinel for -fstack-protector | locals (buffer located here) |---

[8/9][AArch64, libgcc] Runtime support for AArch64 DWARF operations

2016-11-11 Thread Jiong Wang
This patch add AArch64 specific runtime EH unwinding support for DW_OP_AARCH64_pauth, DW_OP_AARCH64_paciasp and DW_OP_AARCH64_paciasp_deref. The semantics of them are described at the specification in patch [1/9]. The support includes: * Parsing these DWARF operations. Perform unwinding actio

[7/9][AArch64, libgcc] Let AArch64 use customized unwinder file

2016-11-11 Thread Jiong Wang
We need customized EH unwinder support for AArch64 DWARF operations introduced earlier in this patchset, these changes mostly need to be done in the generic file unwind-dw2.c. There are two ways of introducing these AArch64 support: * Introducing a few target macros so we can customize function

[6/9][AArch64] Add builtins support for pac/aut/xpac

2016-11-11 Thread Jiong Wang
This patch implements a few ARMv8.3-A new builtins for pointer sign and authentication instructions. Currently, these builtins are supposed to be used by libgcc EH unwinder only. They are not public interface to external user. OK to install? gcc/ 2016-11-11 Jiong Wang * config/aarch6

[5/9][AArch64] Generate dwarf information for -msign-return-address

2016-11-11 Thread Jiong Wang
This patch generate DWARF description for pointer authentication. DWARF value expression is used to describe the authentication action. Please see the cover letter and AArch64 DWARF specification for the semantics of AArch64 DWARF operations. When authentication key index is A key, we use compa

[4/9][AArch64] Return address protection on AArch64

2016-11-11 Thread Jiong Wang
As described in the cover letter, this patch implements return address signing for AArch64, it's controlled by the new option: -msign-return-address=[none | non-leaf | all] "none" means don't do return address signing at all on any function. "non-leaf" means only sign non-leaf function. "all

[3/9][AArch64] Add commandline support for -march=armv8.3-a

2016-11-11 Thread Jiong Wang
This patch add command line support for ARMv8.3-A through new architecture: -march=armv8.3-a ARMv8.3-A implies all default features of ARMv8.2-A and meanwhile it includes the new pointer authentication extension. gcc/ 2016-11-08 Jiong Wang * config/aarch64/aarch64-arches.def: New e

[2/9] Encoding support for AArch64 DWARF operations

2016-11-11 Thread Jiong Wang
The encoding for new added AARCH64 DWARF operations. I am thinking DWARF specification actually allows vendor private operations overlap with each other as one can't co-exist with the other. So in theory we should introduce target hook to handle target private operations. But in GCC/binutils/LL

Re: [Patch, Fortran, F03] PR 77501: ICE in gfc_match_generic, at fortran/decl.c:9429

2016-11-11 Thread Steve Kargl
On Fri, Nov 11, 2016 at 03:05:06PM +0100, Janus Weil wrote: > 2016-11-11 14:38 GMT+01:00 Janus Weil : > > [Btw, speaking of gfc_get_tbp_symtree: Can anyone tell me by chance > > why it is necessary to nullify 'result->n.tb' on a newly-created > > symtree?] > > Removing the corresponding line does

Re: [PATCH] Add AVX512 k-mask intrinsics

2016-11-11 Thread Andrew Senkevich
2016-11-11 18:26 GMT+03:00 Marc Glisse : > On Fri, 11 Nov 2016, Andrew Senkevich wrote: > >> +extern __inline __mmask32 >> +__attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) >> +_kand_mask32 (__mmask32 __A, __mmask32 __B) >> +{ >> + return (__mmask32) __builtin_ia32_kandsi ((__mm

New French PO file for 'gcc' (version 6.2.0)

2016-11-11 Thread Translation Project Robot
Hello, gentle maintainer. This is a message from the Translation Project robot. A revised PO file for textual domain 'gcc' has been submitted by the French team of translators. The file is available at: http://translationproject.org/latest/gcc/fr.po (This file, 'gcc-6.2.0.fr.po', has just

Re: [PATCH] Add AVX512 k-mask intrinsics

2016-11-11 Thread Andrew Senkevich
2016-11-11 20:56 GMT+03:00 Uros Bizjak : > On Fri, Nov 11, 2016 at 6:50 PM, Uros Bizjak wrote: >> On Fri, Nov 11, 2016 at 6:38 PM, Andrew Senkevich >> wrote: >>> 2016-11-11 17:34 GMT+03:00 Uros Bizjak : Some quick remarks: +(define_insn "kmovb" + [(set (match_operand:QI 0 "no

[1/9][RFC][DWARF] Reserve three DW_OP numbers in vendor extension space

2016-11-11 Thread Jiong Wang
This patch introduces three AARCH64 private DWARF operations in vendor extension space. DW_OP_AARCH64_pauth 0xea === Takes one unsigned LEB 128 Pointer Authentication Description. Bits [3:0] of the description contain the Authentication Action Code. All unused bits are initialized to 0. The

Re: [Patch, Fortran, F03] PR 77501: ICE in gfc_match_generic, at fortran/decl.c:9429

2016-11-11 Thread Steve Kargl
On Fri, Nov 11, 2016 at 02:38:25PM +0100, Janus Weil wrote: > > 2016-11-11 Janus Weil > > PR fortran/77501 > * decl.c (gfc_match_decl_type_spec): Use gfc_get_tbp_symtree, > fix indentation. > (gfc_match_generic): Remove an unnecessary assert. > Use gfc_get_tbp_symtree to av

[0/9] Support ARMv8.3-A Pointer Authentication Extension

2016-11-11 Thread Jiong Wang
As the introduction at https://community.arm.com/groups/processors/blog/2016/10/27/armv8-a-architecture-2016-additions ARMv8.3-A includes a new hardware feature called "Pointer Authentication". This new extension support some new instructions which can sign and authenticate pointer value. On

Re: [PATCH] Add AVX512 k-mask intrinsics

2016-11-11 Thread Uros Bizjak
On Fri, Nov 11, 2016 at 6:50 PM, Uros Bizjak wrote: > On Fri, Nov 11, 2016 at 6:38 PM, Andrew Senkevich > wrote: >> 2016-11-11 17:34 GMT+03:00 Uros Bizjak : >>> Some quick remarks: >>> >>> +(define_insn "kmovb" >>> + [(set (match_operand:QI 0 "nonimmediate_operand" "=k,k") >>> + (unspec:QI >>> +

Re: [PATCH] Add AVX512 k-mask intrinsics

2016-11-11 Thread Uros Bizjak
On Fri, Nov 11, 2016 at 6:38 PM, Andrew Senkevich wrote: > 2016-11-11 17:34 GMT+03:00 Uros Bizjak : >> Some quick remarks: >> >> +(define_insn "kmovb" >> + [(set (match_operand:QI 0 "nonimmediate_operand" "=k,k") >> + (unspec:QI >> + [(match_operand:QI 1 "nonimmediate_operand" "r,km")] >> + UNS

Re: [PATCH] Add AVX512 k-mask intrinsics

2016-11-11 Thread Andrew Senkevich
2016-11-11 17:34 GMT+03:00 Uros Bizjak : > Some quick remarks: > > +(define_insn "kmovb" > + [(set (match_operand:QI 0 "nonimmediate_operand" "=k,k") > + (unspec:QI > + [(match_operand:QI 1 "nonimmediate_operand" "r,km")] > + UNSPEC_KMOV))] > + "!(MEM_P (operands[0]) && MEM_P (operands[1])) &&

[PATCH][GCC][PATCHv3] Improve fpclassify w.r.t IEEE like numbers in GIMPLE.

2016-11-11 Thread Tamar Christina
Hi All, This is v3 of the patch which adds an optimized route to the fpclassify builtin for floating point numbers which are similar to IEEE-754 in format. The patch has been rewritten to do it in GIMPLE instead of a fold. As part of the implementation optimized versions of is_normal, is_subnorma

Re: [PR target/78213] Do not ICE on non-empty -fself-test

2016-11-11 Thread Jakub Jelinek
On Fri, Nov 11, 2016 at 09:10:48AM -0800, Aldy Hernandez wrote: > The problem in this PR is that -fself-test is being run on a non empty > source file. This causes init_emit() to run, which sets: > > REG_POINTER (virtual_incoming_args_rtx) = 1; > > Setting REG_POINTER on the virtual incomi

Re: [PATCH] libiberty: Add Rust symbol demangling.

2016-11-11 Thread Ian Lance Taylor
On Fri, Nov 11, 2016 at 8:32 AM, Mark Wielaard wrote: > On Fri, 2016-11-11 at 07:01 -0800, Ian Lance Taylor wrote: > >> Are you completely confident that Rust mangling will never change to >> start requiring more space in the demangled string? If that could >> ever happen, you have chosen an unfo

[PR target/78213] Do not ICE on non-empty -fself-test

2016-11-11 Thread Aldy Hernandez
The problem in this PR is that -fself-test is being run on a non empty source file. This causes init_emit() to run, which sets: REG_POINTER (virtual_incoming_args_rtx) = 1; Setting REG_POINTER on the virtual incoming args, causes /f to be printed on some RTL dumps, causing the -fself-

[PATCH] MIPS/GCC: Mark text contents as code or data

2016-11-11 Thread Maciej W. Rozycki
Add local symbols of the correct type at the beginning and the end of inline jump tables and MIPS16 constant pools, marking these data areas as such while keeping code outside marked as such as well. Consider the following example, built as MIPS16 code: $ cat switch16.c int foo (int i) { stati

Re: [fixincludes] Fix macOS 10.12 and (PR sanitizer/78267)

2016-11-11 Thread Rainer Orth
Hi Iain, >> On 11 Nov 2016, at 16:50, Rainer Orth wrote: >> >> Hi Iain, >> On 11 Nov 2016, at 11:18, Mike Stump wrote: On Nov 11, 2016, at 2:15 AM, Rainer Orth wrote: > The patch passes fixincludes make check (this time for real ;-) and > restores macOS 10.12 boot

Re: [fixincludes] Fix macOS 10.12 and (PR sanitizer/78267)

2016-11-11 Thread Iain Sandoe
> On 11 Nov 2016, at 16:50, Rainer Orth wrote: > > Hi Iain, > >>> On 11 Nov 2016, at 11:18, Mike Stump wrote: >>> >>> On Nov 11, 2016, at 2:15 AM, Rainer Orth >>> wrote: The patch passes fixincludes make check (this time for real ;-) and restores macOS 10.12 bootstrap. >>> >>> No

Re: [fixincludes] Fix macOS 10.12 and (PR sanitizer/78267)

2016-11-11 Thread Rainer Orth
Hi Iain, >> On 11 Nov 2016, at 11:18, Mike Stump wrote: >> >> On Nov 11, 2016, at 2:15 AM, Rainer Orth >> wrote: >>> The patch passes fixincludes make check (this time for real ;-) and >>> restores macOS 10.12 bootstrap. >> >> No objections from me. > > On x86_64-darwin14, there still seem to

Re: [PATCH][i386][musl] Add cpuinfo to static libgcc only on *-musl*

2016-11-11 Thread Rich Felker
On Fri, Nov 11, 2016 at 05:40:04PM +0100, Uros Bizjak wrote: > On Fri, Nov 11, 2016 at 4:50 PM, Szabolcs Nagy wrote: > > The __cpu_indicator_init and __cpu_model symbols are not safe to use > > from shared libgcc_s.so from ifunc resolvers, so since gcc-6, only > > the definitions from static libgc

Re: [PATCH][i386][musl] Add cpuinfo to static libgcc only on *-musl*

2016-11-11 Thread Uros Bizjak
On Fri, Nov 11, 2016 at 4:50 PM, Szabolcs Nagy wrote: > The __cpu_indicator_init and __cpu_model symbols are not safe to use > from shared libgcc_s.so from ifunc resolvers, so since gcc-6, only > the definitions from static libgcc.a are used, however the symbols > are kept in libgcc_s as well for

Re: [Patch AArch64 13/17] Enable _Float16 for AArch64

2016-11-11 Thread Joseph Myers
The patches enabling _Float16 should update the paragraph in extend.texi about where _Float* types are supported, as it currently says "GCC does not currently support @code{_Float16} or @code{_Float128x} on any systems.". (The release notes gcc-7/changes.html will also need updating.) -- Jos

Re: [PATCH] libiberty: Add Rust symbol demangling.

2016-11-11 Thread Mark Wielaard
On Fri, 2016-11-11 at 07:01 -0800, Ian Lance Taylor wrote: > On Thu, Nov 3, 2016 at 10:39 AM, Mark Wielaard wrote: > > > > include/ChangeLog: > > > > 2016-11-03 David Tolnay > >Mark Wielaard > > > >* demangle.h (DMGL_RUST): New macro. > >(DMGL_STYLE_MASK): Add DMGL_

Re: [PATCH, GCC] Recognize partial load of source expression on big endian targets

2016-11-11 Thread Thomas Preudhomme
On 11/11/16 14:45, Thomas Preudhomme wrote: Hi, To fix PR69714, code was added to disable bswap when the resulting symbolic expression (a load or load + byte swap) is smaller than the source expression (eg. some of the bytes accessed in the source code gets bitwise ANDed with 0). As explained

[PATCH, i386]: Fix PR78310, insn does not satisfy its constraints: {*bmi2_rorxdi3_1} with -mbmi2

2016-11-11 Thread Uros Bizjak
2016-11-11 Uros Bizjak PR target/78310 * config/i386/i386.md (rotate to rotatex splitter): Avoid overflow when calculating operand 2. (rotate to rotatex zext splitter): Ditto. testsuite/ChangeLog: 2016-11-11 Uros Bizjak PR target/78310 * gcc.target/i386/pr78310.c:

Re: [PATCHv2 6/7, GCC, ARM, V8M] ARMv8-M Security Extension's cmse_nonsecure_call: use __gnu_cmse_nonsecure_call

2016-11-11 Thread Kyrill Tkachov
And CC'ing Ramana and Richard this time... On 11/11/16 16:18, Kyrill Tkachov wrote: On 11/11/16 16:15, Andre Vieira (lists) wrote: Why are you writing 1.0 to clear the register? I think you want CONST0_RTX (DFmode) and CONST0_RTX (SFmode). Also, in this function when you iterate from regno =

Re: [PATCHv2 6/7, GCC, ARM, V8M] ARMv8-M Security Extension's cmse_nonsecure_call: use __gnu_cmse_nonsecure_call

2016-11-11 Thread Kyrill Tkachov
On 11/11/16 16:15, Andre Vieira (lists) wrote: Why are you writing 1.0 to clear the register? I think you want CONST0_RTX (DFmode) and CONST0_RTX (SFmode). Also, in this function when you iterate from regno = 0 up to some number, please use regno = R0_REGNUM (minor nit). Thanks, Kyrill Hi K

Re: [fixincludes] Fix macOS 10.12 and (PR sanitizer/78267)

2016-11-11 Thread Iain Sandoe
Hi Rainer, Thanks for the patch! > On 11 Nov 2016, at 11:18, Mike Stump wrote: > > On Nov 11, 2016, at 2:15 AM, Rainer Orth > wrote: >> The patch passes fixincludes make check (this time for real ;-) and >> restores macOS 10.12 bootstrap. > > No objections from me. On x86_64-darwin14, there

Re: [PATCHv2 6/7, GCC, ARM, V8M] ARMv8-M Security Extension's cmse_nonsecure_call: use __gnu_cmse_nonsecure_call

2016-11-11 Thread Andre Vieira (lists)
> Why are you writing 1.0 to clear the register? I think you want > CONST0_RTX (DFmode) > and CONST0_RTX (SFmode). > > Also, in this function when you iterate from regno = 0 up to some > number, please use > regno = R0_REGNUM (minor nit). > > Thanks, > Kyrill > > Hi Kyrill, So you got me thin

Re: [PATCH/AARCH64] Improved -mcpu/mtune/march=native handling

2016-11-11 Thread Andrew Pinski
On Fri, Nov 11, 2016 at 7:59 AM, Andreas Tobler wrote: > On 11.11.16 11:06, Richard Earnshaw wrote: >> >> On 11/11/16 02:56, Andrew Pinski wrote: >>> >>> As I mentioned in my other emails, parsing /proc/cpuinfo has one issue >>> is that the current parsing assumes many different things about the >

Re: Simplify X / X, 0 / X and X % X

2016-11-11 Thread Jeff Law
On 11/07/2016 08:19 AM, Jeff Law wrote: On 11/07/2016 03:02 AM, Richard Biener wrote: On Sat, Nov 5, 2016 at 3:30 AM, Jeff Law wrote: On 11/04/2016 02:07 PM, Marc Glisse wrote: Hello, since we were discussing this recently... The condition is copied from the existing 0 % X case, visible in

Re: [PATCH] PR78241, fix loop unroller when niter expr is not reliable

2016-11-11 Thread Pat Haugen
On 11/10/2016 06:54 PM, Andrew Pinski wrote: > On Wed, Nov 9, 2016 at 2:13 PM, Pat Haugen > wrote: >> > The following fixes a problem introduced by my earlier loop unroller >> > patch, https://gcc.gnu.org/ml/gcc-patches/2016-09/msg01612.html. In >> > instances where the niter expr is not reliab

Re: [Patch testsuite patch 10/17] Add options for floatN when checking effective target for support

2016-11-11 Thread Joseph Myers
On Fri, 11 Nov 2016, James Greenhalgh wrote: > > Hi, > > As Joseph and I discussed in > https://gcc.gnu.org/ml/gcc-patches/2016-11/msg00239.html the > check_effective_target_float tests should add any options which the > target requires to enable those float types (add_options_for_float. > > Th

Re: [PATCH/AARCH64] Improved -mcpu/mtune/march=native handling

2016-11-11 Thread Andreas Tobler
On 11.11.16 11:06, Richard Earnshaw wrote: On 11/11/16 02:56, Andrew Pinski wrote: As I mentioned in my other emails, parsing /proc/cpuinfo has one issue is that the current parsing assumes many different things about the format. So the best way to do this is to parse /sys/devices/system/cpu/cp

Re: [PATCH] have __builtin_object_size handle POINTER_PLUS with non-const offset (pr 77608)

2016-11-11 Thread Martin Sebor
Thanks for the review and comments! @@ -158,14 +170,149 @@ compute_object_offset (const_tree expr, const_tree var) return size_binop (code, base, off); } +static bool +operand_unsigned_p (tree op) +{ + if (TREE_CODE (op) == SSA_NAME) new functions need a comment. But maybe you want to u

Re: [PATCH][1/2] GIMPLE Frontend, C FE parts (and GIMPLE parser)

2016-11-11 Thread Joseph Myers
On Fri, 11 Nov 2016, Richard Biener wrote: > Is the original patch with the change below ok for trunk? Yes. -- Joseph S. Myers jos...@codesourcery.com

[PATCH][i386][musl] Add cpuinfo to static libgcc only on *-musl*

2016-11-11 Thread Szabolcs Nagy
The __cpu_indicator_init and __cpu_model symbols are not safe to use from shared libgcc_s.so from ifunc resolvers, so since gcc-6, only the definitions from static libgcc.a are used, however the symbols are kept in libgcc_s as well for backward compatibility (with appropriate symbol version). On t

Re: [RFC] Handle unary pass-through jump functions for ipa-vrp

2016-11-11 Thread Bin.Cheng
On Tue, Nov 8, 2016 at 10:13 AM, kugan wrote: > Hi, > > > > On 04/11/16 04:36, Martin Jambor wrote: >> >> Hi, >> >> On Fri, Oct 28, 2016 at 02:03:47PM +1100, kugan wrote: >>> >>> >>> ...snip... >>> >>> I have also separated the constant parameter conversion out and posted as >>> https://gcc.gnu.or

[Patch ARM 17/17] Enable _Float16 for ARM.

2016-11-11 Thread James Greenhalgh
Hi, Finally, having added support for single-step DFmode to HFmode conversions, this patch adds support for _Float16 to the ARM back-end. That means making sure that only __fp16 promotes and adding similar hooks to those used in the AArch64 port giving the excess precision rules, and marking HFm

[Patch 15/17 libgcc ARM] Add double to half conversions.

2016-11-11 Thread James Greenhalgh
Hi, Conversions from double precision floats to the ARM __fp16 are required to round only once. This patch adds a functions named __gnu_d2h_ieee and __gnu_d2h_alternative for double to __fp16 conversions in IEEE and ARM alternative format. The make use of the existing __gnu_float2h_internal conv

[Patch 16/17 libgcc ARM] Half to double precision conversions

2016-11-11 Thread James Greenhalgh
Hi, This patch adds the half-to-double conversions, both as library functions, or when supported in hardware, using the appropriate instructions. That means adding support for the __gnu_d2h_{ieee/alternative} library calls added in patch 2/4, and providing a more aggressive truncdfhf2 where we c

[Patch 14/17] [libgcc, ARM] Generalise float-to-half conversion function.

2016-11-11 Thread James Greenhalgh
Hi, I'm adapting this patch from work started by Matthew Wahab. Conversions from double precision floats to the ARM __fp16 are required to round only once. A conversion function for double to __fp16 to support this on soft-fp targets. This and the following patch add this conversion function by

[Patch AArch64 13/17] Enable _Float16 for AArch64

2016-11-11 Thread James Greenhalgh
Hi, This patch adds the back-end wiring to get AArch64 support for the _Float16 type working. Bootstrapped on AArch64 with no issues. OK? Thanks, James --- 2016-11-09 James Greenhalgh * config/aarch64/aarch64-c.c (aarch64_update_cpp_builtins): Update __FLT_EVAL_METHOD__ a

[Patch AArch64 11/17] Add floatdihf2 and floatunsdihf2 patterns

2016-11-11 Thread James Greenhalgh
Hi, This patch adds patterns for conversion from 64-bit integer to 16-bit floating-point values under AArch64 targets which don't have support for the ARMv8.2-A 16-bit floating point extensions. We implement these by first saturating to a SImode (we know that any values >= 65504 will round to in

[Patch libgcc AArch64 12/17] Enable hfmode soft-float conversions and truncations

2016-11-11 Thread James Greenhalgh
Hi, This patch enables the conversion functions we need for AArch64's _Float16 support. To do that we need to implement TARGET_SCALAR_MODE_SUPPORTED_P, so do that now. OK? Thanks, James --- gcc/ 2016-11-09 James Greenhalgh * config/aarch64/aarch64-c.c (aarch64_scalar_mode_supporte

[Patch testsuite patch 10/17] Add options for floatN when checking effective target for support

2016-11-11 Thread James Greenhalgh
Hi, As Joseph and I discussed in https://gcc.gnu.org/ml/gcc-patches/2016-11/msg00239.html the check_effective_target_float tests should add any options which the target requires to enable those float types (add_options_for_float. This patch ensures those options get added, which presently only c

[Patch libgcc 9/17] Update soft-fp from glibc

2016-11-11 Thread James Greenhalgh
--- This patch can be self approved --- Hi, This patch merges in the support added to glibc for HFmode conversions in this patch: commit 87ab10d6524fe4faabd7eb3eac5868165ecfb323 Author: James Greenhalgh Date: Wed Sep 21 21:02:54 2016 + [soft-fp] Add support for vario

[Patch 8/17] Make _Float16 available if HFmode is available

2016-11-11 Thread James Greenhalgh
--- This patch was approved: https://gcc.gnu.org/ml/gcc-patches/2016-09/msg02403.html --- Hi, Now that we've worked on -fexcess-precision, the comment in targhooks.c no longer holds. We can now permit _Float16 on any target which provides HFmode and supports HFmode in libgcc. Bootstrapped and

[Patch 7/17] Delete TARGET_FLT_EVAL_METHOD and poison it.

2016-11-11 Thread James Greenhalgh
--- This patch was approved: https://gcc.gnu.org/ml/gcc-patches/2016-09/msg02401.html --- Hi, We've removed all uses of TARGET_FLT_EVAL_METHOD, so we can remove it and poison it. Bootstrapped and tested on x86-64 and AArch64. Tested on s390 and m68k to the best of my ability (no execute test

Re: [PATCH 0/8] NVPTX offloading to NVPTX: backend patches

2016-11-11 Thread Bernd Schmidt
On 11/11/2016 04:35 PM, Alexander Monakov wrote: For the avoidance of doubt, is this a statement of intent, or an actual approval for the patchset? After these backend modifications and the rest of libgomp/middle-end changes are applied, trunk will need the following flip-the-switch patch to al

[Patch 6/17] Migrate excess precision logic to use TARGET_EXCESS_PRECISION

2016-11-11 Thread James Greenhalgh
--- This patch has already been approved: https://gcc.gnu.org/ml/gcc-patches/2016-11/msg00784.html --- This patch moves the logic for excess precision from using the TARGET_FLT_EVAL_METHOD macro to the TARGET_EXCESS_PRECISION hook introduced earlier in the patch series. Briefly; we have four t

[Patch 5/17] Add -fpermitted-flt-eval-methods=[c11|ts-18661-3]

2016-11-11 Thread James Greenhalgh
--- This patch was approved here: https://gcc.gnu.org/ml/gcc-patches/2016-09/msg02405.html Joseph had a comment in https://gcc.gnu.org/ml/gcc-patches/2016-10/msg00335.html that the tests should check FLT_EVAL_METHOD from rather than __FLT_EVAL_METHOD__. Rather than implement that suggestion, I

[Patch 4/17] Implement TARGET_C_EXCESS_PRECISION for m68k

2016-11-11 Thread James Greenhalgh
--- This patch was approved in the original form, and the delta to here would apply under the obvious rule: https://gcc.gnu.org/ml/gcc-patches/2016-09/msg02414.html --- On Fri, Sep 30, 2016 at 11:28:28AM -0600, Jeff Law wrote: > On 09/30/2016 11:01 AM, James Greenhalgh wrote: > > > >Hi, > > > >

  1   2   >