Re: [PATCH] PR fortran/78719 -- Check for a CLASS

2019-08-16 Thread Janne Blomqvist
On Sat, Aug 17, 2019 at 4:00 AM Steve Kargl wrote: > > Regression tested on x86_64-*-freebsd. OK to commit? > > When checking to see in attrbutes are being added to > an entity that alrady has an explcit interface, gfortran > failed to consider the case of CLASS. The attach patch > corrects

Re: [PATCH] PR fortran/91471 -- Remove a gfc_internal_error()

2019-08-16 Thread Janne Blomqvist
On Sat, Aug 17, 2019 at 2:53 AM Steve Kargl wrote: > > The attach patch has been tested on x86_64-*-freebsd. > The code, testcase, and ChangeLog should provide > sufficient information. OK to commit? > > 2019-08-16 Steven G. Kargl > > PR fortran/91471 > * primary.c

Re: [PATCH] PR fortran/78739 -- detect statement function name conflict

2019-08-16 Thread Janne Blomqvist
On Sat, Aug 17, 2019 at 2:47 AM Steve Kargl wrote: > > The attach patch checks that a statement function name > does not conflict the name of the containing function. > Regression tested on x86_64-*-freebsd. OK to commit? > > 2019-08-16 Steven G. Kargl > > PR fortran/78739 > *

libgo patch committed: Scan write barrier buffer conservatively

2019-08-16 Thread Ian Lance Taylor
This libgo patch by Cherry Zhang scans the write barrier buffer conservatively. In gccgo, we insert the write barriers in the frontend, and so we cannot completely prevent write barriers on stack writes. So it is possible for a bad pointer appearing in the write barrier buffer. When flushing

Implement C++20 p1424 - 'constexpr' feature macro concerns.

2019-08-16 Thread Ed Smith-Rowland via gcc-patches
The latest draft and I guess the above paper changed the macro names for the C++20 constexpr lib featues. __cpp_lib_constexpr_algorithms ->__cpp_lib_constexpr. This patch changes the name but not the date because I still have some work to do before I can ship the "miscellaneous" constexpr

Re: C++ PATCH for c++/81676 - bogus -Wunused warnings in constexpr if

2019-08-16 Thread Jason Merrill
On 8/16/19 2:29 PM, Marek Polacek wrote: This patch is an attempt to fix the annoying -Wunused-but-set-* warnings that tend to occur with constexpr if. When we have something like template < typename T > int f(T v){ if constexpr(sizeof(T) == sizeof(int)){ return v;

[PATCH V2 2/8] bpf: new GCC port

2019-08-16 Thread Jose E. Marchesi
This patch adds a port for the Linux kernel eBPF architecture to GCC. ChangeLog: * configure.ac: Support for bpf-*-* targets. * configure: Regenerate. contrib/ChangeLog: * config-list.mk (LIST): Disable go in bpf-*-* targets. gcc/ChangeLog: * config.gcc: Support for bpf-*-*

[PATCH] PR fortran/78719 -- Check for a CLASS

2019-08-16 Thread Steve Kargl
Regression tested on x86_64-*-freebsd. OK to commit? When checking to see in attrbutes are being added to an entity that alrady has an explcit interface, gfortran failed to consider the case of CLASS. The attach patch corrects this omission. See the 3 testcases for clarity. 2019-08-16 Steven

[PATCH V2 4/8] bpf: gcc.target eBPF testsuite

2019-08-16 Thread Jose E. Marchesi
This patch adds a new testsuite to gcc.target, with eBPF specific tests. Tests are included for: - Target specific diagnostics. - All built-in functions. testsuite/ChangeLog: * gcc.target/bpf/bpf.exp: New file. * gcc.target/bpf/builtin-load.c: Likewise. *

[PATCH V2 0/8] eBPF support for GCC

2019-08-16 Thread Jose E. Marchesi
[Differences from V1: . A bug in bpf_target_macros was embarrassing enough to trigger me to send this fixed new version of the patch series. My strlen vs. sizeof dyslexia attacking again... . Rebased to latest master.] Hi people! This patch series introduces a port of GCC to eBPF, which is

[PATCH V2 6/8] bpf: adjust GCC testsuite to eBPF limitations

2019-08-16 Thread Jose E. Marchesi
This patch makes many tests in gcc.dg and gcc.c-torture to be skipped in bpf-*-* targets. This is due to the many limitations imposed by eBPF to what would be perfectly valid C code: no support for indirect calls, no support for more than 5 arguments to function calls, no support for indirect

[PATCH V2 8/8] bpf: add myself as the maintainer for the eBPF port

2019-08-16 Thread Jose E. Marchesi
ChangeLog: * MAINTAINERS: Add myself as the maintainer for the eBPF port. --- ChangeLog | 4 MAINTAINERS | 1 + 2 files changed, 5 insertions(+) diff --git a/MAINTAINERS b/MAINTAINERS index 5d8402949bc..bcf81e8f337 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -57,6 +57,7 @@ arm

[PATCH V2 5/8] bpf: make target-supports.exp aware of eBPF

2019-08-16 Thread Jose E. Marchesi
This patch makes the several effective target checks in target-supports.exp to be aware of eBPF targets. gcc/testsuite/ChangeLog: * lib/target-supports.exp (check_effective_target_malloc): New function. (check_effective_target_trampolines): Adapt to eBPF.

[PATCH V2 7/8] bpf: manual updates for eBPF

2019-08-16 Thread Jose E. Marchesi
gcc/ChangeLog: * doc/invoke.texi (Option Summary): Cover eBPF. (eBPF Options): New section. * doc/extend.texi (BPF Built-in Functions): Likewise. (BPF Kernel Helpers): Likewise. --- gcc/ChangeLog | 7 +++ gcc/doc/extend.texi | 171

[PATCH V2 3/8] bpf: new libgcc port

2019-08-16 Thread Jose E. Marchesi
This patch adds an eBPF port to libgcc. As of today, compiled eBPF programs do not support a single-entry point schema. Instead, a BPF "executable" is a relocatable ELF object file containing multiple entry points, in certain named sections. Also, the BPF loaders in the kernel do not execute

[PATCH V2 1/8] Update config.sub and config.guess.

2019-08-16 Thread Jose E. Marchesi
* config.sub: Import upstream version 2019-06-30. * config.guess: Import upstream version 2019-07-24. --- ChangeLog| 5 ++ config.guess | 264 +++ config.sub | 50 +-- 3 files changed, 240 insertions(+), 79

Re: C++ PATCH for c++/91264 - detect modifying const objects in constexpr

2019-08-16 Thread Jason Merrill
On 8/16/19 5:11 AM, Marek Polacek wrote: On Thu, Aug 15, 2019 at 08:21:25PM -0400, Jason Merrill wrote: On 8/15/19 5:34 PM, Marek Polacek wrote: On Wed, Aug 14, 2019 at 02:50:13PM -0400, Jason Merrill wrote: On Thu, Aug 8, 2019 at 3:25 PM Marek Polacek wrote: On Thu, Aug 08, 2019 at

[PATCH] PR fortran/91471 -- Remove a gfc_internal_error()

2019-08-16 Thread Steve Kargl
The attach patch has been tested on x86_64-*-freebsd. The code, testcase, and ChangeLog should provide sufficient information. OK to commit? 2019-08-16 Steven G. Kargl PR fortran/91471 * primary.c (gfc_variable_attr): Remove a gfc_internal_error(), which cannot be

[PATCH] PR fortran/78739 -- detect statement function name conflict

2019-08-16 Thread Steve Kargl
The attach patch checks that a statement function name does not conflict the name of the containing function. Regression tested on x86_64-*-freebsd. OK to commit? 2019-08-16 Steven G. Kargl PR fortran/78739 * match.c (gfc_match_st_function): When matching a statement

Re: [PATCH] PR fortran/68401 Improve allocation error message

2019-08-16 Thread Steve Kargl
On Fri, Aug 16, 2019 at 05:31:36PM +0300, Janne Blomqvist wrote: > Improve the error message that is printed when a memory allocation > fails, by including the location, and the size of the allocation that > failed. > > Regtested on x86_64-pc-linux-gnu, Ok for trunk? > Looks good to me. --

Go patch committed: Print runtime.hex in hex

2019-08-16 Thread Ian Lance Taylor
This is a patch to the Go frontend by Cherry Zhang. The gc compiler recognizes the type runtime.hex and prints values in this type as hex. Do the same in the Go frontend. This makes debugging runtime crashes slightly better. Bootstrapped and ran Go testsuite on x86_64-pc-linux-gnu. Committed to

[PATCH] issue consistent warning for past-the-end array stores (PR 91457)

2019-08-16 Thread Martin Sebor
With the recent enhancement to the strlen handling of multibyte stores the g++.dg/warn/Warray-bounds-4.C for zero-length arrays started failing on hppa (and probably elsewhere as well). This is partly the result of the added detection of past-the-end writes into the strlen pass which detects

Re: [RFA] [tree-optimization/80576] Handle non-constant sizes in DSE

2019-08-16 Thread Martin Sebor
On 8/16/19 12:15 PM, Jeff Law wrote: On 8/16/19 12:09 PM, Marc Glisse wrote: On Fri, 16 Aug 2019, Jeff Law wrote: This patch improves our ability to detect dead stores by handling cases where the size memcpy, memset, strncpy, etc call is not constant.  This addresses some, but not all, of the

Re: [RFA] [tree-optimization/80576] Handle non-constant sizes in DSE

2019-08-16 Thread Jeff Law
On 8/16/19 4:06 PM, Marc Glisse wrote: > On Fri, 16 Aug 2019, Jeff Law wrote: > >> On 8/16/19 12:09 PM, Marc Glisse wrote: >>> On Fri, 16 Aug 2019, Jeff Law wrote: >>> This patch improves our ability to detect dead stores by handling cases where the size memcpy, memset, strncpy, etc

[wwwdocs] readings.html - www.xilinx.com has moved to https

2019-08-16 Thread Gerald Pfeifer
Committed. Gerald Index: readings.html === RCS file: /cvs/gcc/wwwdocs/htdocs/readings.html,v retrieving revision 1.319 diff -u -r1.319 readings.html --- readings.html 10 Aug 2019 21:04:08 - 1.319 +++ readings.html

Re: [RFA] [tree-optimization/80576] Handle non-constant sizes in DSE

2019-08-16 Thread Marc Glisse
On Fri, 16 Aug 2019, Jeff Law wrote: On 8/16/19 12:09 PM, Marc Glisse wrote: On Fri, 16 Aug 2019, Jeff Law wrote: This patch improves our ability to detect dead stores by handling cases where the size memcpy, memset, strncpy, etc call is not constant.  This addresses some, but not all, of

[committed] Fix SH test compromised by recent forwprop changes

2019-08-16 Thread Jeff Law
My tester threw regressions for the SH targets overnight. This was bisect down to this patch: commit ce1d21d251fee17a70ee9f8ff9e57620126f28c7 (refs/bisect/bad) Author: rguenth Date: Fri Aug 16 09:27:34 2019 + 2019-08-16 Richard Biener * tree-ssa-forwprop.c

C++ PATCH for c++/81676 - bogus -Wunused warnings in constexpr if

2019-08-16 Thread Marek Polacek
This patch is an attempt to fix the annoying -Wunused-but-set-* warnings that tend to occur with constexpr if. When we have something like template < typename T > int f(T v){ if constexpr(sizeof(T) == sizeof(int)){ return v; }else{ return 0; } } and

Re: [RFA] [tree-optimization/80576] Handle non-constant sizes in DSE

2019-08-16 Thread Jeff Law
On 8/16/19 12:09 PM, Marc Glisse wrote: > On Fri, 16 Aug 2019, Jeff Law wrote: > >> This patch improves our ability to detect dead stores by handling cases >> where the size memcpy, memset, strncpy, etc call is not constant.  This >> addresses some, but not all, of the issues in 80576. >> >> The

[wwwdocs] Remove reference to G77 bugs from bugs/index.html

2019-08-16 Thread Gerald Pfeifer
Applied. G77 really is a *while* ago now. ;-) Gerald Index: index.html === RCS file: /cvs/gcc/wwwdocs/htdocs/bugs/index.html,v retrieving revision 1.129 diff -u -r1.129 index.html --- index.html 31 Jan 2019 09:32:18 -

C++ PATCH to add test for c++/85827

2019-08-16 Thread Marek Polacek
This one was fixed in r269433 Tested on x86_64-linux, applying to trunk. 2019-08-16 Marek Polacek PR c++/85827 * g++.dg/cpp1z/constexpr-if29.C: New test. diff --git gcc/testsuite/g++.dg/cpp1z/constexpr-if29.C gcc/testsuite/g++.dg/cpp1z/constexpr-if29.C new file mode 100644

[libsanitizer, committed] Reapply r272406.

2019-08-16 Thread Iain Sandoe
Hi Somehow, I failed to commit the change to LOCAL_PATCHES for the fix for PR87880 applied in r272406. Fixed as below after re-checking on x86_64-linux-gnu, powerpc64-linux-gnu and x86_64-darwin. Also committed the change to LOCAL_PATCHES this time! thanks Iain. libsanitizer/ 2019-08-16

Re: [RFA] [tree-optimization/80576] Handle non-constant sizes in DSE

2019-08-16 Thread Jeff Law
On 8/16/19 12:09 PM, Marc Glisse wrote: > On Fri, 16 Aug 2019, Jeff Law wrote: > >> This patch improves our ability to detect dead stores by handling cases >> where the size memcpy, memset, strncpy, etc call is not constant.  This >> addresses some, but not all, of the issues in 80576. >> >> The

Re: [RFA] [tree-optimization/80576] Handle non-constant sizes in DSE

2019-08-16 Thread Marc Glisse
On Fri, 16 Aug 2019, Jeff Law wrote: This patch improves our ability to detect dead stores by handling cases where the size memcpy, memset, strncpy, etc call is not constant. This addresses some, but not all, of the issues in 80576. The key here is when the size is not constant we can make

Re: [patch] Add guard to build_reconstructed_reference

2019-08-16 Thread Richard Biener
On August 16, 2019 3:44:36 PM GMT+02:00, Eric Botcazou wrote: >Hi, > >this adds a small guard to the new function >build_reconstructed_reference for >broken VIEW_CONVERT_EXPRs. Users can easily generate these in Ada >through the >generic function Ada.Unchecked_Conversion and they need to be

[RFA] [tree-optimization/80576] Handle non-constant sizes in DSE

2019-08-16 Thread Jeff Law
This patch improves our ability to detect dead stores by handling cases where the size memcpy, memset, strncpy, etc call is not constant. This addresses some, but not all, of the issues in 80576. The key here is when the size is not constant we can make conservative decisions that still give

Re: [PATCH] Add --with-static-standard-libraries to the top level

2019-08-16 Thread Jonathan Wakely
On 13/08/19 09:18 -0600, Tom Tromey wrote: Jonathan> What I don't understand is why GDB crashes. It should still be able to Jonathan> catch exceptions from a shared library even if linked to libstdc++.a, Jonathan> unless the static libstdc++.a is somehow incompatible with the shared Jonathan>

Re: [PATCH] Improve DSE to handle redundant zero initializations.

2019-08-16 Thread Jeff Law
On 8/13/19 9:09 AM, Matthew Beliveau wrote: > Hello, > > This should have the changes you all asked for! Let me know if I > missed anything! > > Thank you, > Matthew Beliveau > > On Tue, Aug 13, 2019 at 5:15 AM Richard Biener > wrote: >> On Tue, Aug 13, 2019 at 10:18 AM Richard Sandiford >>

Re: types for VR_VARYING

2019-08-16 Thread Jeff Law
On 8/15/19 10:06 AM, Aldy Hernandez wrote: > > > On 8/15/19 7:23 AM, Richard Biener wrote: >> On Thu, Aug 15, 2019 at 12:40 PM Aldy Hernandez wrote: >>> >>> On 8/14/19 1:37 PM, Jeff Law wrote: On 8/13/19 6:39 PM, Aldy Hernandez wrote: > > > On 8/12/19 7:46 PM, Jeff Law wrote:

Re: [PATCH] PR target/91441 - Turn off -fsanitize=kernel-address if TARGET_ASAN_SHADOW_OFFSET is not implemented.

2019-08-16 Thread Jeff Law
On 8/15/19 8:45 PM, Kito Cheng wrote: > - -fsanitize=kernel-address will call targetm.asan_shadow_offset () >at asan_shadow_offset, so it will crash if TARGET_ASAN_SHADOW_OFFSET >is not implemented, that's mean -fsanitize=kernel-address is not >supported for target without

Re: [patch] Add guard to build_reconstructed_reference

2019-08-16 Thread Jeff Law
On 8/16/19 7:44 AM, Eric Botcazou wrote: > Hi, > > this adds a small guard to the new function build_reconstructed_reference for > broken VIEW_CONVERT_EXPRs. Users can easily generate these in Ada through > the > generic function Ada.Unchecked_Conversion and they need to be accepted... > >

Re: [PATCH] Automatics in equivalence statements

2019-08-16 Thread Mark Eggleston
On 14/08/2019 18:10, Jeff Law wrote: On 8/14/19 2:45 AM, Mark Eggleston wrote: I now have commit access. gcc/fortran     Jeff Law     Mark Eggleston     * gfortran.h: Add gfc_check_conflict declaration.     * symbol.c (check_conflict): Rename cfg_check_conflict and remove    

[PATCH] PR libstdc++/91371 make std::is_function handle other calling conventions

2019-08-16 Thread Jonathan Wakely
The x86 attributes such as ms_abi, stdcall, fastcall etc. alter the function type, which means that functions with one of those attributes do not match any of the partial specializations of std::is_function. Rather than duplicating the list for every calling convention, this adds a fallback to

Re: [PATCH 8/9] ifcvt: Handle swap-style idioms differently.

2019-08-16 Thread Richard Sandiford
Robin Dapp writes: >> Looks like a nice optimisation, but could we just test whether the >> destination of a set isn't live on exit from the then block? I think >> we could do that on the fly during the main noce_convert_multiple_sets >> loop. > > I included this locally along with the rest of

Re: [PATCH] [LRA] Fix wrong-code PR 91109 take 2

2019-08-16 Thread Vladimir Makarov
On 2019-08-16 11:06 a.m., Vladimir Makarov wrote: On 2019-08-15 3:46 p.m., Bernd Edlinger wrote: Hi, as discussed in the PR 91109 audit trail, my previous patch missed a case where no spilling is necessary, but the re-materialized instruction has now scratch regs without a hard register

Re: Add TIGERLAKE and COOPERLAKE to GCC

2019-08-16 Thread Uros Bizjak
On Fri, Aug 16, 2019 at 5:01 PM H.J. Lu wrote: > > On Fri, Aug 16, 2019 at 5:53 AM Uros Bizjak wrote: > > > > On Fri, Aug 16, 2019 at 6:10 AM Cui, Lili wrote: > > > > > > > > > > > > > -Original Message- > > > > From: H.J. Lu [mailto:hjl.to...@gmail.com] > > > > Sent: Friday, August 16,

Re: [PATCH] [LRA] Fix wrong-code PR 91109 take 2

2019-08-16 Thread Vladimir Makarov
On 2019-08-15 3:46 p.m., Bernd Edlinger wrote: Hi, as discussed in the PR 91109 audit trail, my previous patch missed a case where no spilling is necessary, but the re-materialized instruction has now scratch regs without a hard register assignment. And thus the LRA pass falls out of the

Re: Add TIGERLAKE and COOPERLAKE to GCC

2019-08-16 Thread H.J. Lu
On Fri, Aug 16, 2019 at 5:53 AM Uros Bizjak wrote: > > On Fri, Aug 16, 2019 at 6:10 AM Cui, Lili wrote: > > > > > > > > > -Original Message- > > > From: H.J. Lu [mailto:hjl.to...@gmail.com] > > > Sent: Friday, August 16, 2019 6:02 AM > > > To: Jeff Law > > > Cc: Cui, Lili ; Uros Bizjak

Re: [PATCH] Adding _Dependent_ptr type qualifier in C part 1/3

2019-08-16 Thread Paul E. McKenney
And please see the following URL for an update: http://www.rdrop.com/~paulmck/submission/D%20_Dependent_ptr%20to%20simplify%20carries%20a%20dependency.pdf This adds a description of conversions, warnings, and patches. Thanx, Paul On

Re: [PATCH] BOZ Documentation update

2019-08-16 Thread Steve Kargl
On Fri, Aug 16, 2019 at 03:25:03PM +0100, Mark Eggleston wrote: > In section 6.1.10 BOZ literal constants of the gfortran manual > (gfortran.pdf) the final paragraph refers to integer overflow error. As > a result of Steve Kargl's work on BOZ constants these errors no longer > occur. > > This

[PATCH, i386]: Introduce uavg3_ceil for 64bit MMX modes

2019-08-16 Thread Uros Bizjak
Attached patch introduces uavg3_ceil for V8QI and V4HI modes for TARGET_MMX_WITH_SSE targets. Also, the patch fixes invalid RTX generation for SSE and AVX uavg3 patterns. 2019-08-16 Uroš Bizjak * config/i386/mmx.md (mmxdoublemode): New mode attribute. (mmx_uavg3): Macroize expaner

[PATCH] PR fortran/68401 Improve allocation error message

2019-08-16 Thread Janne Blomqvist
Improve the error message that is printed when a memory allocation fails, by including the location, and the size of the allocation that failed. Regtested on x86_64-pc-linux-gnu, Ok for trunk? (libgomp.fortran/appendix-a/a.28.5.f90 fails, but that seems unrelated) gcc/fortran/ChangeLog:

[PATCH] BOZ Documentation update

2019-08-16 Thread Mark Eggleston
In section 6.1.10 BOZ literal constants of the gfortran manual (gfortran.pdf) the final paragraph refers to integer overflow error. As a result of Steve Kargl's work on BOZ constants these errors no longer occur. This patch deletes the paragraph. I've checked info, pdf, dvi and HTML

[patch] Add guard to build_reconstructed_reference

2019-08-16 Thread Eric Botcazou
Hi, this adds a small guard to the new function build_reconstructed_reference for broken VIEW_CONVERT_EXPRs. Users can easily generate these in Ada through the generic function Ada.Unchecked_Conversion and they need to be accepted... Tested on x86_64-suse-linux, OK for the mainline?

[PATCH] Refactor SCEV DFS finding

2019-08-16 Thread Richard Biener
This refactors the code to have a more obivous call structure and to avoid duplicate code. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2019-08-16 Richard Biener * tree-scalar-evolution.c (follow_ssa_edge_expr): Declare. (follow_ssa_edge_binary):

Re: [PATCH 8/9] ifcvt: Handle swap-style idioms differently.

2019-08-16 Thread Robin Dapp
> Looks like a nice optimisation, but could we just test whether the > destination of a set isn't live on exit from the then block? I think > we could do that on the fly during the main noce_convert_multiple_sets > loop. I included this locally along with the rest of the remarks. Any comments on

Re: Add TIGERLAKE and COOPERLAKE to GCC

2019-08-16 Thread Uros Bizjak
On Fri, Aug 16, 2019 at 6:10 AM Cui, Lili wrote: > > > > > -Original Message- > > From: H.J. Lu [mailto:hjl.to...@gmail.com] > > Sent: Friday, August 16, 2019 6:02 AM > > To: Jeff Law > > Cc: Cui, Lili ; Uros Bizjak ; GCC > > Patches ; Zhang, Annita > > ; Xiao, Wei3 ; Liu, Hongtao > > ;

[PATCH, alpha]: Update baseline_symbols.txt

2019-08-16 Thread Uros Bizjak
2019-08-16 Uros Bizjak * config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update. Tested on alphaev68-linux-gnu, committed to mainline SVN. Uros. a.diff.txt.bz2 Description: application/bzip

Re: [PATCH 2/3] Add simplify rules for wrapped binary operations.

2019-08-16 Thread Robin Dapp
> So - what are you really after? (sorry if I don't remeber, testcase(s) > are missing > from this patch) > > To me it seems that 1) loses information if A + CST was done in a signed type > and we know that overflow doesn't happen because of that. For the reverse > transformation we don't. Btw,

Re: C++ PATCH for c++/91264 - detect modifying const objects in constexpr

2019-08-16 Thread Marek Polacek
On Thu, Aug 15, 2019 at 08:21:25PM -0400, Jason Merrill wrote: > On 8/15/19 5:34 PM, Marek Polacek wrote: > > On Wed, Aug 14, 2019 at 02:50:13PM -0400, Jason Merrill wrote: > > > On Thu, Aug 8, 2019 at 3:25 PM Marek Polacek wrote: > > > > > > > > On Thu, Aug 08, 2019 at 11:06:17AM -0400, Jason

Re: [PATCH 2/9] operand_equal_p: add support for FIELD_DECL

2019-08-16 Thread Jan Hubicka
> On Thu, Aug 15, 2019 at 4:17 PM Jan Hubicka wrote: > > > > > On Tue, Aug 6, 2019 at 5:44 PM Martin Liska wrote: > > > > > > > > > > > > gcc/ChangeLog: > > > > > > So I suppose this isn't to call operand_equal_p on two FIELD_DECLs > > > but to make two COMPONENT_REFs "more equal"? If so I then

Re: [PATCH 3/9] operand_equal_p: add support for OBJ_TYPE_REF.

2019-08-16 Thread Jan Hubicka
> > When we compare OBJ_TYPE_REF_TOKEN and OBJ_TYPE_REF_OBJECT > and they are equal, are there cases where types_same_for_odr returns false? OBJ_TYPE_REF_OBJECT is pointer to the instance, OBJ_TYPE_REF_TOKEN is index in the vtable or the type given by obj_ref_type_class. I guess one can do

Re: [PATCH] Fix PR91469

2019-08-16 Thread Uros Bizjak
On Fri, Aug 16, 2019 at 1:10 PM Richard Biener wrote: > > > The following fixes PR91469 where STV replaced uses inside address > expressions. The issue arises here because convert_regs is called > before convert_insns which eventually splits out memory operands. > > Bootstrapped / tested on

Re: [PATCH] [LRA] Fix wrong-code PR 91109 take 2

2019-08-16 Thread Bernd Edlinger
On 8/15/19 9:46 PM, Bernd Edlinger wrote: > Hi, > > as discussed in the PR 91109 audit trail, > my previous patch missed a case where no spilling is necessary, > but the re-materialized instruction has now scratch regs without > a hard register assignment. And thus the LRA pass falls out of >

[PATCH] Fix PR91469

2019-08-16 Thread Richard Biener
The following fixes PR91469 where STV replaced uses inside address expressions. The issue arises here because convert_regs is called before convert_insns which eventually splits out memory operands. Bootstrapped / tested on x86_64-unknown-linux-gnu, OK? Thanks, Richard. 2019-08-16 Richard

[PATCH 10/N] Use const_tree more in IPA ICF.

2019-08-16 Thread Martin Liška
Hi. The patch is a mechanical clean up that changes some functions and data structures to use const_tree instead of tree. Martin >From 4f8267c542b038ff1c766b57f168fe817d8dbb91 Mon Sep 17 00:00:00 2001 From: Martin Liska Date: Thu, 15 Aug 2019 13:38:51 +0200 Subject: [PATCH 10/10] Use const_tree

Re: [PATCH 6/9] Integrate that for IPA ICF.

2019-08-16 Thread Martin Liška
I'm sending updated version of the patch. Note: there are some (tree)const_cast (t2) casting. I've got a clean up patch for that which will improve it. Martin >From 20020586beabf1fc9f7860f46bb0c092f8536539 Mon Sep 17 00:00:00 2001 From: Martin Liska Date: Mon, 10 Jun 2019 14:34:15 +0200

Re: [PATCH 5/9] Come up with an abstraction.

2019-08-16 Thread Martin Liška
On 8/14/19 3:56 PM, Richard Biener wrote: > On Wed, Aug 14, 2019 at 3:19 PM Martin Liška wrote: >> >> On 8/14/19 3:04 PM, Richard Biener wrote: >>> On Mon, Aug 12, 2019 at 3:56 PM Martin Liška wrote: On 8/12/19 2:43 PM, Richard Biener wrote: > On Mon, Aug 12, 2019 at 1:49 PM Martin

Re: [PATCH] Make GIMPLE forwprop DCE dead stmts

2019-08-16 Thread Richard Biener
On Wed, 14 Aug 2019, Jeff Law wrote: > On 8/14/19 7:36 AM, Richard Biener wrote: > > > > The following patch makes forwprop DCE the stmts that become dead > > because of propagation of copies and constants. For this to work > > we actually have to do that reliably rather than relying on > >

Re: [PATCH][gensupport] PR 91255: Do not error out immediately on set_attr_alternative with define_subst

2019-08-16 Thread Richard Sandiford
Kyrill Tkachov writes: > Hi all, > > I'm trying to add a define_subst use in the arm backend but am getting > many build errors complaining about: > `set_attr_alternative' is unsupported by `define_subst' > > Looking at the gensupport.c code it iterates over all define_insns and > errors if any

Re: [PATCH 2/9] operand_equal_p: add support for FIELD_DECL

2019-08-16 Thread Richard Biener
On Thu, Aug 15, 2019 at 4:17 PM Jan Hubicka wrote: > > > On Tue, Aug 6, 2019 at 5:44 PM Martin Liska wrote: > > > > > > > > > gcc/ChangeLog: > > > > So I suppose this isn't to call operand_equal_p on two FIELD_DECLs > > but to make two COMPONENT_REFs "more equal"? If so I then > > yes. The

Re: [PATCH 3/9] operand_equal_p: add support for OBJ_TYPE_REF.

2019-08-16 Thread Richard Biener
On Thu, Aug 15, 2019 at 4:57 PM Jan Hubicka wrote: > > > On Tue, Aug 6, 2019 at 5:43 PM Martin Liska wrote: > > > > > > > > > gcc/ChangeLog: > > > > + /* Virtual table call. */ > > + case OBJ_TYPE_REF: > > + { > > + if (!operand_equal_p (OBJ_TYPE_REF_EXPR (arg0), >

Re: [PATCH] Prevent LTO section collision for a symbol name starting with '*'.

2019-08-16 Thread Richard Biener
On Thu, Aug 15, 2019 at 4:33 PM Jan Hubicka wrote: > > > On Fri, Aug 9, 2019 at 3:57 PM Martin Liška wrote: > > > > > > Hi. > > > > > > The patch is about prevention of LTO section name clashing. > > > Now we have a situation where body of 2 functions is streamed > > > into the same ELF section.

Re: [PATCH] Make cdtor names stable for LTO (PR lto/91307).

2019-08-16 Thread Richard Biener
On Fri, Aug 16, 2019 at 10:47 AM Richard Biener wrote: > > On Thu, Aug 15, 2019 at 4:25 PM Jan Hubicka wrote: > > > > > On Thu, Aug 1, 2019 at 3:10 PM Martin Liška wrote: > > > > > > > > Hi. > > > > > > > > In LTO WPA mode we don't have to append temp file name > > > > to the global cdtor

Re: [PATCH] Make cdtor names stable for LTO (PR lto/91307).

2019-08-16 Thread Richard Biener
On Thu, Aug 15, 2019 at 4:25 PM Jan Hubicka wrote: > > > On Thu, Aug 1, 2019 at 3:10 PM Martin Liška wrote: > > > > > > Hi. > > > > > > In LTO WPA mode we don't have to append temp file name > > > to the global cdtor function names. > > > > Is that true? You can link with -r -flinker-output=rel

[PATCH][OBVIOUS] Add missed to a opt-info dump.

2019-08-16 Thread Martin Liška
Hi. It's an obvious fix for the test-case. It's verified by the reported that it helps. Martin gcc/testsuite/ChangeLog: 2019-08-15 Martin Liska PR ipa/91447 * g++.dg/ipa/ipa-icf-4.C: Add -missed for target that don't have aliases. ---

Re: types for VR_VARYING

2019-08-16 Thread Aldy Hernandez
On 8/15/19 12:06 PM, Aldy Hernandez wrote: On 8/15/19 7:23 AM, Richard Biener wrote: On Thu, Aug 15, 2019 at 12:40 PM Aldy Hernandez wrote: On 8/14/19 1:37 PM, Jeff Law wrote: On 8/13/19 6:39 PM, Aldy Hernandez wrote: On 8/12/19 7:46 PM, Jeff Law wrote: On 8/12/19 12:43 PM, Aldy