Hi,
this patch moves the reading of a phi arg location to before the loop
that modifies the phi, ensuring that we're not reading some random value.
PR found with a patch that does more strict checking in gimple_phi_arg.
Bootstrapped and reg-tested on x86_64.
Committed as obvious.
Thanks,
-
Hi!
Richard has asked me recently to look at V[24]TI vector extraction
and initialization, which he wants to use from the vectorizer.
The following is an attempt to implement that.
On the testcases included in the patch we get usually better or
significantly better code generated, the exception
On Thu, Jul 13, 2017 at 10:47:06PM +0200, Jakub Jelinek wrote:
> This patch is a manual backport of the 2012-2017 sysdeps/ieee754/ldbl-128/
> glibc changes into libquadmath. As mentioned in the PR, which has
> detailed git diff commands, I've left *jnl.c, *lgamma* and x2y2m1l.c
> changes so far, t
On Tue, Jul 18, 2017 at 11:17:39PM -0600, Jeff Law wrote:
> I don't think this patch changed in any significant way since V1.
Except the first time you attached the correct patch ;-)
Segher
Hi,
this patch checks that gimple_phi_arg accesses args only in the
inclusive 0..(nargs-1) region.
There are a couple of functions that manipulate args in the inclusive
nargs..(capacity-1) region, so these have been updated to temporarily
increase nargs to capacity while doing the manipulati
On Wed, Jul 19, 2017 at 4:39 PM, Alexander Monakov wrote:
> On Wed, 19 Jul 2017, Richard Biener wrote:
>> >> --- a/gcc/match.pd
>> >> +++ b/gcc/match.pd
>> >> @@ -283,6 +283,20 @@ DEFINE_INT_AND_FLOAT_ROUND_FN (RINT)
>> >> || mul != wi::min_value (TYPE_PRECISION (type), SIGNED))
>> >>
On Wed, Jul 19, 2017 at 5:42 PM, Tom de Vries wrote:
> Hi,
>
> this patch makes an assert in gimple_phi_arg more strict.
>
> The current assert allows 'index == phi_stmt->capacity', but
> 'phi_stmt->args[phi_stmt->capacity]' is out of bounds.
>
> Bootstrapped and reg-tested on x86_64.
>
> Committe
On 07/20/2017 10:46 AM, Richard Biener wrote:
On Wed, Jul 19, 2017 at 5:42 PM, Tom de Vries wrote:
Hi,
this patch makes an assert in gimple_phi_arg more strict.
The current assert allows 'index == phi_stmt->capacity', but
'phi_stmt->args[phi_stmt->capacity]' is out of bounds.
Bootstrapped an
On Fri, Jul 14, 2017 at 12:12 PM, James Greenhalgh
wrote:
> On Wed, Jul 12, 2017 at 03:15:04PM +, Bin Cheng wrote:
>> Hi,
>> After change @236817, AArch64 backend could avoid unnecessary conversion
>> instructions for register between different modes now. As a result, GCC
>> could initialize
Hi,
I removed computation of may_be_zero in revision 238585 by assuming
"pointer + 2 < pointer" can be folded. This is false when pointer could
overflow,
as well as unsigned type (I don't know why it haven't been exposed for long
time in case of unsigned type). As for the issue itself, any fix w
Hi,
this patch fixes PR81430, an ICE in the libgomp testsuite for both
openmp and openacc test-cases for x86_64 with nvptx accelerator.
The scenario how we hit the ICE is as follows:
- a testcase is compiled with -O2
- ix86_option_optimization_table enables
OPT_freorder_blocks_and_partition
On Thu, 20 Jul 2017, Richard Biener wrote:
> >> So for saturating types isn't the issue when @1 and @2 have opposite
> >> sign and the inner multiply would have saturated?
> >
> > No, I think the only special case is @1 == @2 == -1, otherwise either @2 is
> > 0 or 1, or @1 * @2 is larger in magnitu
Tested on x86_64-unknown-linux-gnu, applied.
Richard.
2017-07-20 Richard Biener
* gcc.dg/vect/slp-43.c: Increase loop count to enable vectorization
with V64QImode.
* gcc.dg/vect/slp-45.c: Likewise.
Index: gcc/testsuite/gcc.dg/vect/slp-43.c
===
On Thu, 20 Jul 2017, Tom de Vries wrote:
> Hi,
>
> this patch checks that gimple_phi_arg accesses args only in the inclusive
> 0..(nargs-1) region.
>
> There are a couple of functions that manipulate args in the inclusive
> nargs..(capacity-1) region, so these have been updated to temporarily in
On Thu, 20 Jul 2017, Tom de Vries wrote:
> Hi,
>
> this patch fixes PR81430, an ICE in the libgomp testsuite for both openmp and
> openacc test-cases for x86_64 with nvptx accelerator.
>
> The scenario how we hit the ICE is as follows:
> - a testcase is compiled with -O2
> - ix86_option_optimiza
On Thu, 20 Jul 2017, Jakub Jelinek wrote:
> Hi!
>
> Richard has asked me recently to look at V[24]TI vector extraction
> and initialization, which he wants to use from the vectorizer.
>
> The following is an attempt to implement that.
>
> On the testcases included in the patch we get usually be
On 07/20/2017 12:05 PM, Richard Biener wrote:
I've used the following to only init the PHI node up to nargs, not
capacity (but still consistently zero things). Currently
bootstrapping/testing on x86_64-unknown-linux-gnu (plus the adjusted
assert of course).
I think it's slightly cleaner than ad
On Thu, Jul 20, 2017 at 11:09 AM, Bin Cheng wrote:
> Hi,
> I removed computation of may_be_zero in revision 238585 by assuming
> "pointer + 2 < pointer" can be folded. This is false when pointer could
> overflow,
> as well as unsigned type (I don't know why it haven't been exposed for long
> tim
On Thu, Jul 20, 2017 at 11:39 AM, Alexander Monakov wrote:
> On Thu, 20 Jul 2017, Richard Biener wrote:
>> >> So for saturating types isn't the issue when @1 and @2 have opposite
>> >> sign and the inner multiply would have saturated?
>> >
>> > No, I think the only special case is @1 == @2 == -1,
On Wed, Jul 19, 2017 at 10:51:33AM -0400, David Malcolm wrote:
> The changes to diagnostic-core.h and diagnostic.c are OK.
Thanks.
> > Also,
> > PEDWARN_FOR_ASSIGNMENT didn't work with the addition of printing TYPE
> > and
> > RHSTYPE so I just decided to unroll the macro instead of making it
>
On Wed, Jul 19, 2017 at 3:55 PM, Marek Polacek wrote:
> On Wed, Jul 19, 2017 at 12:45:12PM +0200, Richard Biener wrote:
>> On Tue, Jul 18, 2017 at 6:05 PM, Marek Polacek wrote:
>> > We ended up in infinite recursion between extract_muldiv_1 and
>> > fold_plusminus_mult_expr, because one turns thi
> On Jul 17, 2017, at 3:10 PM, Torsten Duwe wrote:
>
> What is the next step now? Is anybody going to commit that patch?
>
> Torsten
>
> On Fri, Jul 07, 2017 at 02:57:55PM +0100, Richard Earnshaw (lists) wrote:
>> On 06/07/17 15:03, Torsten Duwe wrote:
>> +#if TARGET_HAVE_NAMED_SECTIONS
>
On Wed, 19 Jul 2017, Richard Biener wrote:
>
> The following fixes another case of missed reduction vectorization,
> namely when we failed to associate a chain with mixed plus/minus
> (thus it isn't detected as SLP reduction chain). The thing is set up
> in a way that it should be straight forwa
On 07/18/2017 01:24 PM, Jim Wilson wrote:
Changes to the debug info files requires a gdb make check with and
without the patch to check for regressions. Since you are changing both
dbxout and dwarf2out, you would need to do this twice, once for each
debug info type. Testing dbxout may be a l
Hi,
this is patch I comitted.
Thanks for looking into it,
Honza
PR middle-end/81030
* gcc.dg/pr81030.c: New test.
* cfgbuild.c (find_many_sub_basic_blocks): Update REG_BR_PROB note
when gimple level profile disagrees with what RTL expander did.
Index: tests
On Thu, Jul 20, 2017 at 01:58:06PM +0300, Maxim Kuvyrkov wrote:
> > On Jul 17, 2017, at 3:10 PM, Torsten Duwe wrote:
> >
> > What is the next step now? Is anybody going to commit that patch?
>
> Torsten, if you prefer I can commit your patch (after bootstrap and a regtest
> on aarch64-linux-gnu
On 07/20/2017 07:31 AM, Nathan Sidwell wrote:
So I don't think I've made it worse there. thoughts?
aha, gstabs+ for gnu extensions. With a small fix I get the following
before and after (I changed the example to add another frob member).
(gdb) ptype X
type = struct X {
public:
int fr
This adds remaining gphi * overloads to the GIMPLE_PHI accessors in
gimple.h and changes the assert in gimple_phi_arg to only allow
access to actual arguments rather than available slots. Accordingly
PHI node management needs to be adjusted to avoid touching the unused
area apart from memsetting
In https://gcc.gnu.org/ml/gcc-patches/2017-06/msg01125.html Jiong
pointed out some addressing inefficiencies due to a recent change in
regcprop (https://gcc.gnu.org/ml/gcc-patches/2017-04/msg00775.html).
This patch improves aarch64_legitimize_address_displacement to split
unaligned offsets of TImo
On 07/13/2017 06:53 PM, Cesar Philippidis wrote:
Similarly, for nvptx vector reductions, when it comes time to initialize
the reduction variable, the nvptx BE constructs a branch so that only
vector lanes 1 to vector_length-1 are initialized the the default value
for a given reduction type, where
> On Jul 20, 2017, at 3:06 PM, Torsten Duwe wrote:
>
> On Thu, Jul 20, 2017 at 01:58:06PM +0300, Maxim Kuvyrkov wrote:
>>> On Jul 17, 2017, at 3:10 PM, Torsten Duwe wrote:
>>>
>>> What is the next step now? Is anybody going to commit that patch?
>>
>> Torsten, if you prefer I can commit your p
Hi Jeff,
On Tue, Jul 18, 2017 at 11:17:48PM -0600, Jeff Law wrote:
> It turns out combine-stack-adjustments would take
>
> allocate PROBE_INTERVAL
> probe
> allocate PROBE_INTERVAL
> probe
> allocate PROBE_INTERVAL
> probe
> allocate RESIDUAL
>
> And turn that into
>
> allocate (3 * PROBE_INTER
Hi, this patch fixes some minor problems in lto-plugin:
Some older mingw32 host environments have broken asprintf.
As far as I can tell, the problem is that the mingw asprintf
implementation calls _vsnprintf (NULL, 0, ...) which always
returns -1 as length on the host.
The patch fixes this by us
Hi Jeff,
On Tue, Jul 18, 2017 at 11:17:19PM -0600, Jeff Law wrote:
>
> The biggest change in this update to patch 01/08 is moving of stack
> clash protection out of -fstack-check= and into its own option,
> -fstack-clash-protection. I believe other issues raised by reviewers
> have been addresse
This adds a new C++ dialect, enabled by -std=c++2a.
libcpp/
Add support for C++2a.
* include/cpplib.h (c_lang): Add CXX2A and GNUCXX2A.
* init.c (lang_defaults): Add rows for CXX2A and GNUCXX2A.
(cpp_init_builtins): Set __cplusplus to 201707L for C++2x.
On 19/07/17 22:19 +0200, Marc Glisse wrote:
On Wed, 19 Jul 2017, Jonathan Wakely wrote:
The PR shows a fairly pathological case where ranges of InputIterators
are repeatedly inserted at the start of a vector. Each insertion from
an InputIterator moves every element after the insertion point by
On 07/20/2017 06:04 AM, Tom de Vries wrote:
> On 07/13/2017 06:53 PM, Cesar Philippidis wrote:
>> Similarly, for nvptx vector reductions, when it comes time to initialize
>> the reduction variable, the nvptx BE constructs a branch so that only
>> vector lanes 1 to vector_length-1 are initialized th
On 07/20/2017 04:12 PM, Cesar Philippidis wrote:
Would you like to take over this patch?
I saw that you started working on this issue (or a similar one to it) in
PR81442.
Sure.
Thanks,
- Tom
On Thu, Jul 20, 2017 at 12:55:10PM +0200, Richard Biener wrote:
> On Wed, Jul 19, 2017 at 3:55 PM, Marek Polacek wrote:
> > On Wed, Jul 19, 2017 at 12:45:12PM +0200, Richard Biener wrote:
> >> On Tue, Jul 18, 2017 at 6:05 PM, Marek Polacek wrote:
> >> > We ended up in infinite recursion between e
On 07/20/2017 07:09 AM, Segher Boessenkool wrote:
> Hi Jeff,
>
> On Tue, Jul 18, 2017 at 11:17:48PM -0600, Jeff Law wrote:
>> It turns out combine-stack-adjustments would take
>>
>> allocate PROBE_INTERVAL
>> probe
>> allocate PROBE_INTERVAL
>> probe
>> allocate PROBE_INTERVAL
>> probe
>> allocate
Ping.
On Fri, Jul 14, 2017 at 03:38:05PM +0200, Marek Polacek wrote:
> I think David might be able to approve this one, so CCing.
>
> On Tue, Jul 11, 2017 at 03:23:16PM +0200, Marek Polacek wrote:
> > This patch fixes a bogus -Wmultistatement-macros warning. The code didn't
> > notice that what
Hi, this is a re-layout of mentioned section in extend.texi.
Purpose is to have a unified layout where the explanation has
a farther indentation than the item (function) to be explained.
Ok for trunk?
Johann
gcc/
* doc/invoke.texi (AVR Built-in Functions): Re-layout section.
Index: doc
Hi,
enabling bb reorering has quite visible code size effect due to disabling two
optimization - the small block duplication in connect_traces and post-reload
crossjumping. Small block duplication seems easy enough to allow within one
partition. While doing so i also noticed that my changes to c
Hi,
Segher pointed out on IRC that ICE reporting with dumps enabled got worse:
if emergency_dump_function itself leads to an ICE (e.g. by segfaulting),
nested ICE reporting will invoke emergency_dump_function in exactly the
same context, but not only would we uselessly announce current pass again,
On Wed, 2017-07-19 at 16:42 -0500, Segher Boessenkool wrote:
> Hi Steve,
>
> On Wed, Jul 19, 2017 at 10:14:01AM -0500, Steven Munroe wrote:
> > This it part 2/2 for contributing PPC64LE support for X86 MMX
> > instrisics. This patch adds the DG tests to verify the headers contents.
> > Oddly there
Block auto increment on frame pointer references. This is never
beneficial since the SFP expands into SP+C or FP+C during register
allocation. The generated code for the testcase is now as expected:
str x30, [sp, -32]!
strbw0, [sp, 31]
add x0, sp, 31
b
On 7/10/17 2:52 PM, Peter Bergner wrote:
> On 7/10/17 9:48 AM, Segher Boessenkool wrote:
>> On Fri, Jul 07, 2017 at 07:14:25PM -0500, Peter Bergner wrote:
>>> On 7/7/17 4:13 PM, Peter Bergner wrote:
On 7/7/17 10:18 AM, Segher Boessenkool wrote:
> On Thu, Jul 06, 2017 at 04:21:48PM -0500, P
Hi All,
This patch makes the self-test for the ARM options validations a bit
stricter.
When you specify a new architecture extension, neither the options flag in
arm-cpus.in nor the ISA definition in arm.h should contain any other
architecture bits, as this will confuse the parser. The options wi
On 20/07/17 15:57, Tamar Christina wrote:
> Hi All,
>
> This patch makes the self-test for the ARM options validations a bit
> stricter.
>
> When you specify a new architecture extension, neither the options flag in
> arm-cpus.in nor the ISA definition in arm.h should contain any other
> architec
On Thu, Jul 20, 2017 at 5:49 AM, Wilco Dijkstra wrote:
> In https://gcc.gnu.org/ml/gcc-patches/2017-06/msg01125.html Jiong
> pointed out some addressing inefficiencies due to a recent change in
> regcprop (https://gcc.gnu.org/ml/gcc-patches/2017-04/msg00775.html).
>
> This patch improves aarch64_l
On 07/20/2017 12:10 PM, Richard Biener wrote:
On Thu, 20 Jul 2017, Tom de Vries wrote:
Hi,
this patch fixes PR81430, an ICE in the libgomp testsuite for both openmp and
openacc test-cases for x86_64 with nvptx accelerator.
The scenario how we hit the ICE is as follows:
- a testcase is compile
Approved.
2017-07-20 18:28 GMT+04:00 Georg-Johann Lay :
> Hi, this is a re-layout of mentioned section in extend.texi.
>
> Purpose is to have a unified layout where the explanation has
> a farther indentation than the item (function) to be explained.
>
> Ok for trunk?
>
> Johann
>
> gcc/
>
On Thu, Jul 20, 2017 at 9:47 AM, Jakub Jelinek wrote:
> Another thing is that we actually don't permit a normal move instruction
> for V4TImode unless AVX512BW, so we used to generate terrible code (spill it
> into memory using GPRs and then load back). Any reason for that?
> I've found:
> https
On Thu, Jul 20, 2017 at 9:47 AM, Jakub Jelinek wrote:
> Hi!
>
> Richard has asked me recently to look at V[24]TI vector extraction
> and initialization, which he wants to use from the vectorizer.
>
> The following is an attempt to implement that.
>
> On the testcases included in the patch we get u
Hi,
the following patch introduces a new C++ warning option
-Wduplicated-access-specifiers that warns about redundant
access-specifiers in classes, e.g.
class B
{
public:
B();
private:
void foo();
private:
int i;
};
test.cc:8:5: warning: duplicate 'private' a
On 16/07/17 17:54 -0400, Glen Fernandes wrote:
diff --git a/libstdc++-v3/include/bits/allocated_ptr.h
b/libstdc++-v3/include/bits/allocated_ptr.h
index 773b3f5..72e0179 100644
--- a/libstdc++-v3/include/bits/allocated_ptr.h
+++ b/libstdc++-v3/include/bits/allocated_ptr.h
@@ -82,16 +82,10 @@ _GLI
On 2017.07.20 at 09:33 -0400, Andrew Sutton wrote:
> This adds a new C++ dialect, enabled by -std=c++2a.
>
> libcpp/
> Add support for C++2a.
> * include/cpplib.h (c_lang): Add CXX2A and GNUCXX2A.
> * init.c (lang_defaults): Add rows for CXX2A and GNUCXX2A.
>
For now, I think these two are incompatible. There are more features
in -fconcepts than in C++20 (so far). There are also some changes in
syntax and semantics that would be nice to diagnose. A good example
would be 'concept' as a decl-specifier (TS) vs. 'concept' as a
declaration introducer (WD).
On 2017.07.20 at 19:04 +0200, Markus Trippelsdorf wrote:
> On 2017.07.20 at 09:33 -0400, Andrew Sutton wrote:
> > This adds a new C++ dialect, enabled by -std=c++2a.
> >
> > libcpp/
> > Add support for C++2a.
> > * include/cpplib.h (c_lang): Add CXX2A and GNUCXX2A.
> >
On July 20, 2017 4:20:00 PM GMT+02:00, Marek Polacek wrote:
>On Thu, Jul 20, 2017 at 12:55:10PM +0200, Richard Biener wrote:
>> On Wed, Jul 19, 2017 at 3:55 PM, Marek Polacek
>wrote:
>> > On Wed, Jul 19, 2017 at 12:45:12PM +0200, Richard Biener wrote:
>> >> On Tue, Jul 18, 2017 at 6:05 PM, Marek
On Thu, Jul 20, 2017 at 12:53 PM, Jonathan Wakely wrote:
> We have a more general problem with this, which is that if it's only
> available for C++2a mode then we can't use the new feature in most of
> the library. Which would be very unfortunate. I want to use this!
>
> In order to clean up the va
On Tue, Jul 18, 2017 at 9:04 AM, Yuri Gribov wrote:
> Hi all,
>
> Currently all cases in switch statement are treated as having equal
> probabilities which causes suboptimal code as demonstrated in
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59521 . This patch
> modifies expander to select pivot
The current recipe in Type_guard_expression for creating a Bexpression
performs a type conversion at the Type level, but doesn't invoke
Backend::convert_expression to capture the conversion for the back
end. This patch by Than McIntosh adds code to create a BE type
conversion operation. Bootstrapp
On Thu, Jul 20, 2017 at 09:48:13AM -0500, Steven Munroe wrote:
> > > --- gcc/testsuite/gcc.target/powerpc/mmx-packs.c (nonexistent)
> > > +++ gcc/testsuite/gcc.target/powerpc/mmx-packs.c (working copy)
> > > @@ -0,0 +1,91 @@
> > > +/* { dg-do run } */
> > > +/* { dg-options "-O3 -mpower8-vector"
A bit more poking showed that dbx's desire to put all methods of the
same name in a single record was significant -- gdb requires that to
build an overload set.
So, this version of the dbxout changes is much smaller, in that we
iterate the TYPE_FIELDS twice. There's the original scan, which j
On Tue, Jul 18, 2017 at 10:11 PM, Alan Modra wrote:
> On Tue, Jul 18, 2017 at 07:49:48AM -0700, H.J. Lu wrote:
>> The difference is with --enable-default-pie, the gcc driver doesn't pass
>> both -pie and -static ld when "-static -pie" is used. Does your change
>> pass both -pie and -static ld wh
On Thu, Jul 20, 2017 at 2:00 PM, Nathan Sidwell wrote:
> With this patch the gdb stabs test results are still awful, but they are
> unchanged awfulness.
Yes, the stabs support for C++ is poor. That is one of the reasons
why almost everyone has switched to dwarf2.
I wasn't sure what to make of y
I've committed the appended patch to the GCC 5, 6, and 7 branches to
backport https://golang.org/cl/48231, which fixes building libgo with
recent versions of glibc on s390. Thanks to Jakub for testing the
patch.
Ian
Index: libgo/go/syscall/syscall_linux_s390.go
===
Hi,
this patch fixes ICE during profiledbootstrap about hot BB being dominated by
cold. This is verified by RTL verify_flow_info and was added by Theresa
along with patches to undo mistakes in in sane profile.
The implementation is odd because this is not about dominance but reachability.
It is a
Hello,
Caroline disabled crossjumping with bb-reordering in initial patch implementing
this pass. According to discussion with Rth it was only becuase she was unsure
how to prevent crossjumping to mix up crossing and non-crossing jumps. THis is
easy to do - we only need to avoid merging code acros
On 07/20/2017 06:03 PM, Jim Wilson wrote:
I wasn't sure what to make of your last message, so I tried to see if
I could build a toolchain that defaults to stabs so I could look at
this. I discovered that -freorder-functions doesn't work with stabs
on an elf target, as we get a cross section lab
On July 21, 2017 12:03:58 AM GMT+02:00, Jim Wilson
wrote:
>On Thu, Jul 20, 2017 at 2:00 PM, Nathan Sidwell wrote:
>> With this patch the gdb stabs test results are still awful, but they
>are
>> unchanged awfulness.
>
>Yes, the stabs support for C++ is poor. That is one of the reasons
>why almos
Hi Jeff
I have signed the copyright assignment, and used the name 'Wish Wu' .
Should I send you a copy of my assignment ?
The attachment is my new patch with small changes.
Codes are checked by ./contrib/check_GNU_style.sh, except some special files.
With
--
On Thu, Jul 20, 2017 at 8:41 PM, Steven Bosscher wrote:
> On Tue, Jul 18, 2017 at 9:04 AM, Yuri Gribov wrote:
>> Hi all,
>>
>> Currently all cases in switch statement are treated as having equal
>> probabilities which causes suboptimal code as demonstrated in
>> https://gcc.gnu.org/bugzilla/show_b
Hi all,
This patch adds support for __builtin_expect in switch statements at
tree level (RTL part would be reviewed/commited separately). It's an
update of https://gcc.gnu.org/ml/gcc-patches/2017-07/msg01016.html ,
rebased and retested.
Ok for trunk?
-Y
pr59521-2.patch
Description: Binary dat
Ping. Updated patch posted here:
https://gcc.gnu.org/ml/gcc-patches/2017-07/msg00723.html
V3 patches of stack-clash mitigation should land tomorrow after another
round of testing completes. Key changes this iteration:
1. For constant sized dynamic allocations we'll allocate/probe up to 4
STACK_CLASH_PROTECTION_PROBE_INTERVAL regions inline and unrolled.
2. For larger const
77 matches
Mail list logo