On Mon, Nov 11, 2019 at 11:38 PM Martin Sebor wrote:
>
> The conditional in default_ref_may_alias_errno has the function
> return true even for local variables, implying that locals must
> be assumed not to have been changed across calls to errno-setting
> functions like malloc. This leads to bot
On Tue, Nov 12, 2019 at 5:54 AM Jason Merrill wrote:
>
> I'm not sure what semantics we might eventually want for vector <=>, but let's
> give a sorry for now.
Given our vector extension does elementwise comparisons I don't think we can
implement <=> in a reasonable manner. What we could eventua
On Tue, Nov 12, 2019 at 9:15 AM Richard Biener
wrote:
>
> On Tue, Nov 12, 2019 at 6:10 AM Jeff Law wrote:
> >
> > On 11/6/19 3:34 PM, Martin Sebor wrote:
> > > On 11/6/19 2:06 PM, Martin Sebor wrote:
> > >> On 11/6/19 1:39 PM, Jeff Law wrote:
> > >>> On 11/6/19 1:27 PM, Martin Sebor wrote:
> > >>
On Tue, Nov 12, 2019 at 6:10 AM Jeff Law wrote:
>
> On 11/6/19 3:34 PM, Martin Sebor wrote:
> > On 11/6/19 2:06 PM, Martin Sebor wrote:
> >> On 11/6/19 1:39 PM, Jeff Law wrote:
> >>> On 11/6/19 1:27 PM, Martin Sebor wrote:
> On 11/6/19 11:55 AM, Jeff Law wrote:
> > On 11/6/19 11:00 AM, Ma
On Tue, Nov 12, 2019 at 8:36 AM Hongtao Liu wrote:
>
> Hi:
> This patch is about to set X86_TUNE_AVX128_OPTIMAL as default for
> all AVX target because we found there's still performance gap between
> 128-bit auto-vectorization and 256-bit auto-vectorization even with
> epilog vectorized.
> Th
On Tue, Nov 12, 2019 at 9:19 AM Richard Biener
wrote:
>
> On Tue, Nov 12, 2019 at 8:36 AM Hongtao Liu wrote:
> >
> > Hi:
> > This patch is about to set X86_TUNE_AVX128_OPTIMAL as default for
> > all AVX target because we found there's still performance gap between
> > 128-bit auto-vectorization
On Tue, Nov 12, 2019 at 4:19 PM Richard Biener
wrote:
>
> On Tue, Nov 12, 2019 at 8:36 AM Hongtao Liu wrote:
> >
> > Hi:
> > This patch is about to set X86_TUNE_AVX128_OPTIMAL as default for
> > all AVX target because we found there's still performance gap between
> > 128-bit auto-vectorization
On Tue, Nov 12, 2019 at 4:29 PM Richard Biener
wrote:
>
> On Tue, Nov 12, 2019 at 9:19 AM Richard Biener
> wrote:
> >
> > On Tue, Nov 12, 2019 at 8:36 AM Hongtao Liu wrote:
> > >
> > > Hi:
> > > This patch is about to set X86_TUNE_AVX128_OPTIMAL as default for
> > > all AVX target because we f
On Mon, Nov 11, 2019 at 3:56 PM Martin Liška wrote:
>
> On 11/11/19 3:19 PM, Richard Biener wrote:
> > -static unsigned int limit_low[debug_counter_number_of_counters];
> > +static auto_vec
> > *limits[debug_counter_number_of_counters] = {NULL};
>
> Hm, apparently it's not working. I see a stack c
On Tue, Nov 12, 2019 at 8:50 AM Martin Liška wrote:
>
> On 11/11/19 3:20 PM, Richard Biener wrote:
> > On Mon, Nov 11, 2019 at 9:23 AM Martin Liška wrote:
> >>
> >> Hi.
> >>
> >> The small patch is about sorting of debug counter
> >> values.
> >>
> >> Ready to be installed?
> >
> > OK
> >
> >> Th
On Tue, Nov 12, 2019 at 9:29 AM Hongtao Liu wrote:
>
> On Tue, Nov 12, 2019 at 4:19 PM Richard Biener
> wrote:
> >
> > On Tue, Nov 12, 2019 at 8:36 AM Hongtao Liu wrote:
> > >
> > > Hi:
> > > This patch is about to set X86_TUNE_AVX128_OPTIMAL as default for
> > > all AVX target because we foun
On 11/12/19 2:04 AM, Vipul Parekh wrote:
a look at the problem I run into with gfortran with CFI_address function?
I filled a PR, https://gcc.gnu.org/PR92470 , and have also attached a
lightly tested draft patch.
Thanks for the report! Are there any other known issues in this area?
Cheers,
Hi,
a few days ago I noticed that we weren't doing the right thing
location-wise for the first test of g++.dg/warn/Waddress-1.C: it seems
clear that the ultimate reason is that we didn't pass an accurate
location to build_binary_op called from cp_truthvalue_conversion. When I
fixed that, I no
On 11/12/19 9:35 AM, Richard Biener wrote:
On Mon, Nov 11, 2019 at 3:56 PM Martin Liška wrote:
On 11/11/19 3:19 PM, Richard Biener wrote:
-static unsigned int limit_low[debug_counter_number_of_counters];
+static auto_vec
*limits[debug_counter_number_of_counters] = {NULL};
Hm, apparently it'
On 11/12/19 9:39 AM, Richard Biener wrote:
On Tue, Nov 12, 2019 at 8:50 AM Martin Liška wrote:
On 11/11/19 3:20 PM, Richard Biener wrote:
On Mon, Nov 11, 2019 at 9:23 AM Martin Liška wrote:
Hi.
The small patch is about sorting of debug counter
values.
Ready to be installed?
OK
Thanks
On Tue, Nov 12, 2019 at 09:10:58AM +0100, Richard Biener wrote:
> On Tue, Nov 12, 2019 at 5:54 AM Jason Merrill wrote:
> >
> > I'm not sure what semantics we might eventually want for vector <=>, but
> > let's
> > give a sorry for now.
>
> Given our vector extension does elementwise comparisons
Hi,
the following patch has been reviewed and committed.
Frederik
--- 8< --
The `serial' construct (cf. section 2.5.3 of the OpenACC 2.6 standard)
is equivalent to a `parallel' construct with clauses `num_gangs(1)
nu
ping^2 ?
On Sun, 3 Nov 2019 at 16:07, Christophe Lyon wrote:
>
> Ping?
>
> https://gcc.gnu.org/ml/gcc-patches/2019-10/msg01356.html
>
> On Fri, 18 Oct 2019 at 15:18, Christophe Lyon
> wrote:
> >
> > Hi,
> >
> > This patch extends support for -mpure-code to all thumb-1 processors,
> > by removing
In scheduling passes, notes are removed with `remove_notes` before the
scheduling is done, and added back in with `reemit_notes` once the
scheduling has been decided.
This process leaves the notes in the RTL chain with different insn uid's
than were there before. Having different UID's (larger th
On Mon, Nov 11, 2019 at 3:04 PM Martin Liška wrote:
>
> There's one more refactoring patch that is about more
> usage of SET_OPTION_IF_UNSET for parameters.
>
> Patch can bootstrap on x86_64-linux-gnu and survives regression tests.
>
> Ready to be installed?
OK.
Richard.
> Thanks,
> Martin
On Sat, Nov 9, 2019 at 3:26 PM Giuliano Belinassi
wrote:
>
> Hi all,
>
> This patch refactors tree-loop-distribution.c for thread safety without
> use of C11 __thread feature. All global variables were moved to a struct
> which is initialized at ::execute time.
Thanks for working on this. I've b
On Tue, Nov 12, 2019 at 10:02 AM Jakub Jelinek wrote:
>
> On Tue, Nov 12, 2019 at 09:10:58AM +0100, Richard Biener wrote:
> > On Tue, Nov 12, 2019 at 5:54 AM Jason Merrill wrote:
> > >
> > > I'm not sure what semantics we might eventually want for vector <=>, but
> > > let's
> > > give a sorry f
On 11/11/19 3:36 PM, Richard Biener wrote:
as a followup I notice that the targets *_default_params () functions should
be merged into the default-options structs they have (did you check the
defaults are still applied and user-overridable?)
Apparently, the *_default_params target hook is not c
On Wed, Nov 6, 2019 at 1:38 PM Richard Sandiford
wrote:
>
> Richard Biener writes:
> > On Fri, Oct 25, 2019 at 2:43 PM Richard Sandiford
> > wrote:
> >>
> >> After previous patches, it's now possible to make the vectoriser
> >> support multiple vector sizes in the same vector region, using
> >>
On Tue, Nov 12, 2019 at 1:16 AM Richard Biener
wrote:
>
> On Sat, Nov 9, 2019 at 3:26 PM Giuliano Belinassi
> wrote:
> >
> > Hi all,
> >
> > This patch refactors tree-loop-distribution.c for thread safety without
> > use of C11 __thread feature. All global variables were moved to a struct
> > whi
On 11/11/19 3:42 PM, Richard Biener wrote:
I didn't go over them but maybe we can postpone this to a followup
and for now make_none_ of them Optimization which preserves
Ok, there's updated patch w/o the Optimization keyword.
previous behavior (I guess the optimize attribute/pragma doesn't
a
On Wed, Nov 6, 2019 at 1:47 PM Richard Sandiford
wrote:
>
> Richard Biener writes:
> > On Wed, Nov 6, 2019 at 12:02 PM Richard Sandiford
> > wrote:
> >>
> >> Richard Biener writes:
> >> > On Wed, Nov 6, 2019 at 11:21 AM Richard Sandiford
> >> > wrote:
> >> >>
> >> >> Richard Biener writes:
>
On Wed, Nov 6, 2019 at 1:45 PM Richard Sandiford
wrote:
>
> Richard Biener writes:
> > On Fri, Oct 25, 2019 at 2:51 PM Richard Sandiford
> > wrote:
> >>
> >> This patch adds AArch64 patterns for converting between 64-bit and
> >> 128-bit integer vectors, and makes the vectoriser and expand pass
Hi Dennis,
On 11/7/19 1:48 PM, Dennis Zhang wrote:
Hi Kyrill,
I have rebased the patch on top of current truck.
For resolve_overloaded, I redefined my memtag overloading function to
fit the latest resolve_overloaded_builtin interface.
Regression tested again and survived for aarch64-none-linux
On Tue, Nov 12, 2019 at 10:21 AM Martin Liška wrote:
>
> On 11/11/19 3:36 PM, Richard Biener wrote:
> > as a followup I notice that the targets *_default_params () functions should
> > be merged into the default-options structs they have (did you check the
> > defaults are still applied and user-o
On Tue, Nov 12, 2019 at 10:23 AM Martin Liška wrote:
>
> On 11/11/19 3:42 PM, Richard Biener wrote:
> > I didn't go over them but maybe we can postpone this to a followup
> > and for now make_none_ of them Optimization which preserves
>
> Ok, there's updated patch w/o the Optimization keyword.
O
On Tue, Nov 12, 2019 at 10:19 AM Martin Liška wrote:
>
> On 11/11/19 3:36 PM, Richard Biener wrote:
> > I think I've noticed at least one long line (please double-check):
> >
> > - if (tree_to_uhwi (t) < (unsigned HOST_WIDE_INT)
> > INTEGER_SHARE_LIMIT)
> > + if (tree_to_uh
On Mon, 11 Nov 2019 at 14:36, Richard Biener wrote:
>
> On Mon, 11 Nov 2019, Christophe Lyon wrote:
>
> > On Fri, 8 Nov 2019 at 09:57, Richard Biener wrote:
> > >
> > >
> > > I've been sitting on this for a few days since I'm not 100% happy
> > > with how the code looks like. There's possibly st
On Tue, Nov 12, 2019 at 10:19:49AM +0100, Richard Biener wrote:
> On Tue, Nov 12, 2019 at 10:02 AM Jakub Jelinek wrote:
> >
> > On Tue, Nov 12, 2019 at 09:10:58AM +0100, Richard Biener wrote:
> > > On Tue, Nov 12, 2019 at 5:54 AM Jason Merrill wrote:
> > > >
> > > > I'm not sure what semantics we
Hi Mihail,
On 10/23/19 10:26 AM, Mihail Ionescu wrote:
[PATCH, GCC/ARM, 4/10] Clear GPR with CLRM
Hi,
=== Context ===
This patch is part of a patch series to add support for Armv8.1-M
Mainline Security Extensions architecture. Its purpose is to improve
code density of functions with the cmse_
On Nov 11 2019, Jim Wilson wrote:
> ../../../../gcc-git/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp:1136:1:
> note: in expansion of macro ‘CHECK_SIZE_AND_OFFSET’
> 1136 | CHECK_SIZE_AND_OFFSET(ipc_perm, mode);
> | ^
Looks like you are using an unre
Hi Mihail,
On 10/23/19 10:26 AM, Mihail Ionescu wrote:
[PATCH, GCC/ARM, 5/10] Clear VFP registers with VSCCLRM
Hi,
=== Context ===
This patch is part of a patch series to add support for Armv8.1-M
Mainline Security Extensions architecture. Its purpose is to improve
code density of functions w
On Nov 12 2019, Richard Biener wrote:
> This means a tentative definition for 'errno' is non-conforming?
https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/errno.h.html
If a macro definition is suppressed in order to access an actual
object, or a program defines an identifier with the n
On Tue, Nov 12, 2019 at 08:47:55AM +0100, Richard Biener wrote:
> OK, but IMHO it is not a good idea to assert UNORDERED_EXPR cannot
> appear with !HONOR_NANS, is it?
If we allow that, we should allow UNLT/UNGT/UNLE/UNGE/UNEQ/LTGT as well,
which doesn't make much sense, especially because LTGT the
Hi Mihail,
On 10/23/19 10:26 AM, Mihail Ionescu wrote:
[PATCH, GCC/ARM, 6/10] Clear GPRs inline when calling nscall function
Hi,
=== Context ===
This patch is part of a patch series to add support for Armv8.1-M
Mainline Security Extensions architecture. Its purpose is to generate
inline calle
On Tue, Nov 12, 2019 at 01:06:55AM +0100, Jakub Jelinek wrote:
> The testcase from the PR ICEs on rs6000. For __builtin_isunordered etc.
> the folding makes sure that there is no *ORDERED_EXPR etc. in the IL
> if !HONOR_NANS, but the complex multiplication can emit it when mixing
> -Ofast with -fn
On 10/23/19 10:26 AM, Mihail Ionescu wrote:
[PATCH, GCC/ARM, 7/10] Clear all VFP regs inline in hardfloat nscall
functions
Hi,
=== Context ===
This patch is part of a patch series to add support for Armv8.1-M
Mainline Security Extensions architecture. Its purpose is to generate
inline instr
Hi Mihail,
On 10/23/19 3:24 PM, Mihail Ionescu wrote:
[PATCH, GCC/ARM, 8/10] Do lazy store & load inline when calling nscall
function
Hi,
=== Context ===
This patch is part of a patch series to add support for Armv8.1-M
Mainline Security Extensions architecture. Its purpose is to generate
la
On 10/23/19 10:26 AM, Mihail Ionescu wrote:
[PATCH, GCC/ARM, 9/10] Call nscall function with blxns
Hi,
=== Context ===
This patch is part of a patch series to add support for Armv8.1-M
Mainline Security Extensions architecture. Its purpose is to call
functions with the cmse_nonsecure_call at
On 10/23/19 10:26 AM, Mihail Ionescu wrote:
[PATCH, GCC/ARM, 10/10] Enable -mcmse
Hi,
=== Context ===
This patch is part of a patch series to add support for Armv8.1-M
Mainline Security Extensions architecture. Its purpose is to enable the
-mcmse option now that support for Armv8.1-M Securit
On Thu, 7 Nov 2019 at 11:26, Kyrill Tkachov wrote:
>
> Hi all,
>
> This patch adds the plumbing for and an implementation of the saturation
> intrinsics from ACLE [1], in particular the __ssat, __usat intrinsics.
> These intrinsics set the Q sticky bit in APSR if an overflow occurred.
> ACLE allow
On Tue, Nov 12, 2019 at 10:56:21AM +0100, Andreas Schwab wrote:
> On Nov 11 2019, Jim Wilson wrote:
>
> > ../../../../gcc-git/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp:1136:1:
> > note: in expansion of macro ‘CHECK_SIZE_AND_OFFSET’
> > 1136 | CHECK_SIZE_AND_OFFSET(ipc_perm
Hi Christophe,
On 10/18/19 2:18 PM, Christophe Lyon wrote:
Hi,
This patch extends support for -mpure-code to all thumb-1 processors,
by removing the need for MOVT.
Symbol addresses are built using upper8_15, upper0_7, lower8_15 and
lower0_7 relocations, and constants are built using sequences
Hi:
As mentioned in https://gcc.gnu.org/ml/gcc-patches/2019-11/msg00832.html
> So yes, it's poorly named. A preparatory patch to clean this up
> (and maybe split it into TARGET_AVX256_SPLIT_REGS and TARGET_AVX128_OPTIMAL)
> would be nice.
Bootstrap and regression test for i386 backend is ok.
On Tue, 12 Nov 2019, Segher Boessenkool wrote:
> On Tue, Nov 12, 2019 at 08:47:55AM +0100, Richard Biener wrote:
> > OK, but IMHO it is not a good idea to assert UNORDERED_EXPR cannot
> > appear with !HONOR_NANS, is it?
>
> If we allow that, we should allow UNLT/UNGT/UNLE/UNGE/UNEQ/LTGT as well,
Hi Christophe,
On 11/12/19 10:29 AM, Christophe Lyon wrote:
On Thu, 7 Nov 2019 at 11:26, Kyrill Tkachov wrote:
Hi all,
This patch adds the plumbing for and an implementation of the saturation
intrinsics from ACLE [1], in particular the __ssat, __usat intrinsics.
These intrinsics set the Q sti
Hi Segher,
on 2019/11/11 下午8:51, Segher Boessenkool wrote:
> Hi!
>
>> pattern 1:
>> lt(a,b) = gt(b,a)
>> le(a,b) = ge(b,a)
>
> This is done by swap_condition normally.
Nice! Done.
>
>> pattern 2:
>> unge(a,b) = ~gt(b,a)
>> unle(a,b) = ~gt(a,b)
>> ne(a,b) = ~eq(a,b)
>> ungt(a,b)
On Tue, Nov 12, 2019 at 4:41 PM Richard Biener
wrote:
>
> On Tue, Nov 12, 2019 at 9:29 AM Hongtao Liu wrote:
> >
> > On Tue, Nov 12, 2019 at 4:19 PM Richard Biener
> > wrote:
> > >
> > > On Tue, Nov 12, 2019 at 8:36 AM Hongtao Liu wrote:
> > > >
> > > > Hi:
> > > > This patch is about to set
On 18/10/2019 14:18, Christophe Lyon wrote:
+ bool not_supported = arm_arch_notm || flag_pic || TARGET_NEON;
This is a poor name in the context of the function as a whole. What's
not supported. Please think of a better name so that I have some idea
what the intention is.
R.
On 18/10/2019 14:18, Christophe Lyon wrote:
+thumb1_gen_const_int (rtx op0, HOST_WIDE_INT op1)
+{
+ bool mov_done_p = false;
+ int i;
+
+ /* Emit upper 3 bytes if needed. */
+ for (i = 0; i < 3; i++)
+{
+ int byte = (op1 >> (8 * (3 - i))) & 0xff;
+
+ if (byte)
+ {
+
On Tue, Nov 12, 2019 at 11:32:56AM +0100, Jakub Jelinek wrote:
> On Tue, Nov 12, 2019 at 10:56:21AM +0100, Andreas Schwab wrote:
> > On Nov 11 2019, Jim Wilson wrote:
> >
> > > ../../../../gcc-git/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp:1136:1:
> > > note: in expansion of
Last time a command that calls a function of debuggee with "set" was
added is 2013 year. Apparently something has changed since then, since
doing "set foo()" in gdb to call a "foo()" results in error.
Disregarding, it looks wrong to call a function with "set". Let's use
"call" instead.
* (debug_rt
Gdb documentation says that gdb-defined functions refer to their args as
$arg0…$argN. The just "$" that gdbinit is using here refers to something
else, which results in gdb errors, or even crashes of debuggee. Let's
fix that.
* (debug,debug_rtx,pr,prl,pt,pct,pgg,pgq,pgq,pgs,pge,pmz,ptc,
pdn,ptn,pd
This includes the unmerged previously posted here patch about calling
with `call`. I made a typo in commit message formatting, so I fix it
here.
I'd like to note that I am not subscribed to the list, so please add me
to CC when replying. Thanks in advance.
Konstantin Kharlamov (2):
gdbinit.in:
Bootstrapped & tested on x86_64-unknown-linux-gnu, applied.
Richard.
2019-11-12 Richard Biener
PR tree-optimization/92461
* tree-vect-loop.c (vect_create_epilog_for_reduction): Update
stmt after propagation.
* gcc.dg/torture/pr92461.c: New testcase.
Index:
On 11/11/19 5:03 PM, Matthew Malcomson wrote:
Ah!
My apologies -- I sent up a series with a few documentation mistakes.
(the others were wording problems so less noticeable)
That's fine, I fixed that very easily.
Right now, I can confirm using a aarch64 KVM with the following linux kernel:
5.4
Bootstrapped and tested on x86_64-unknown-linux-gnu, applied.
Richard.
2019-11-12 Richard Biener
PR tree-optimization/92460
* tree-vect-stmts.c (vectorizable_simd_clone_call): Unshare
expression before gimplifying.
Index: gcc/tree-vect-stmts.c
==
> +2019-11-05 Feng Xue
> +
> + PR ipa/91682
> + * ipa-prop.h (jump_func_type): New value IPA_JF_LOAD_AGG.
> + (ipa_load_agg_data, ipa_agg_value, ipa_agg_value_set): New structs.
> + (ipa_agg_jf_item): Add new field jftype and type, redefine field value.
> + (ipa_agg_jump_func
> > +2019-11-05 Feng Xue
> > +
> > + PR ipa/91682
> > + * ipa-prop.h (jump_func_type): New value IPA_JF_LOAD_AGG.
> > + (ipa_load_agg_data, ipa_agg_value, ipa_agg_value_set): New structs.
> > + (ipa_agg_jf_item): Add new field jftype and type, redefine field value.
> > + (ipa_agg_jump_
Hi Thomas,
thanks for the first review. I'm still working on another revision,
but wanted to respond to some of the issues you raised first:
On 2019/11/7 8:48 AM, Thomas Schwinge wrote:
(1) The simplest solution: implement a processing which searches and reverts
such
non-contiguous array map en
Hi Janne,
> Ah, of course. I should have said module procedures. Or even module
> procedures without bind(C)?
It would probably be the latter.
The change would actually be rather small: If conditions are met, just add
attr.value for INTENT(IN).
This is something we should probably do when we a
On Nov 12 2019, Konstantin Kharlamov wrote:
> Gdb documentation says that gdb-defined functions refer to their args as
> $arg0…$argN. The just "$" that gdbinit is using here refers to something
> else,
That's the last thing printed.
> which results in gdb errors, or even crashes of debuggee. Let
Hi,
this patch adds propagation of value ranges through binary operations.
This is disabled for value ranges within SCC to avoid infinite loop during
propagation. I am bit worried about types here. As far as I can say we
have something like
VR in lattice of type1
foo (type1 param)
{
bar ((type
On Вт, ноя 12, 2019 at 13:50, Andreas Schwab
wrote:
On Nov 12 2019, Konstantin Kharlamov wrote:
Gdb documentation says that gdb-defined functions refer to their
args as
$arg0…$argN. The just "$" that gdbinit is using here refers to
something
else,
That's the last thing printed.
Hm
Hi,
this implements use of value ranges in ipa-predicates so inliner know
when some tests are going to be removed (especially NULL pointer
checks).
Bootstrapped/regtested x86_64-linux. Martin, I would apprechiate if you
look on the patch.
Honza
* ipa-cp.c (ipa_vr_operation_and_type_effe
On Nov 12 2019, Konstantin Kharlamov wrote:
> I'm definitely missing something. Who are these users, and how can they
> make anything useful of these functions if they don't even pass an
> argument?
By printing the desired value.
Andreas.
--
Andreas Schwab, SUSE Labs, sch...@suse.de
GPG Key fi
Hi,
On Tue, Nov 12 2019, Jan Hubicka wrote:
> Also note that there is a long standing problem with inlining ipacp
> clones. This can be shown on the following example:
>
> struct a {int a;};
> static int foo (struct a a)
> {
> return a.a;
> }
> __attribute__ ((noinline))
> static int bar (struc
On Вт, ноя 12, 2019 at 14:08, Andreas Schwab
wrote:
On Nov 12 2019, Konstantin Kharlamov wrote:
I'm definitely missing something. Who are these users, and how can
they
make anything useful of these functions if they don't even pass an
argument?
By printing the desired value.
Hah, o
> Hi,
>
> On Tue, Nov 12 2019, Jan Hubicka wrote:
> > Also note that there is a long standing problem with inlining ipacp
> > clones. This can be shown on the following example:
> >
> > struct a {int a;};
> > static int foo (struct a a)
> > {
> > return a.a;
> > }
> > __attribute__ ((noinline))
This patch shouldn't change anything much at all; it's just an internal
reorganization of files.
The idea is to move files from libgomp "nvptx" directory that have
nothing NVPTX-specific in them. By placing them in a separate "accel"
directory they can be shared with the GCN port, thus preventing
Hi all,
This patch series contributes initial OpenMP and OpenACC support for AMD
GCN GPUs.
The test results are not yet perfect, but there are many more passes than
failures, so this is a good starting point. The rest of the issues can
be addressed as bugs during stage 3.
I have another, unfini
This patch adds the mkoffload tool to the amdgcn backend. It's similar,
but not quite the same as that on the openacc-gcc-9-branch.
I will commit this patch when the others in this series are approved.
Andrew
2019-11-12 Andrew Stubbs
gcc/
* config/gcn/mkoffload.c: New file.
This patch is preparatory for the amdgcn plugin. The current
implementation was written for CUDA in which the device associated with
the queue is inferred by some hidden magic (which seems questionable to
me but then I don't fully understand it). The GCN plugin needs to know
for which device the
This patch contributes a libgomp implementation for AMD GCN, minus the
plugin which is later in this series.
GCN has been allocated ID number "8", even though devices "6" and "7"
are no longer present in every place where the IDs exist (they were HSA
and Intel MIC).
Most of these changes are simp
This patch contributes the GCN libgomp plugin, with the various
configure and make bits to go with it.
This implementation is a much-cleaned-up version of the one present on the
openacc-gcc-9-branch.
OK to commit?
Thanks
Andrew
2019-11-12 Andrew Stubbs
libgomp/
* plugin/Ma
This patch implements a malloc optimization to improve the startup and
shutdown overhead for each OpenMP team.
New malloc functions are created, "team_malloc" and "team_free", that
take memory from a per-team memory arena provided by the plugin, rather
than the shared heap space, which is slow, an
This patch prevents the compiler using multiple workers in a gang. This
should be reverted when worker support is committed.
I will commit this with the reset of the series.
Andrew
2019-11-12 Andrew Stubbs
Julian Brown
gcc/
* config/gcn/gcn.c (gcn_goacc_valida
Hi, Richard.
On 11/12, Richard Biener wrote:
> On Sat, Nov 9, 2019 at 3:26 PM Giuliano Belinassi
> wrote:
> >
> > Hi all,
> >
> > This patch refactors tree-loop-distribution.c for thread safety without
> > use of C11 __thread feature. All global variables were moved to a struct
> > which is initi
On Nov 12 2019, Konstantin Kharlamov wrote:
> Besides, I suspect, the number of actual users of this gdbinit is around
> zero, otherwise someone would have noticed the warning that gdb prints on
> every usage of these functions while the PATCH 1/2 is not applied.
It's easy to ignore it.
Andreas.
On Tue, 12 Nov 2019, Jan Hubicka wrote:
> Hi,
> this patch adds propagation of value ranges through binary operations.
> This is disabled for value ranges within SCC to avoid infinite loop during
> propagation. I am bit worried about types here. As far as I can say we
> have something like
>
>
On Tue, Nov 12, 2019 at 01:29:10PM +, Andrew Stubbs wrote:
> 2019-11-12 Andrew Stubbs
>
> libgomp/
> * configure.tgt (nvptx*-*-*): Add "accel" directory.
> * config/nvptx/libgomp-plugin.c: Move ...
> * config/accel/libgomp-plugin.c: ... to here.
> * config/nvpt
On Tue, Nov 12, 2019 at 01:29:12PM +, Andrew Stubbs wrote:
> 2019-11-12 Andrew Stubbs
>
> libgomp/
> * libgomp-plugin.h (GOMP_OFFLOAD_openacc_async_construct): Add int
> parameter.
> * oacc-async.c (lookup_goacc_asyncqueue): Pass device number to the
> queue co
On Tue, Nov 12, 2019 at 01:29:13PM +, Andrew Stubbs wrote:
> 2019-11-12 Andrew Stubbs
>
> include/
> * gomp-constants.h (GOMP_DEVICE_GCN): Define.
> (GOMP_VERSION_GCN): Define.
Perhaps this could be 0, but not a big deal.
> libgomp/
> * Makefile.am (libgomp_l
> > + tree op = ipa_get_jf_pass_through_operand (jfunc);
> > + value_range op_vr (op, op);
> > + value_range op_res,res;
> > +
>
> Do we really know operation is tcc_binary here?
Constant propagation already assumes that at the same spot:
if (TREE_CODE_CLASS (opcode) == tcc_unary)
On Tue, Nov 12, 2019 at 01:29:14PM +, Andrew Stubbs wrote:
> 2019-11-12 Andrew Stubbs
>
> libgomp/
> * config/gcn/team.c (gomp_gcn_enter_kernel): Set up the team arena
> and use team_malloc variants.
> (gomp_gcn_exit_kernel): Use team_free.
> * libgomp.h (TEAM_
On Tue, Nov 12, 2019 at 01:29:16PM +, Andrew Stubbs wrote:
> 2019-11-12 Andrew Stubbs
>
> libgomp/
> * plugin/Makefrag.am: Add amdgcn plugin support.
> * plugin/configfrag.ac: Likewise.
> * plugin/plugin-gcn.c: New file.
> * configure: Regenerate.
I'm a little
Bootstrapped and regtested on x86_64-redhat-linux, s390x-redhat-linux
and ppc64le-redhat-linux. OK for trunk and gcc-9-branch?
try_forward_edges does not update dominance info, and merge_blocks
relies on it being up-to-date. In PR92430 stale dominance info makes
merge_blocks produce a loop in th
On Tue, 12 Nov 2019, Ilya Leoshkevich wrote:
> Bootstrapped and regtested on x86_64-redhat-linux, s390x-redhat-linux
> and ppc64le-redhat-linux. OK for trunk and gcc-9-branch?
>
> try_forward_edges does not update dominance info, and merge_blocks
> relies on it being up-to-date. In PR92430 stal
Hi,
this is a proposal to fix
https://sourceware.org/bugzilla/show_bug.cgi?id=25180
In short:
cxxfilt
_ZZ1_DO1z1Dclaa1D1VEE1VE2zo
takes several minutes with 100% CPU before it comes back with a result.
With this patch the r
On 12/11/2019 13:46, Jakub Jelinek wrote:
On Tue, Nov 12, 2019 at 01:29:13PM +, Andrew Stubbs wrote:
2019-11-12 Andrew Stubbs
include/
* gomp-constants.h (GOMP_DEVICE_GCN): Define.
(GOMP_VERSION_GCN): Define.
Perhaps this could be 0, but not a big deal.
OG9 us
Hi Thomas,
On 11/12/19 1:42 PM, Thomas König wrote:
Ah, of course. I should have said module procedures. Or even module procedures
without bind(C)?
It would probably be the latter. The change would actually be rather small: If
conditions are met, just add attr.value for INTENT(IN). This is so
Hi!
On Tue, Nov 12, 2019 at 03:11:05PM +0100, Ilya Leoshkevich wrote:
> try_forward_edges does not update dominance info, and merge_blocks
> relies on it being up-to-date. In PR92430 stale dominance info makes
> merge_blocks produce a loop in the dominator tree, which in turn makes
> delete_basic
Hi,
Support common idioms for count trailing zeroes using an array lookup.
The canonical form is array[((x & -x) * C) >> SHIFT] where C is a magic
constant which when multiplied by a power of 2 contains a unique value
in the top 5 or 6 bits. This is then indexed into a table which maps it
to the
6936 and using38 are the same test. Deleting one of them.
nathan
--
Nathan Sidwell
2019-11-12 Nathan Sidwell
* g++.dg/lookup/pr6936.C: Delete, identical to using38.C
Index: g++.dg/lookup/pr6936.C
===
--- g++.dg/lookup/pr6936.C
On 12/11/2019 14:01, Jakub Jelinek wrote:
On Tue, Nov 12, 2019 at 01:29:16PM +, Andrew Stubbs wrote:
2019-11-12 Andrew Stubbs
libgomp/
* plugin/Makefrag.am: Add amdgcn plugin support.
* plugin/configfrag.ac: Likewise.
* plugin/plugin-gcn.c: New file.
1 - 100 of 155 matches
Mail list logo