Re: [PATCH] Update to clang-format script

2019-06-23 Thread Martin Liška
On 6/23/19 11:39 AM, 김규래 wrote: GNU style brace wrapping rules have been added to clang-format quite a while ago. http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Format/Format.h?revision=197138=markup This simple patch proposes to use the built-in rules instead of the custom brace

Re: [PATCH] [RFC, PGO+LTO] Missed function specialization + partial devirtualization

2019-06-23 Thread luoxhu
Hi Honza, Thanks very much to get so many useful comments from you. As a newbie to GCC, not sure whether my questions are described clearly enough. Thanks for your patience in advance. :) On 2019/6/20 21:47, Jan Hubicka wrote: Hi, some comments on the ipa part of the patch (and thanks for

[PATCH] some more -Wformat-diag cleanup

2019-06-23 Thread Martin Sebor
The attached patch cleans up a number of outstanding -Wformat-diag instances. I plan to commit it tomorrow. With it applied, an x86_64-linux bootstrap shows just 79 unique instances of the warning originating in 17 files. 49 of those are in the Go front-end that Ian is already dealing with. I

Re: [PATCH][RFC] Sanitize equals and hash functions in hash-tables.

2019-06-23 Thread Ian Lance Taylor
On Fri, Jun 7, 2019 at 5:04 AM Martin Liška wrote: > > On 6/7/19 10:57 AM, Richard Biener wrote: > > On Mon, Jun 3, 2019 at 3:35 PM Martin Liška wrote: > >> > >> On 6/1/19 12:06 AM, Jeff Law wrote: > >>> On 5/22/19 3:13 AM, Martin Liška wrote: > On 5/21/19 1:51 PM, Richard Biener wrote: >

Go patch committed: edit error messages to avoid -Wformat-diag warnings

2019-06-23 Thread Ian Lance Taylor
This patch to the Go frontend edits various error messages to avoid -Wformat-diag warnings. GCC recently introduced -Wformat-diag to scrutinize GCC error messages. It reports a number of warnings about gofrontend code, such as: ../../trunk/gcc/go/gofrontend/import.cc: In member function ‘Type*

Go patch committed: Stop using gcc diagnostic formatting for info messages

2019-06-23 Thread Ian Lance Taylor
This patch to the Go frontend adds a new function go_debug and uses it for debug messages. GCC recently added a new warning -Wformat-diag which does a lot of rigorous checks on GCC diagnostic messages. This produces a number of unnecessary diagnostics on gofrontend diagnostic output, such as:

Re: [PATCH] don't trim empty string initializers for pointers (PR 90947)

2019-06-23 Thread Martin Sebor
On 6/22/19 9:37 PM, Jason Merrill wrote: On 6/21/19 8:05 PM, Martin Sebor wrote: The solution we implemented in GCC 9 to get the mangling of non-type template arguments of class types containing array members consistent regardless of the form of their initialization introduced a couple of bugs. 

[Patch, fortran] PR90903 - Implement runtime checks for bit manipulation intrinsics

2019-06-23 Thread Harald Anlauf
Dear all, the attached patch provides run-time checks for the bit manipulation intrinsic functions (IBSET/IBCLR/BTEST/SHIFT[RLA]/ISHFT/ISHFTC). I am using only one testcase whose purpose is mainly to verify that there are no false positives, which I consider essential, and one "failing" test at

[Darwin, PPC, testsuite, committed] Fix builtins-2 Darwin.

2019-06-23 Thread Iain Sandoe
This cannot pass for current Darwin, since it requires VSX and we don't have any hardware supporting that. The “fix” is to add a dg-requires clause for this. 2019-06-23 Iain Sandoe * gcc.target/powerpc/builtins-2.c: Require VSX hardware support. diff --git

[Darwin, PPC, testsuite, committed] Fix pr80125 testcase for Darwin.

2019-06-23 Thread Iain Sandoe
Darwin (unlike most of the members of the PowerPC port family) defaults to signed chars, so the test was failing to compile with a "mismatched parameters" error. tested on powerpc-darwin9, powerpc-linux-gnu applied to mainline thanks Iain 2019-06-23 Iain Sandoe *

[Darwin, PPC, testsuite, committed] Fix builtins-1 testcase for Darwin.

2019-06-23 Thread Iain Sandoe
The test needs to account for Darwin's __USER_LABEL_PREFIX__. tested on powerpc-darwin9, powerpc-linux-gnu applied to mainline thanks Iain 2019-06-23 Iain Sandoe * gcc.target/powerpc/builtins-1.c: Account for Darwin's use of __USER_LABEL_PREFIX__. diff --git

[Darwin, PPC, committed] Handle GCC target pragma.

2019-06-23 Thread Iain Sandoe
Primarily, for compatibility with other members of the port. Note, that we do not handle the longcall attribute, since longcall is not required/used on current Darwin (supported only for legacy cases). 2019-06-23 Iain Sandoe * config/rs6000/darwin.h: Handle GCC target pragma. diff

[Darwin, PPC, committed] Emit uppercase versions of ppc defines.

2019-06-23 Thread Iain Sandoe
Emit __PPC__ (32b) and __PPC64__ (64bit) as per the other members of the PowerPC port. Darwin has always emitted __ppc__ and __ppc64__ but some testcases rely on the upper case variants. tested on powerpc-darwin9, applied to mainline. thanks Iain 2019-06-23 Iain Sandoe *

[Darwin, PPC, testsuite, committed] Fix pr71785 testcase for Darwin.

2019-06-23 Thread Iain Sandoe
The test was failing with false positive for the scan-assembler-not. Firstly, we adjust the test conditions to use non-PIC code for Darwin. Secondly, we have to account for out-of-line GPR restores which gives a false positive on the scan-assembler-not. Lastly, we make the test a bit more

Re: [PATCH] [ARC] Fix PR89838

2019-06-23 Thread Andrew Burgess
* Claudiu Zissulescu [2019-06-06 10:32:11 +0300]: > Hi Andrew, > > This is a proposed fix for bugzilla PR89838 issue. It also needs to be > backported to gcc9 and, eventually, gcc8 branches. > > Ok to apply? > Claudiu I had a look through the patch and found just one small nit detailed

Re: [C++ Patch] PR 90909 ("[10 Regression] call devirtualized to pure virtual")

2019-06-23 Thread Jason Merrill
On 6/23/19 7:53 AM, Paolo Carlini wrote: ... hi again ;) The other day I was having a look at using declarations for this issue and noticed that only a few lines below the de-virtualization check we have to handle functions found by a using declaration, for various reasons. In particular, we

Re: [PATCH 0/3] RFC: Keep debug values live for -Og

2019-06-23 Thread Richard Sandiford
This patch tries to make sure that, when optimising at -Og, the gimple IL has appropriate debug information for the whole of a variable's scope. It does the same for parameters in functions that always return (but still misses cases in functions that don't return -- a TODO for later). The idea is

[PATCH 3/3] RFC: Add -O1g

2019-06-23 Thread Richard Sandiford
This patch adds an option called -O1g, a half-way house between -Og and -O1 in terms of both performance and debuggability. 2019-06-23 Richard Sandiford config/ * bootstrap-O1g.mk: New file. gcc/ * common.opt (O1g): New option. * doc/invoke.texi: Document it.

[PATCH 1/3] RFC: Add a mode in which debug stmts participate in codegen

2019-06-23 Thread Richard Sandiford
This patch adds a mode in which debug stmts and debug insns are explicitly allowed to affect codegen. In particular: - uses in debug binds become first-class uses, acting like uses in executable code - the use of DEBUG_EXPR_DECLs is banned. If we want to refer to a temporary value in debug

[PATCH 0/3] RFC: Let debug stmts influence codegen at -Og

2019-06-23 Thread Richard Sandiford
-Og is documented as: @option{-Og} should be the optimization level of choice for the standard edit-compile-debug cycle, offering a reasonable level of optimization while maintaining fast compilation and a good debugging experience. It is a better choice than @option{-O0} for producing

[C++ Patch] A few additional location improvements to grokdeclarator and check_tag_decl

2019-06-23 Thread Paolo Carlini
Hi, here there are a couple of rather straightforward improvements in the second half of grokdeclarator plus a check_tag_decl change consistent with the other existing case of multiple_types_p diagnostic. Tested x86_64-linux. Thanks, Paolo. / /cp 2019-06-23 Paolo

Re: [C++ Patch] PR 90909 ("[10 Regression] call devirtualized to pure virtual")

2019-06-23 Thread Paolo Carlini
... hi again ;) The other day I was having a look at using declarations for this issue and noticed that only a few lines below the de-virtualization check we have to handle functions found by a using declaration, for various reasons. In particular, we know whether we found a function fn where

Re: [PATCH] i386: Separate costs of RTL expressions from costs of moves

2019-06-23 Thread Jan Hubicka
> I opened: > > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90952 > > We shouldn't use costs for moves for costs of RTL expressions. We can > experiment different RTL expression cost formulas. But we need to separate > costs of RTL expressions from costs for moves first. What is the best

[PATCH] Update to clang-format script

2019-06-23 Thread 김규래
GNU style brace wrapping rules have been added to clang-format quite a while ago. http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Format/Format.h?revision=197138=markup This simple patch proposes to use the built-in rules instead of the custom brace rules. Ray Kim 2019-06-27 Ray