On 10/24/18, Uros Bizjak wrote:
> On Wed, Oct 24, 2018 at 1:51 AM H.J. Lu wrote:
>>
>> Hi Uros,
>>
>> Can you take a look at this?
>
> Many pmov(s|z)x instructions with memory operands are modelled in a wrong
> way.
>
> For example:
>
> (define_insn "sse4_1_v8qiv8hi2"
> [(set (match_operand:V8H
ning on x86_64-unknown-linux-gnu.
Richard.
2018-10-25 Richard Biener
* tree-vectorizer.h (get_earlier_stmt): Remove.
(get_later_stmt): Pick up UID from the original non-pattern stmt.
* gfortran.dg/20181025-1.f: New testcase.
diff --git a/gcc/testsuite/gfortran.dg/2
On Thu, Oct 25, 2018 at 9:10 AM H.J. Lu wrote:
>
> On 10/24/18, Uros Bizjak wrote:
> > On Wed, Oct 24, 2018 at 1:51 AM H.J. Lu wrote:
> >>
> >> Hi Uros,
> >>
> >> Can you take a look at this?
> >
> > Many pmov(s|z)x instructions with memory operands are modelled in a wrong
> > way.
> >
> > For e
Thomas Preudhomme writes:
> And now with the patch. My apologies for the omission.
>
> Best regards,
>
> Thomas
> On Tue, 23 Oct 2018 at 12:08, Thomas Preudhomme
> wrote:
>>
>> Hi,
>>
>> Currently, dg-cmp-results will not print anything for a test that was
>> not run before, even if it is a FAIL
Hi!
In the C/C++ FE, we are using:
if (nmodifiers++ == 0
&& cp_lexer_next_token_is (parser->lexer, CPP_COMMA))
but it is in a loop guarded on that the next token is a CPP_NAME.
The point of the check is to parse the comma at most once, because
the syntax allows 0, 1 or 2 schedule m
Hi Jeff,
> On 10/24/18 7:06 AM, Rainer Orth wrote:
>> Between 20181022 (r265393) and 20181023 (r265430), gcc.dg/pr78973-2.c
>> began to XPASS on a large number of targets:
>>
>> +XPASS: gcc.dg/pr78973-2.c ilp32 (test for warnings, line 16)
>>
>> The following patch fixes this by removing the xfa
This new implementation of fixunstfdi and fixunstfti
gives 16X performance improvement.
The design is focused on:
- Making sure the end result was a pure leaf function that
only needed builtins or inline functions.
- Assumed power8 direct register transfer and accessed the IBM
long double as in
On 10/23/2018 10:07 PM, Segher Boessenkool wrote:
On Tue, Oct 23, 2018 at 09:01:26PM +0530, Rajalakshmi Srinivasaraghavan wrote:
This new implementation of fixunstfdi and fixunstfti
gives 16X performance improvement.
:-)
* libgcc/config/rs6000/t-ppc64-fp (LIB2ADD): Add
$(s
On 10/24/2018 03:26 PM, Sam Tebbs wrote:
> On 10/05/2018 01:11 PM, Sam Tebbs wrote:
>
>> Hi all,
>>
>> I recently found what seems to be an error in the options documentation
>> (gcc/doc/options.texi) where a list describing how _var_ is set (referring to
>> the Var attribute) is written beneath t
On 24/09/2018 22:49, Ilya Leoshkevich wrote:
> Bootstrap and regtest running on s390x-redhat-linux.
>
> "r264537: Change EQ_ATTR_ALT to support up to 64 alternatives" changed
> the format of EQ_ATTR_ALT from ii to ww. This broke the bootstrap on
> 32-bit systems, because the formula for rtx_code_
libsanitizer/ChangeLog:
2018-10-24 Martin Liska
* LOCAL_PATCHES: Update patch list.
* asan/asan_globals.cc (CheckODRViolationViaIndicator): Apply
patches from GCC's trunk.
(CheckODRViolationViaPoisoning): Likewise.
(RegisterGlobal): Likewise.
*
libsanitizer/ChangeLog:
2018-10-24 Martin Liska
* HOWTO_MERGE: Enhance documentation.
* merge.sh: Add support for git as well.
---
libsanitizer/HOWTO_MERGE | 9 ++---
libsanitizer/merge.sh| 6 --
2 files changed, 10 insertions(+), 5 deletions(-)
diff --git a/libs
libsanitizer/ChangeLog:
2018-10-24 Martin Liska
* config.h.in: Regenerate.
* configure: Likewise.
* sanitizer_common/Makefile.am: Include new files, remove old
files.
* sanitizer_common/Makefile.in: Regenerate.
* ubsan/Makefile.am: Include new f
Hi.
I've just finished my first merge from libsanitizer mainline. Overall it
looks fine, apparently ABI hasn't changed and so that SONAME bump is not
needed.
I tested ubsan and asan bootstrap on x86_64-linux-gnu and run regression
tests and bootstraped on aarch64-linux-gnu, ppc64le-linux-gnu and
gcc/testsuite/ChangeLog:
2018-10-24 Martin Liska
* c-c++-common/ubsan/pr63839.c: Update to new sanitizer message.
* c-c++-common/ubsan/unreachable-1.c (main): Likewise.
* c-c++-common/ubsan/unreachable-2.c: Likewise.
* c-c++-common/ubsan/unreachable-4.c (main):
libsanitizer/ChangeLog:
2018-10-24 Martin Liska
* ubsan/ubsan_platform.h: Add ifndef as we define it with
-DCAN_SANITIZE_UB CFLAGS.
---
libsanitizer/ubsan/ubsan_platform.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/libsanitizer/ubsan/ubsan_platform.h b/libsanitizer
gcc/ChangeLog:
2018-10-25 Martin Liska
* config/powerpcspe/powerpcspe.c (rs6000_asan_shadow_offset):
Aligh with value changed in libsanitizer/asan/asan_mapping.h.
* config/rs6000/rs6000.c (rs6000_asan_shadow_offset):
Likewise.
---
gcc/config/powerpcspe/powerpc
Done. Committed patch and ChangeLog below
*** contrib/ChangeLog ***
2018-10-25 Thomas Preud'homme
* dg-cmp-results.sh: Print NA-FAIL and NA->UNRESOLVED changes at
default verbosity.
diff --git a/contrib/dg-cmp-results.sh b/contrib/dg-cmp-results.sh
index 821d557a168..eb976f6
On Thu, Oct 25, 2018 at 12:15:46PM +0200, marxin wrote:
> I've just finished my first merge from libsanitizer mainline. Overall it
> looks fine, apparently ABI hasn't changed and so that SONAME bump is not
> needed.
Given the 6/7 patch, I think you need to bump libasan soname (it would be
weird to
On 10/25/18 12:49 PM, Jakub Jelinek wrote:
> On Thu, Oct 25, 2018 at 12:15:46PM +0200, marxin wrote:
>> I've just finished my first merge from libsanitizer mainline. Overall it
>> looks fine, apparently ABI hasn't changed and so that SONAME bump is not
>> needed.
>
> Given the 6/7 patch, I think y
On 10/24/18 7:48 PM, Martin Sebor wrote:
> On 10/24/2018 03:52 AM, Martin Liška wrote:
>> On 10/23/18 6:31 PM, Martin Sebor wrote:
>>> On 10/22/2018 07:05 AM, Martin Liška wrote:
On 10/16/18 6:57 PM, James Greenhalgh wrote:
> On Mon, Oct 08, 2018 at 05:34:52AM -0500, Martin Liška wrote:
>>
>From ce9a9779ef89f5a1bdfd5ca6a9b9a354d93ceec9 Mon Sep 17 00:00:00 2001
From: marxin
Date: Thu, 25 Oct 2018 12:57:45 +0200
Subject: [PATCH] Bump libasan version due to adjustement in shadow memory
offset for ppc64 target.
libsanitizer/ChangeLog:
2018-10-25 Martin Liska
* asan/libtool-vers
On 24/10/18 21:30 +0200, François Dumont wrote:
Some tests dg-prune-output regex need to be adapted to pass when
versioned namespace is activated.
I preferred to add the version namespace in the regex rather than
removing namespace qualification. Let me know if you would prefer the
other appr
if-conversion can leave us with quite a mess, esp. redundant loads.
This confuses vectorizer data-ref analysis enough to be worth
fixing. So the following patch runs RPO VN on the loop body.
PR87746 contains some before/after dumps.
Now we only need to teach it some simple DSE...
Bootstrapped
On Tue, 23 Oct 2018, Jonathan Wakely wrote:
+ template
+inline void
+__relocate_a(_Tp* __dest, _Up* __orig, _Allocator& __alloc)
I find it a little surprising that this overload for single objects
using the memmove argument ordering (dest, source) but the range overload
below uses the
Hi All,
Due to the changes in PR81878 builds of GCC8 and trunk are impossible
with Ada enabled[1][2].
The reason the patch breaks the bootstrap is due to how gnatlink receives it's
arguments.
gnatlink is usually invoked as
$(GNATLINK) -v gnatcmd -o ../../gnat$(exeext) \
--GCC=
On 25/10/18 14:30 +0200, Marc Glisse wrote:
On Tue, 23 Oct 2018, Jonathan Wakely wrote:
+ template
+inline void
+__relocate_a(_Tp* __dest, _Up* __orig, _Allocator& __alloc)
I find it a little surprising that this overload for single objects
using the memmove argument ordering (dest,
The following fixes the 403.gcc build I broke with r265457.
Bootstrap and regtest running on x86_64-unknown-linux-gnu.
(vect testsuite and SPEC 2k6 is happy).
Richard.
>From 1ee436877c5d0dcb3dad6019c2e8d4570ded8e13 Mon Sep 17 00:00:00 2001
From: Richard Guenther
Date: Thu, 25 Oct 2018 14:50:
On Tue, 2018-10-23 at 19:21 +0200, Iain Buclaw wrote:
> On Tue, 23 Oct 2018 at 15:48, Richard Sandiford
> wrote:
> >
> > Iain Buclaw writes:
> > > I'm just going to post the diff since the original here, just to
> > > show
> > > what's been done since review comments.
> > >
> > > I think I've c
Bootstrapped and regtested on s390x-redhat-linux.
r264556 and r264537 changed the format of EQ_ATTR_ALT RTXs to "ww",
which also required adjusting rtx_code_size initializer. In order to
simplify things, the list of rtx_codes known to use HOST_WIDE_INTs was
replaced by the format string check. H
On Thu, 25 Oct 2018, Ilya Leoshkevich wrote:
> Bootstrapped and regtested on s390x-redhat-linux.
>
> r264556 and r264537 changed the format of EQ_ATTR_ALT RTXs to "ww",
> which also required adjusting rtx_code_size initializer. In order to
> simplify things, the list of rtx_codes known to use HO
On Wed, Oct 24, 2018 at 3:05 PM Richard Sandiford
wrote:
>
> This patch adds a pass that versions loops with variable index strides
> for the case in which the stride is 1. E.g.:
>
> for (int i = 0; i < n; ++i)
> x[i * stride] = ...;
>
> becomes:
>
> if (stepx == 1)
> for (int
On 25/10/2018 14:29, Ilya Leoshkevich wrote:
> Bootstrapped and regtested on s390x-redhat-linux.
>
> r264556 and r264537 changed the format of EQ_ATTR_ALT RTXs to "ww",
> which also required adjusting rtx_code_size initializer. In order to
> simplify things, the list of rtx_codes known to use HOS
Bootstrapped and regtested on s390x-redhat-linux.
Consider the following RTL:
(insn (set (mem/f/c:DI (reg/f:DI 60))
(const:DI (plus:DI (symbol_ref:DI ("*.LANCHOR0"))
(const_int 8)
generated by cse2 pass. It is matched to movdi_64, resulting in
the fo
This patch changes the sequence that gcc generates for inline expansion of
strcmp/strncmp using scalar (gpr) instructions. The new sequence is one
instruction shorter and uses cmpb/cmpb/orc./bne which I also have been
told that valgrind should be able to understand as the defined/undefined
info can
On Thu, 25 Oct 2018 at 15:06, David Malcolm wrote:
>
> On Tue, 2018-10-23 at 19:21 +0200, Iain Buclaw wrote:
> > On Tue, 23 Oct 2018 at 15:48, Richard Sandiford
> > wrote:
> > >
> > > Iain Buclaw writes:
> > > > I'm just going to post the diff since the original here, just to
> > > > show
> > >
On 25.10.18 16:00, Ilya Leoshkevich wrote:
> Bootstrapped and regtested on s390x-redhat-linux.
>
> Consider the following RTL:
>
> (insn (set (mem/f/c:DI (reg/f:DI 60))
>(const:DI (plus:DI (symbol_ref:DI ("*.LANCHOR0"))
> (const_int 8)
>
> generated
Hi,
this patch cleans up ipa-devirt and removes code using main_odr_variant.
It is a way to go from variant into typedef (not main variant) which I
originally used for odr hashing (so typedefs had different entries), but since
we switched odr hashing to use mangled names, we always hash main varian
Committed.
Richard.
2018-10-25 Richard Biener
* tree-vect-data-refs.c (vect_analyze_data_ref_accesses):
Initialize ng to silence error with release checking bootstrap.
Index: gcc/tree-vect-data-refs.c
===
--- g
Richard Biener writes:
> On Wed, Oct 24, 2018 at 3:05 PM Richard Sandiford
> wrote:
>>
>> This patch adds a pass that versions loops with variable index strides
>> for the case in which the stride is 1. E.g.:
>>
>> for (int i = 0; i < n; ++i)
>> x[i * stride] = ...;
>>
>> becomes:
>>
>
Good thing I did, found a missing earlyclobber in the process.
Rerunning all tests again.
Best regards,
Thomas
On Wed, 24 Oct 2018 at 10:13, Thomas Preudhomme
wrote:
>
> Please hold on for the reviews, found a small improvement that could
> be done. Am testing it right now, should have something
On Wed, 2018-10-24 at 14:05 +0100, Richard Sandiford wrote:
> This patch adds a pass that versions loops with variable index
> strides
> for the case in which the stride is 1. E.g.:
>
> for (int i = 0; i < n; ++i)
> x[i * stride] = ...;
>
> becomes:
>
> if (stepx == 1)
> for
Hi.
It's obvious fix that was mentioned in the patch review but
I forgot to include it.
Survives regression tests on ppc64le-linux-gnu.
Martin
gcc/testsuite/ChangeLog:
2018-10-25 Martin Liska
PR testsuite/87739
* gcc.dg/tree-ssa/pr84436-5.c (foo): Use signed char.
---
gcc
Hi.
I'm partially reverting change that's not needed.
Survives regression tests on ppc64le-linux-gnu.
Martin
gcc/testsuite/ChangeLog:
2018-10-25 Martin Liska
PR other/87735
* gcc.dg/tree-prof/time-profiler-1.c: Revert.
* gcc.dg/tree-prof/time-profiler-2.c: Likewise.
The move constructor for the SSO string uses assign(const basic_string&)
when either:
(1) the source string is "local" and so the contents of the small string
buffer need to be copied, or
(2) the allocator does not propagate and is_always_equal is false.
Case (1) is suboptimal, because the assi
OK, with s/functiom/function/.
--
Joseph S. Myers
jos...@codesourcery.com
On Thu, 25 Oct 2018, Rajalakshmi Srinivasaraghavan wrote:
> + if (__builtin_unpack_longdouble (a, 0) < TWO53)
> +{
> + /* In this case the integer portion is completely contained
> + within the high double. So use the hardware convert to
> + integer doubleword, and then
On 23/10/18 14:10 +0100, Jonathan Wakely wrote:
Using a delegating constructor to implement these constructors means
that they instantiate the destructor, which requires the element_type to
be complete. In C++11 and C++14 they were specified to be delegating,
but that was changed as part of LWG 2
On Wed, Oct 24, 2018 at 09:25:25AM -0500, Bill Schmidt wrote:
> This patch addresses Segher's findings, and also replaces usages of the
> deprecated function vec_vcmpgtfp with the equivalent vec_cmpgt.
> Bootstrapped and tested on powerpc64le-linux-gnu with no regressions.
> Also tested in a Clang
Hi!
On Wed, Oct 24, 2018 at 02:30:10PM -0500, Bill Schmidt wrote:
> Due to some unfortunate history, not all compilers currently have correct
> result
> types produced for comparison operators on vector types. For compatibility
> purposes, this patch replaces those with vec_cmp* built-ins. It a
On 10/25/18 12:08 PM, Segher Boessenkool wrote:
> On Wed, Oct 24, 2018 at 09:25:25AM -0500, Bill Schmidt wrote:
>> This patch addresses Segher's findings, and also replaces usages of the
>> deprecated function vec_vcmpgtfp with the equivalent vec_cmpgt.
>> Bootstrapped and tested on powerpc64le-lin
On 10/11/18 8:07 PM, David Malcolm wrote:
On Thu, 2018-10-11 at 10:31 -0400, Jason Merrill wrote:
On Thu, Oct 11, 2018 at 10:28 AM Jason Merrill
wrote:
On Wed, Oct 10, 2018 at 5:01 PM David Malcolm
wrote:
On Tue, 2018-10-09 at 18:38 -0400, Jason Merrill wrote:
On Tue, Oct 9, 2018 at 1:19 P
On 10/8/18 6:24 PM, David Malcolm wrote:
On Mon, 2018-10-08 at 10:37 -0400, Jason Merrill wrote:
On Thu, Oct 4, 2018 at 10:12 AM David Malcolm
wrote:
-Wformat in the C++ FE doesn't work as well as it could:
(a) it doesn't report precise locations within the string literal,
and
(b) it doesn't
While testing the optimize and target attributes and comparing
the results to what the manual describes I noticed that some
syntactic forms aren't fully documented for both attributes.
Specifically, the optimize attribute doesn't mention that each
string argument can be a comma-separated list of
For compatibility implementation of x86 vector intrinsic, _mm_extract_pi16,
adjust shift value for big-endian mode.
Bootstrapped and tested on Linux POWER8 LE, POWER8 BE (64 & 32), and POWER7.
OK for trunk?
gcc/ChangeLog:
2018-10-25 Paul A. Clarke
* config/rs6000/xmmintrin.h: Fix _m
Hi!
In OpenMP 5.0 missing schedule modifier implies nonmonotonic unless it is
static or ordered clause is present (that has been committed already
earlier), but also the nonmonotonic modifier is allowed on static, runtime
and auto schedules and run-sched-var ICV now includes a monotonic modifier
b
I ran into a failures due to no weak symbol support in my target. This patch
cures that. Is it right? The test case uses "weakref" so I' not 100% sure
that checking for "weak" support is correct. If not, I can put in a skip-if
check for the target (pdp11) instead.
paul
ChangeLog:
This is a follow-on to earlier commits for adding compatibility
implementations of x86 intrinsics for PPC64LE. This is the first of
two patches for SSSE3. This patch adds the 32 x86 intrinsics from
("SSSE3"). (Patch 2/2 adds tests for these intrinsics,
and briefly describes the tests performed.
Various clean-ups for 32bit support.
Implement various corrections in the compatibility implementations of the
x86 vector intrinsics found after enabling 32bit mode for the associated
test cases. (Actual enablement coming in a subsequent patch.)
Bootstrapped and tested on Linux POWER8 LE, POWER8
This is part 2/2 for contributing PPC64LE support for X86 SSE3
instrisics. This patch includes testsuite/gcc.target tests for the
intrinsics defined in pmmintrin.h, copied from gcc.target/i386.
Bootstrapped and tested on Linux POWER8 LE, POWER8 BE (64 & 32), and POWER7.
OK for trunk?
[gcc/testsu
On 10/12/18 9:32 AM, Andrew Sutton wrote:
BTW, I would discourage you from messing much with the concepts code
at this point, as a major overhaul should be coming soon.
Major overhaul:
https://github.com/asutton/gcc (branch is concepts; we're about 2 weeks
back from trunk).
Awesome!
Unfor
On 9/3/18 7:50 PM, Julian Brown wrote:
On Fri, 31 Aug 2018 16:20:08 +0200
Jakub Jelinek wrote:
On Fri, Aug 31, 2018 at 10:04:07AM -0400, Nathan Sidwell wrote:
On 08/30/2018 04:27 PM, Jason Merrill wrote:
On Thu, Aug 30, 2018 at 3:31 PM, Julian Brown
wrote:
"Apart from parsing, it's nec
Hi Carl,
On Wed, Oct 24, 2018 at 12:44:23PM -0700, Carl Love wrote:
> The scalar_cmp_exp_eq, scalar_cmp_lt, scalar_cmp_gt,
> scalar_cmp_unordered are missing support for the _ieee128 arguments.
> This patch adds the missing support and a test file for the builtins
> for both _ieee128 and double a
The call in cp_parser_sizeof_operand is also redundant.
Tested x86_64-pc-linux-gnu, applying to trunk.
---
gcc/cp/parser.c | 15 +--
gcc/cp/ChangeLog | 5 +
2 files changed, 6 insertions(+), 14 deletions(-)
diff --git a/gcc/cp/parser.c b/gcc/cp/parser.c
index 2533871fb28..ebe3
Whee, this was fun to debug...
The lr78 port is crippled enough that it has to have its own specialized
register allocation phase. Essentially all insns have two
implementations, one is virtual and used up through the target specific
register allocation pass and a physical implementation used th
On Wed, Oct 24, 2018 at 07:55:44PM -0500, Bill Schmidt wrote:
> The intrinsic compatibility headers make use of some deprecated functions for
> vector shifts, which are not available in some compilers. For compatibility
> reasons, this patch, replaces those with intrinsics guaranteed to be portabl
Hi,
A number of the test cases for the intrinsic compatibility headers are set up
to dump more information when a test case fails and the DEBUG macro has been
set. Unfortunately, many of them also then pass the test case since they no
longer call abort(). This patch fixes that oversight (or inte
On 10/25/18 2:15 AM, Rainer Orth wrote:
> Hi Jeff,
>
>> On 10/24/18 7:06 AM, Rainer Orth wrote:
>>> Between 20181022 (r265393) and 20181023 (r265430), gcc.dg/pr78973-2.c
>>> began to XPASS on a large number of targets:
>>>
>>> +XPASS: gcc.dg/pr78973-2.c ilp32 (test for warnings, line 16)
>>>
>>> T
When an SSO string is contained in the small string buffer or has an
unequal allocator a move operation performs a copy, leaving the original
data in the moved-from string. Setting the length of the moved-from
string to zero is not required, so we can avoid two writes (to the
length member and to
On Fri, 26 Oct 2018 at 00:54, Jonathan Wakely wrote:
>
> When an SSO string is contained in the small string buffer or has an
> unequal allocator a move operation performs a copy, leaving the original
> data in the moved-from string. Setting the length of the moved-from
> string to zero is not req
On Thu, Oct 25, 2018 at 01:41:15PM -0500, Paul Clarke wrote:
> For compatibility implementation of x86 vector intrinsic, _mm_extract_pi16,
> adjust shift value for big-endian mode.
>
> Bootstrapped and tested on Linux POWER8 LE, POWER8 BE (64 & 32), and POWER7.
Does it fix existing testcases?
Ok
On Thu, Oct 25, 2018 at 05:07:03PM -0500, Segher Boessenkool wrote:
> On Thu, Oct 25, 2018 at 01:41:15PM -0500, Paul Clarke wrote:
> > For compatibility implementation of x86 vector intrinsic, _mm_extract_pi16,
> > adjust shift value for big-endian mode.
> >
> > Bootstrapped and tested on Linux PO
This patch by Than McIntosh improves the mangling of package paths in
the Go frontend.
The current implementation of Gogo::pkgpath_for_symbol was written in
a way that allowed two distinct package paths to map to the same
symbol, which could cause collisions at link- time or compile-time.
This pa
On Thu, Oct 25, 2018 at 02:07:33PM -0500, Paul Clarke wrote:
> Various clean-ups for 32bit support.
>
> Implement various corrections in the compatibility implementations of the
> x86 vector intrinsics found after enabling 32bit mode for the associated
> test cases. (Actual enablement coming in a
On Thu, Oct 25, 2018 at 02:07:45PM -0500, Paul Clarke wrote:
> Enable 32bit support for tests of x86-compatibile intrinsics
>
> Bootstrapped and tested on Linux POWER8 LE, POWER8 BE (64 & 32), and POWER7.
>
> OK for trunk?
This is fine when the previous patch is in as well. Thanks!
> 2018-10-2
Hi,
PR87528 showed a case where libgcc generated popcount is causing
regression for Skylake.
We also have PR86677 where kernel build is failing because the kernel
does not use the libgcc (when backend is not defining popcount
pattern). While I agree that the kernel should implement its own
functi
On Thu, 25 Oct 2018, Jonathan Wakely wrote:
When an SSO string is contained in the small string buffer or has an
unequal allocator a move operation performs a copy, leaving the original
data in the moved-from string. Setting the length of the moved-from
string to zero is not required, so we can
On Fri, 26 Oct 2018, Ville Voutilainen wrote:
I would rather not introduce a behavioral difference between us and
libc++.
Why not? There are already several, and it helps find bugs. Maybe you
could convince libc++ to change as well if you want to keep the behavior
the same?
It does slight
Hi,
This patch adds some of the missing patterns in match.pd for ABSU_EXPR
and it is a revised version based on the review at
https://gcc.gnu.org/ml/gcc-patches/2018-07/msg00046.html
Bootstrapped and regression tested on x86_64-linux-gnu with no new
regressions. Is this OK trunk?
Thanks,
Kugan
g
I've taken the advice from a discussion on IRC and re-wrote the patch
with more uniform function names and using overloading.
I think this function accomplished the following goals:
- remove clone numbering where it's not needed:
final.c:final_scan_insn_1 and
symtab.c:simd_symtab_node::noni
On 26/10/18 00:42 +0200, Marc Glisse wrote:
On Fri, 26 Oct 2018, Ville Voutilainen wrote:
I would rather not introduce a behavioral difference between us and
libc++.
Why not? There are already several, and it helps find bugs. Maybe you
could convince libc++ to change as well if you want to k
On 26/10/18 00:17 +0100, Jonathan Wakely wrote:
On 26/10/18 00:42 +0200, Marc Glisse wrote:
On Fri, 26 Oct 2018, Ville Voutilainen wrote:
I would rather not introduce a behavioral difference between us and
libc++.
Why not? There are already several, and it helps find bugs. Maybe
you could c
The last patch to libgo added a use of wc to the gotest script.
However, wc is not in the GNU approved list of Makefile utilities
(https://www.gnu.org/prep/standards/html_node/Utilities-in-Makefiles.html#Utilities-in-Makefiles).
So replace it by sed. Bootstrapped and ran Go testsuite on
x86_64-pc-
On 10/25/18 4:44 PM, Kugan Vivekanandarajah wrote:
> Hi,
>
> This patch adds some of the missing patterns in match.pd for ABSU_EXPR
> and it is a revised version based on the review at
> https://gcc.gnu.org/ml/gcc-patches/2018-07/msg00046.html
> Bootstrapped and regression tested on x86_64-linux-g
On 10/25/18 4:33 PM, Kugan Vivekanandarajah wrote:
> Hi,
>
> PR87528 showed a case where libgcc generated popcount is causing
> regression for Skylake.
> We also have PR86677 where kernel build is failing because the kernel
> does not use the libgcc (when backend is not defining popcount
> pattern
This patch series adds support for the new attach / detach clauses
introduced in OpenACC 2.6 to the C and C++ front ends. Julian is
working patches for the Fortran front end along with the runtime.
As their names somewhat imply, attach and detach are new data clauses
that are used to support manua
This patch adds support for attach and detach in the C front end. Both
attach and detach are a little different from the other data clauses
because they require variables that are pointers. Consequently, this
patch teaches handle_omp_array_sections_1 to bail out of it detects a
subarray argument fo
This patch adds support for attach and detach in the C front end. All
of the comments for the C FE patch apply here. Arguably, there's not a
significant difference between cp_oacc_check_attachments and its C
counterpart. However, I decided to keep them separate in case the
standard gets updated in
This patch introduces a couple of compiler tests for the OpenACC
attach and detach clauses.
Is this OK for trunk after the other patches get approved?
Thanks,
Cesar
2018-XX-YY Cesar Philippidis
gcc/testsuite/
* c-c++-common/goacc/mdc-1.c: New test.
* c-c++-common/goacc/mdc-2.c: New test.
Hi,
This is a rebased version of patch that adds a pattern to neon.md for
implementing division with multiplication by reciprocal using
vrecpe/vrecps with -funsafe-math-optimizations excluding -Os.
The newly added test-cases are not vectorized on armeb target with
-O2. I posted the analysis for tha
Delayed slot filling moves insns without any regard to variable
location notes, causing the location information in them to become
incorrect.
Fixing that appears to be quite difficult, but filling delay slots is
hardly an essential optimization to run at -Og, so if the user wants
to privilege debu
Many x86 pmovzx/pmovsx instructions with memory operands are modeled in
a wrong way. For example:
(define_insn "sse4_1_v8qiv8hi2"
[(set (match_operand:V8HI 0 "register_operand" "=Yr,*x,v")
(any_extend:V8HI
(vec_select:V8QI
(match_operand:V16QI 1 "nonimmediate_operand" "Yrm,*xm
* read-rtl.c (apply_subst_iterator): Handle define_insn_and_split.
---
gcc/read-rtl.c | 6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/gcc/read-rtl.c b/gcc/read-rtl.c
index d698dd4af4d..5957c29671a 100644
--- a/gcc/read-rtl.c
+++ b/gcc/read-rtl.c
@@ -275,9 +275,11
Replace nonimmediate_operand with register_operand in pmovzx and pmovsx
patterns. Add pmovzx/pmovsx patterns with memory operands for correct
memory operand size.
gcc/
PR target/87317
* config/i386/predicates.md (subreg_memory_operand): New.
* config/i386/sse.md
(
On Fri, 26 Oct 2018, Jonathan Wakely wrote:
For the libc++ string zeroing the length of a small string happens to
be faster.
Ah, yes, of course.
Is it? In debug mode, I'd be tempted to leave the string as "moved" (size
5, short string so there is no allocation).
That's not a bad idea.
Al
On Fri, Oct 26, 2018 at 8:07 AM H.J. Lu wrote:
>
> Many x86 pmovzx/pmovsx instructions with memory operands are modeled in
> a wrong way. For example:
>
> (define_insn "sse4_1_v8qiv8hi2"
> [(set (match_operand:V8HI 0 "register_operand" "=Yr,*x,v")
> (any_extend:V8HI
> (vec_select:V8QI
On Fri, Oct 26, 2018 at 8:07 AM H.J. Lu wrote:
>
> * read-rtl.c (apply_subst_iterator): Handle define_insn_and_split.
> ---
> gcc/read-rtl.c | 6 --
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/gcc/read-rtl.c b/gcc/read-rtl.c
> index d698dd4af4d..5957c29671a 1006
On 10/25/18, Uros Bizjak wrote:
> On Fri, Oct 26, 2018 at 8:07 AM H.J. Lu wrote:
>>
>> * read-rtl.c (apply_subst_iterator): Handle
>> define_insn_and_split.
>> ---
>> gcc/read-rtl.c | 6 --
>> 1 file changed, 4 insertions(+), 2 deletions(-)
>>
>> diff --git a/gcc/read-rtl.c b/gcc/rea
On Fri, Oct 26, 2018 at 8:48 AM H.J. Lu wrote:
>
> On 10/25/18, Uros Bizjak wrote:
> > On Fri, Oct 26, 2018 at 8:07 AM H.J. Lu wrote:
> >>
> >> * read-rtl.c (apply_subst_iterator): Handle
> >> define_insn_and_split.
> >> ---
> >> gcc/read-rtl.c | 6 --
> >> 1 file changed, 4 inserti
99 matches
Mail list logo