[pushed] c++, coroutines: Remove unused suspend point state [NFC].

2024-08-02 Thread Iain Sandoe
Use susp_frame_data CTOR, and make the suspend state hash map local to the morph function. Signed-off-by: Iain Sandoe --- gcc/cp/coroutines.cc | 56 +--- 1 file changed, 27 insertions(+), 29 deletions(-) diff --git a/gcc/cp/coroutines.cc b/gcc

[pushed] c++, coroutines: Provide a CTOR for a callback object [NFC].

2024-08-02 Thread Iain Sandoe
ata): Add a CTOR. (morph_fn_to_coro): Use CTOR for local_vars_frame_data instead of brace init. Signed-off-by: Iain Sandoe --- gcc/cp/coroutines.cc | 23 ++- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/gcc/cp/coroutines.cc b/gcc

[PATCH] c++, coroutines: Simplify separation of the user function body and ramp.

2024-08-02 Thread Iain Sandoe
REE trees to discover it. gcc/cp/ChangeLog: * coroutines.cc (use_eh_spec_block): New. (split_coroutine_body_from_ramp): New. (morph_fn_to_coro): Use split_coroutine_body_from_ramp(). Signed-off-by: Iain Sandoe --- gcc/cp/coroutines.cc |

[PATCH v2] c++, coroutines: Simplify separation of the user function body and ramp.

2024-08-03 Thread Iain Sandoe
On 2 Aug 2024, at 15:19, Jason Merrill wrote: > On 8/2/24 6:50 AM, Iain Sandoe wrote: >> This version simplifies the process by extrating the second case directly > typo thanks, fixed. >> +static bool >>+use_eh_spec_block (tree fn) >>+{ >>+ return (flag

[PATCH] Ada, libgnarl: Fix s-taprop__posix.adb compilation.

2024-08-07 Thread Iain Sandoe
ada/ChangeLog: * libgnarl/s-taprop__posix.adb (Stack_Guard): Use Interfaces.C.size_t for the type of Page_Size. Signed-off-by: Iain Sandoe --- gcc/ada/libgnarl/s-taprop__posix.adb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc/ada/libgnarl/s-taprop__posix.adb b/gcc/a

[pushed] Darwin: Recognise -weak_framework in the driver [PR116237].

2024-08-07 Thread Iain Sandoe
n.h (SUBTARGET_DRIVER_SELF_SPECS): Add a spec for weak_framework. * config/darwin.opt: Handle weak_framework driver option. Signed-off-by: Iain Sandoe --- gcc/config/darwin.h | 2 ++ gcc/config/darwin.opt | 4 2 files changed, 6 insertions(+) diff --git a/gcc/config/darwin.h b/gcc/config/darwi

Re: [PATCH] c++/modules: optimize tree flag streaming

2024-04-13 Thread Iain Sandoe
Hi Patrick, > On 10 Apr 2024, at 17:33, Jason Merrill wrote: > > On 4/10/24 11:26, Patrick Palka wrote: >> On Wed, 10 Apr 2024, Patrick Palka wrote: >>> >>> On Tue, 9 Apr 2024, Jason Merrill wrote: >>> On 2/16/24 10:06, Patrick Palka wrote: > On Thu, 15 Feb 2024, Patrick Palka wrote:

Re: Request for testing on non-Linux targets; remove special casing of /usr/lib and /lib from the driver

2024-04-17 Thread Iain Sandoe
Hi Andrew, > On 17 Apr 2024, at 14:59, Rainer Orth wrote: >> The driver currently will remove "/lib" and "/usr/lib" from the library >> path that gets passed to the linker because it considers them as paths that >> the linker will already known to search. But this is not true for newer >> linke

[PATCH] libgfortran: Fix up the autoreconf warnings.

2024-04-18 Thread Iain Sandoe
egenerate. Signed-off-by: Iain Sandoe --- libgfortran/Makefile.am | 1431 +++--- libgfortran/Makefile.in | 9848 ++- 2 files changed, 4126 insertions(+), 7153 deletions(-) diff --git a/libgfortran/Makefile.am b/libgfortran/Makefile.am index 9f8a4f69863..8bef17

Re: [PATCH v2] [testsuite] require sqrt_insn effective target where needed

2024-04-23 Thread Iain Sandoe
Hi Folks, > On 23 Apr 2024, at 09:59, Kewen.Lin wrote: > > Hi, > > on 2024/4/22 17:56, Alexandre Oliva wrote: >> This patch takes feedback received for 3 earlier patches, and adopts a >> simpler approach to skip the still-failing tests, that I believe to be >> in line with ppc maintainers' expr

[pushed] Objective-C, NeXT, v2: Correct a regression in code-gen.

2024-05-02 Thread Iain Sandoe
nge. (build_v2_protocol_list_address_table): Likewise. Signed-off-by: Iain Sandoe --- gcc/objc/objc-next-runtime-abi-02.cc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gcc/objc/objc-next-runtime-abi-02.cc b/gcc/objc/objc-next-runtime-abi-02.cc index cdf559b9bea..248ef641281 100

Re: Trait built-in naming convention

2024-05-02 Thread Iain Sandoe
> On 2 May 2024, at 20:30, Ken Matsui wrote: > > On Thu, May 2, 2024 at 10:54 AM Marek Polacek wrote: >> >> On Thu, May 02, 2024 at 08:37:53PM +0300, Ville Voutilainen wrote: >>> On Thu, 2 May 2024 at 20:25, Ken Matsui wrote: > There was some discussion of how to name the built-ins back

Re: Fix gnu versioned namespace mode 01/03

2024-05-07 Thread Iain Sandoe
Hi François As you know I am keen to see this land - but having had some experience with applying previous patches to actual toolchain builds .. > On 4 May 2024, at 22:11, François Dumont wrote: > > libstdc++: Bump gnu versioned namespace to __9 I think that the namespace version should be a

Re: Fix gnu versioned namespace mode 00/03

2024-05-07 Thread Iain Sandoe
Hi François > On 4 May 2024, at 22:11, François Dumont wrote: > > Here is the list of patches to restore gnu versioned namespace mode. > > 1/3: Bump gnu version namespace > > This is important to be done first so that once build of gnu versioned > namespace is fixed there is no chance to have

Ping [PATCH/RFC] target, hooks: Allow a target to trap on unreachable [PR109267].

2024-05-08 Thread Iain Sandoe
Hi Folks, I’d like to land a viable solution to this issue if possible, (it is a show- stopper for the aarch64-darwin development branch). > On 9 Apr 2024, at 14:55, Iain Sandoe wrote: > > So far, tested lightly on aarch64-darwin; if this is acceptable then > it will be possible to

Re: Fix gnu versioned namespace mode 00/03

2024-05-12 Thread Iain Sandoe
> On 13 May 2024, at 06:06, François Dumont wrote: > > > On 07/05/2024 18:15, Iain Sandoe wrote: >> Hi François >> >>> On 4 May 2024, at 22:11, François Dumont wrote: >>> >>> Here is the list of patches to restore gnu versioned names

[pushed] testsuite, c++, coroutines: Avoid 'unused' warnings [NFC].

2024-08-31 Thread Iain Sandoe
: Likewise. * g++.dg/coroutines/torture/local-var-04-hiding-nested-scopes.C: Likewise. * g++.dg/coroutines/torture/pr109867.C: Likewise. Signed-off-by: Iain Sandoe --- gcc/testsuite/g++.dg/coroutines/coro.h| 4 ++-- .../g++.dg/coroutines/torture/co-

[pushed] testsuite, c++, coroutines: Correct a test intent.

2024-08-31 Thread Iain Sandoe
tly deleted on exception. Signed-off-by: Iain Sandoe --- .../g++.dg/coroutines/torture/pr95615.inc | 15 +++ 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/gcc/testsuite/g++.dg/coroutines/torture/pr95615.inc b/gcc/testsuite/g++.dg/coroutines/torture/pr95

[PATCH] c++, coroutines: Instrument missing return_void UB.

2024-09-01 Thread Iain Sandoe
he target settings). gcc/cp/ChangeLog: * coroutines.cc (cp_coroutine_transform::wrap_original_function_body): Instrument the case where control flows off the end of a coroutine and the user promise has no return_void entry. Signed-off-by: Iain Sandoe --- gcc/cp/coroutines.cc | 18

[PATCH] c++, coroutines: Revise promise construction/destruction.

2024-08-31 Thread Iain Sandoe
c (cp_coroutine_transform::build_ramp_function): Separate the build of promise constructor and destructor. When evaluating the constructor, check that build_special_member_call returns a valid call expression before adding the statement. Signed-off-by: Iain Sando

Re: [PATCH] c++, coroutines: Instrument missing return_void UB.

2024-09-04 Thread Iain Sandoe
> On 4 Sep 2024, at 17:21, Jason Merrill wrote: > > On 9/1/24 12:17 PM, Iain Sandoe wrote: >> This came up in discussion of an earlier patch. >> I'm in two minds as to whether it's a good idea or not - the underlying >> issue being that libubsan does n

[PATCH] c++, coroutines: Fix handling of bool await_suspend() [PR115905].

2024-09-07 Thread Iain Sandoe
restart dispatch label. (expand_one_await_expression): Rework to modernise and to handle the boolean await_suspend() case. (build_actor_fn): Rework the dispatcher and allow for a jump back to the dispatcher. gcc/testsuite/ChangeLog: * g++.dg/coroutines/torture/pr115905.C: New tes

Re: [PATCH] c++, coroutines: Fix handling of bool await_suspend() [PR115905].

2024-09-14 Thread Iain Sandoe
Hi Jason, > On 10 Sep 2024, at 20:22, Jason Merrill wrote: > > On 9/7/24 6:45 AM, Iain Sandoe wrote: >> As noted in the PR the action of the existing implementation was to >> treat a false value from await_suspend () as equivalent to "do not >> suspend". A

Re: Ubsan merged into trunk

2013-08-31 Thread Iain Sandoe
Hi, On 30 Aug 2013, at 20:43, Jakub Jelinek wrote: > On Fri, Aug 30, 2013 at 09:38:01PM +0200, Dominique Dhumieres wrote: >>> I've just merged ubsan into trunk. Please send complaints my way. >> >> Bootstrap is broken on x86_64-apple-darwin10: > (wonder why not > libasan_la_LIBADD = $(top_buil

Re: Ada PATCH: Fix ada/58239 by linking with xg++, not xgcc

2013-09-01 Thread Iain Sandoe
On 31 Aug 2013, at 22:42, Gabriel Dos Reis wrote: > Eric Botcazou writes: > > | > This patch fixes that by introducing GXX_LINK which is GCC_LINK except > | > that CXX (e.g. xg++) instead of CC (e.g. xgcc) is invoked. > | > > | > Eric, are there other executables that need to be linked with GX

Re: [PATCH i386 1/8] [AVX512] Adjust register classes.

2013-09-01 Thread Iain Sandoe
Hi Kirill, On 23 Aug 2013, at 08:35, Kirill Yukhin wrote: > On 22 Aug 12:06, Richard Henderson wrote: >> Ok. > > I've updated ChangeLog (thanks, HJ!) and > checked in to main trunk: http://gcc.gnu.org/ml/gcc-cvs/2013-08/msg00545.html This patch [actually the change at 201915] also broke X86 Da

Re: [i386, AVX-512F, pr58269] Partial fix for PR58269: properly initialize last EXT REX SSE register.

2013-09-06 Thread Iain Sandoe
Hi Kirill, Thanks for Ilya's input on the PR thread. We've done some testing/checking across the Darwin versions last night and I've bootstrapped all langs including Ada, and tested the patch below (together with the fragment you posted earlier) on Darwin12. >> On Fri, Sep 6, 2013 at 10:34 AM,

Re: [PATCH, RTL] Prepare ARM build with LRA

2013-09-26 Thread Iain Sandoe
Hi Yvan, On 24 Sep 2013, at 09:29, Yvan Roux wrote: >> On 11 September 2013 21:08, Yvan Roux wrote: >>> Here is the new patch discussed in the other thread. >>> >>> Thanks >>> Yvan >>> >>> 2013-09-11 Yvan Roux >>>Vladimir Makarov >>> >>>* rtlanal.c (lsb_bitfield_op_p)

[Patch, Darwin] update t-* and x-* fragments after switch to auto-deps.

2013-09-28 Thread Iain Sandoe
Hi, This updates the Darwin port {t,x}-* fragments after the switch to auto-deps (thanks Tom!). bootstrapped (all langs, incl Ada) on i686-darwin9(bootstrap=gcc-4.8), i686-darwin10, x86-64-darwin11, x86_64-darwin12 (bootstrap=recent trunk) powerpc-darwin9 (c,c++,lto,objc,fortran) (bootstrap=gcc

[Patch, Darwin] improve cross-compiles.

2013-09-28 Thread Iain Sandoe
I've been experimenting with the idea of building native crosses on my most capable machine, for the many variants of darwin we now have, and then using the older/slower hardware for test only. This has uncovered a few issues with cross/native cross flags etc. this patch adjusts the mh-darwin f

[Patch, Darwin/ppc] Fix altivec dwarf reg sizes.

2013-09-28 Thread Iain Sandoe
Hi! We have this cunning legacy scheme to support unwinding on both G3 and G4/G5 processors. Effectively, we build some components without altivec support, and then test for its presence at runtime. To doing this we pretend that altivec is absent when building init_unwind - and therefore all

[Patch, Darwin/PPC] fix PR10901

2013-09-28 Thread Iain Sandoe
Hi, this might be the oldest bug i've fixed so far. We currently generate wrong code for non-local gotos which breaks, amongst other things, nested functions. I fixed this a while ago for x86 Darwin and here is a version to fix it on PPC. (the patch is darwin-local save the definitions of the UN

Re: [Patch, Darwin] update t-* and x-* fragments after switch to auto-deps.

2013-09-28 Thread Iain Sandoe
On 28 Sep 2013, at 17:40, Joseph S. Myers wrote: > On Sat, 28 Sep 2013, Iain Sandoe wrote: > >> * config/t-darwin (darwin.o, darwin-c.o, darwin-f.o, darwin-driver.o): >> Use COMPILE and POSTCOMPILE. >> * config/x-darwin (host-darwin.o): Likewise. >&g

Re: [Patch, Darwin] update t-* and x-* fragments after switch to auto-deps.

2013-09-28 Thread Iain Sandoe
Hello Joseph, On 28 Sep 2013, at 17:44, Iain Sandoe wrote: > On 28 Sep 2013, at 17:40, Joseph S. Myers wrote: > >> On Sat, 28 Sep 2013, Iain Sandoe wrote: >> >>> * config/t-darwin (darwin.o, darwin-c.o, darwin-f.o, darwin-driver.o): >>> Use COMPILE

[Patch, PPC, committed] fix ppc build breakage.

2013-09-30 Thread Iain Sandoe
Hi, My commit r203019 contained an oversight which is fixed by the obvious patch below. tested on cross to powerpc-linux-gnu and a build of cc1 for AIX-6.1.3 (and stage1 for powerpc-darwin9). applied as r203027 Apologies for the breakage, and that this slipped through my usual testing, Iain g

Re: [PATCH v4 04/20] add configury

2013-09-30 Thread Iain Sandoe
On 30 Sep 2013, at 08:45, Paolo Bonzini wrote: > Il 27/09/2013 21:45, Gerald Pfeifer ha scritto: >> I believe this may be breaking all my testers on FreeBSD >> (i386-unknown-freebsd10.0 for example). The timing of when this >> patchset went in fits pretty much when my builds started to break >>

Re: [C++14] implement [[deprecated]].

2013-10-22 Thread Iain Sandoe
Hi Ed, Paolo, On 22 Oct 2013, at 13:55, Ed Smith-Rowland wrote: > On 10/22/2013 08:37 AM, Paolo Carlini wrote: >> On 10/22/2013 02:28 PM, Ed Smith-Rowland wrote: >>> I think this is pretty easy - gnu::deprecated has the same semantics. >> Unfortunately however, gnu::deprecated has a number of lon

Re: Testsuite / Cilk Plus: Include library path in compile flags in gcc.dg/cilk-plus/cilk-plus.exp

2013-11-03 Thread Iain Sandoe
Hi! On 30 Oct 2013, at 20:55, Joseph S. Myers wrote: > On Wed, 30 Oct 2013, Tobias Burnus wrote: > >> On the other hand, one could use the existence of libcilkrts* as detected by >> the patch to decide whether to link or not: If the library is there, one can >> link – if not found, it is unlikely

[Patch, ObjC, ObjC++, Darwin] Remove "-fobjc-sjlj-exceptions"

2013-11-03 Thread Iain Sandoe
The Objective C/C++ exceptions model is, currently, completely determined by the combination of runtime {gnu, next} and ABI {m32/V1, m64/V2}. Thus, the "-fobjc-sjlj-exceptions" command line option is redundant and may be removed. (note that trunk clang doesn't even accept the option, although xc

[Patch Ada/build] deal with some cross/native cross issues

2013-11-03 Thread Iain Sandoe
Hi, I've been trying to improve the building and testing of Darwin for crosses and native crosses. This has thrown up a few small glitches in the Ada build stuff (that would seem to apply to any build-host-nativeX scenario, not just darwin). I would imagine it would be beneficial to resolve t

Re: Testsuite / Cilk Plus: Include library path in compile flags in gcc.dg/cilk-plus/cilk-plus.exp

2013-11-05 Thread Iain Sandoe
hi Balaji sorry for a short reply, but I'm traveling this week, On 4 Nov 2013, at 23:02, Iyer, Balaji V wrote: > 2). The C tests are extremely time-consuming (m32/m64) with NO -jxx on the > c/l: > > x86_64-linux (32 cores 2.8G Xeon) : 36m/421m/6m > x86_64-darwin12 (8 cores 2.8G Xeon) : 45m

Re: GCC -mach=native on OS X 10.8

2013-11-28 Thread Iain Sandoe
Hello Vera, On 28 Nov 2013, at 13:15, Vera Loeser wrote: > I use the GCC 4.8 from Macports and I'd like to optimize my code by using the > flag -march=native. For that I have to use the assembler of clang, because > the GNU assembler is too old and cannot use the AVX extensions. By setting > t

Re: Two build != host fixes

2013-12-11 Thread Iain Sandoe
On 11 Dec 2013, at 13:11, Bernd Edlinger wrote: > I did not have this one. > What is it good for? > >> # Actual name to use when installing a native compiler. >> GCC_INSTALL_NAME := $(shell echo gcc|sed '$(program_transform_name)') >> diff --git a/gcc/ada/gcc-interface/Make-lang.in >> b/gcc/ada/

Re: [Patch Ada/build] deal with some cross/native cross issues

2013-12-11 Thread Iain Sandoe
Hello Eric, I had made the mods to this and done some light testing - then got side-tracked by other priorities. however, since the topic has come up on the list: On 6 Nov 2013, at 12:57, Eric Botcazou wrote: >> I've been trying to improve the building and testing of Darwin for crosses >> and n

Re: Two build != host fixes

2013-12-12 Thread Iain Sandoe
Hi Eric, On 12 Dec 2013, at 12:11, Bernd Edlinger wrote: >> >>> I have some more fixes for Ada cross-builds that Eric commented on but need >>> a little more work - will try to re-test this evening and re-post tomorrow. >> >> It's also PR ada/55946. Would mind trying the attached patch? >> >>

Re: Two build != host fixes

2013-12-12 Thread Iain Sandoe
Hi Eric, On 12 Dec 2013, at 12:34, Eric Botcazou wrote: >> using your patch + the mod I made for LDFLAGS. > > In gcc-interface/Makefile.in? I wasn't sure if it was really needed. > > Out of curiosity, what do you set LDFLAGS to exactly? Darwin doesn't have gettext in libSystem, I build it as

Re: Two build != host fixes

2013-12-12 Thread Iain Sandoe
On 12 Dec 2013, at 15:23, Eric Botcazou wrote: >> Darwin doesn't have gettext in libSystem, I build it as a convenience >> library, but it still needs to refer to a system framework. For this to >> link the gnattools I need: >> >> LDFLAGS="-L/path/to/my/convenience/lib -framework CoreFoundation"

Re: Two build != host fixes

2013-12-12 Thread Iain Sandoe
On 12 Dec 2013, at 17:21, Eric Botcazou wrote: >> With your blanket change to gnattools/Makefile, isn't it also reasonable to >> apply the following? >> >> diff --git a/gcc/ada/gcc-interface/Make-lang.in >> b/gcc/ada/gcc-interface/Make-lang.in index cd3676f..241571d 100644 >> --- a/gcc/ada/gcc-i

Re: [PATCH] Time profiler - phase 2

2013-12-20 Thread Iain Sandoe
Hi Martin, Thanks for working on this! --- However you have introduced some problems including a bootstrap fail on darwin. On 16 Dec 2013, at 10:13, Jan Hubicka wrote: >> Hello, >> there's updated version of the patch. >> >> Tested on x86_64 with enable bootstrap. >> >> Martin >> >> On 16

[Patch, committed, Darwin] fix pr bootstrap/59541

2014-01-05 Thread Iain Sandoe
I've applied the attached patch as r206348 to fix this bootstrap problem after discussion with Honza last week on irc. Thanks to Dominique for helping with testing across the platform variants. Happy New Year! Iain gcc: PR bootstrap/59541 * config/darwin.c (darwin_function_secti

Re: [PATCH g++ driver] Push -static-libstdc++ back onto the command line to allow spec substitutions to use it.

2015-07-12 Thread Iain Sandoe
Ping On 18 Jun 2015, at 09:12, Iain Sandoe wrote: > Hi, > > This came up in a User question last night and reminded me that I had a patch > for it in my Q. > > > > Usually g++ driver support for -static-libstdc++ is provided by "-Bstatic > -lstdc++ -Bdy

Re: [PATCH g++ driver] Push -static-libstdc++ back onto the command line to allow spec substitutions to use it.

2015-07-14 Thread Iain Sandoe
On 14 Jul 2015, at 18:24, Jason Merrill wrote: > On 06/18/2015 04:12 AM, Iain Sandoe wrote: >> The patch below pushes -static-libstdc++ onto the output command line (for >> targets without -Bstatic/dynamic) so that such specs have an opportunity to >> fire. >

Re: config header file reduction patch checked in.

2015-10-18 Thread Iain Sandoe
ut you need to ask, because we have (very) limited resources in time and hardware ;-) ... thanks for tidying things up! (I, for one, think that improving the separation of things is worth a small amount of pain along the way). cheers, Iain gcc/ +2015-10-18 Iain Sandoe + + * config/dar

Re: [PATCH, libiberty] Fix PR63758 by using the _NSGetEnviron() API on Darwin.

2015-10-18 Thread Iain Sandoe
On 8 Sep 2015, at 15:27, Ian Lance Taylor wrote: > On Tue, Sep 8, 2015 at 7:20 AM, Iain Sandoe wrote: >> >>> This seems likely to break cross-compilers to Darwin that do not have >>> the system libraries available. I guess I don't care about that if >>

Re: [Darwin, Driver/specs] A bit more TLC, factor version-min code, lose some dead specs.

2015-10-18 Thread Iain Sandoe
c/ChangeLog === --- gcc/ChangeLog (revision 228943) +++ gcc/ChangeLog (working copy) @@ -1,5 +1,15 @@ 2015-10-18 Iain Sandoe + * config/darwin-driver.c (darwin_default_min_version): Refactor code. + (darwin_driver_

[pushed] testsuite, Darwin: XFAIL runs for two timode conversion tests.

2020-08-09 Thread Iain Sandoe
Hi, X86 Darwin fails two TI mode conversions at present, because (to work around PR80556) we insert libSystem ahead of libgcc. The libSystem implementation has a similar bug to one that was fixed for GCC. We need to fix 80556 properly, and then this issue will go away - we will be able to use th

Re: r11-2663 causes static_assert failure

2020-08-13 Thread Iain Sandoe
Iain Sandoe via Gcc-patches wrote: Jakub Jelinek via Gcc-patches wrote: On Thu, Aug 13, 2020 at 02:06:21PM +0200, Tobias Burnus wrote: Build server is x86_64-gnu-linux, "i686-pc-linux-gnu-g++" is a native binary of GCC 5.2.0 [Don't ask why i686 and not x86_64 is used.]

Re: [PATCH] introduce attribute exalias

2020-08-15 Thread Iain Sandoe
Hi Alexandre, I built the patch on x86_64-linux and darwin*** (fwiw). * It’s firmly agreed that there are times when referring to C++ mangled names is less than ideal. * IIUC, the objective is to have a short-hand way of annotating an export from C++ so that it’s (a) more human-readable a

Re: [PATCH] introduce attribute exalias

2020-08-15 Thread Iain Sandoe
HI Alexandre I don’t want to derail the discussion - but FIO mostly…. Alexandre Oliva wrote: On Aug 15, 2020, Iain Sandoe wrote: * if the target ABI does not support symbol aliases, then this facility cannot be used. True. I'm surprised there are modern platforms that

Re: [PATCH] introduce attribute exalias

2020-08-25 Thread Iain Sandoe
Alexandre Oliva wrote: On Aug 15, 2020, Iain Sandoe wrote: Alexandre Oliva wrote: I'm pretty sure setting multiple labels at the same address is used and relied on quite often. That’s what’s currently disallowed (the assemblers all support .set). I understand you mean

Darwin: Fix wrong quoting on an error string (PR93860).

2020-02-21 Thread Iain Sandoe
The quotes should surround all of the literal content from the pragma that has incorrect usage. Fixed as below, tested on x86_64-apple-darwin16, applied to master, thanks Iain 2020-02-21 Iain Sandoe PR target/93860 * config/darwin-c.c (pop_field_alignment): Adjust quoting of

[PATCH] coroutines: Amend parameter handling to match n4849.

2020-02-26 Thread Iain Sandoe
the promise CTOR and ensures the correct use. * Copies all params into the frame regardless of whether the coro body uses them (this is a bit unfortunate, and we should figure out an amendment for C++23). gcc/cp/ChangeLog: 2020-02-26 Iain Sandoe * coroutines.cc (struct

Results for 10.0.1 20200227 (experimental) [master revision r10-6885-g5f9cd512c427] (GCC) testsuite on x86_64-apple-darwin1

2020-02-28 Thread Iain Sandoe
LAST_UPDATED: Thu Feb 27 09:29:19 UTC 2020 (revision r10-6885-g5f9cd512c427) === acats tests === === acats Summary === # of expected passes2320 # of unexpected failures0 Native configuration is x86_64-apple-darwin16 === g++ test

[committed] coroutines: Update func-params-08.C test to suspend three times.

2020-02-28 Thread Iain Sandoe
gcc/testsuite/ChangeLog: 2020-02-28 Iain Sandoe * g++.dg/coroutines/torture/func-params-08.C: Update to suspend for each co_await operation. diff --git a/gcc/testsuite/g++.dg/coroutines/torture/func-params-08.C b/gcc/testsuite/g++.dg/coroutines/torture/func-params

coroutines: Add a test for non-trivial await_resume return type (NFC).

2020-02-29 Thread Iain Sandoe
Hi Just an improvement to test coverage. Tested on x86_64 darwin and linux, applied to master thanks Iain gcc/testsuite/ChangeLog: 2020-02-29 Iain Sandoe * g++.dg/coroutines/coro1-ret-int-yield-int.h: Add templated awaitable. * g++.dg/coroutines/torture

Darwin, libsanitizer: Adjust minimum supported Darwin version (PR93731).

2020-03-01 Thread Iain Sandoe
Darwin <= 11. tested on configurations for Darwin8..12 applied to master thanks Iain 2020-03-01 Iain Sandoe PR sanitizer/93731 * configure.tgt (x86_64-*-darwin*, i?86-*-darwin*): Enable by default only for Darwin versions greater than 12 (macOS 10.8). diff --gi

[committed] coroutines: Test that we correctly use class data members.

2020-03-01 Thread Iain Sandoe
Hi, No code changes, just improve test coverage. tested on x86_64 darwin and linux applied to mainline. thanks Iain gcc/testsuite/ChangeLog: 2020-03-01 Iain Sandoe * g++.dg/coroutines/torture/class-07-data-member.C: New test. diff --git a/gcc/testsuite/g++.dg/coroutines/torture

[PATCH] coroutines: Don't make duplicate frame copies of awaitables.

2020-03-02 Thread Iain Sandoe
times). gcc/cp/ChangeLog: 2020-03-02 Iain Sandoe * coroutines.cc (build_co_await): Do not build frame awaitable proxy vars when the co_await expression is a function parameter or local var. (co_await_expander): Do not initialise a frame var with i

[PATCH] coroutines: Update lambda capture handling to n4849.

2020-03-02 Thread Iain Sandoe
is patch removes the additional copying behaviour for lambda capture-by- copy vars. @JunMa, this supercedes your fix to the aliases, which should no longer be necessary, but i’ve added your testcases to this patch. gcc/cp/ChangeLog: 2020-03-02 Iain Sandoe * coroutines.cc (struct local_

[committed] Darwin, libsanitizer: Update minimum supported system version.

2020-03-03 Thread Iain Sandoe
Hi, The imported sources from 'upstream’ on the 9 branch do not support Darwin10 or earlier, so do not enable these by default. tested on x86_64-darwin and linux, applied to the branch thanks Iain libsanitizer/ChangeLog: 2020-03-03 Iain Sandoe * configure.tgt (x86_64-*-darwi

Re: [PING PATCH coroutines] Set side effects flag for BIND_EXPR which build in maybe_promote_captured_temps

2020-03-05 Thread Iain Sandoe
Hello JunMa, JunMa wrote: Ping Thanks for your patch(es) and I am sorry this has taken some time to review. (right now, we’re trying to ensure that we have the latest standard represented in GCC10, so updating to n4849). 在 2020/2/27 上午10:17, JunMa 写道: 在 2020/2/11 上午10:50, JunMa 写道: H

Re: [PING PATCH coroutines] Do not strip cleanup_point when promote temporaries out of current stmt

2020-03-05 Thread Iain Sandoe
Hello JunMa, JunMa wrote: Ping Once again, sorry for taking time to review this. 在 2020/2/27 上午10:18, JunMa 写道: 在 2020/2/11 上午10:14, JunMa 写道: Kindly ping Regards JunMa Hi In maybe_promote_captured_temps, the cleanup_point_stmt has been stripped when handle temporaries captured by refer

Re: [PING PATCH coroutines] Do not strip cleanup_point when promote temporaries out of current stmt

2020-03-11 Thread Iain Sandoe
Bin.Cheng wrote: > On Thu, Mar 5, 2020 at 10:18 PM Iain Sandoe wrote: >> With current trunk + Bin’s two approved patches. >> >> I see no change in the testcase (lambda-09-capture-object.C) before / after >> the patch >> (it fails for me at -O0 only - in b

[COMMITTED] coroutines: Fix indentation (NFC).

2020-03-15 Thread Iain Sandoe
Hi Whitespace-only change. Tested on x86_64-darwin, applied to master. thanks Iain gcc/cp/ChangeLog: 2020-03-15 Iain Sandoe * coroutines.cc (co_await_expander): Fix indentation. diff --git a/gcc/cp/coroutines.cc b/gcc/cp/coroutines.cc index 920575b0f54..f70b3ab69ab 100644

[COMMITTED] coroutines, testsuite: Fix single test execution.

2020-03-17 Thread Iain Sandoe
Hi, As Bin noticed, invocations of the coro-torture.exp like 'coro-torture.exp=some-test.C’ were failing because DEFAULT_CXXFLAGS was undefined. Fixed by defining this locally, if it has no pre-existing global value. tested on x86_64-darwin, applied to mainline as obvious. thanks Iain diff --g

[PATCH] coroutines: Implement n4849 changes to exception handling.

2020-03-20 Thread Iain Sandoe
considered in the same manner as exceptions thrown by the user's function body. This implements [dcl.fct.def.coroutine] / 5.3. tested on x86_64-{linux, darwin} powerpc-linux, OK for master? thanks Iain gcc/cp/ChangeLog: 2020-03-20 Iain Sandoe * coroutin

[PATCH] Darwin: Fix i686 bootstrap when the assembler supports GOTOFF in data.

2020-03-21 Thread Iain Sandoe
tage. OK for master (for the i386.h part of the change)? backports to open branches (for the i386.h part of the change)? thanks Iain. gcc/ChangeLog: 2020-03-21 Iain Sandoe * config/i386/darwin.h (JUMP_TABLES_IN_TEXT_SECTION): Remove references to Darwin.

[committed] Darwin: Address translation comments (PR93694).

2020-03-21 Thread Iain Sandoe
This updates the options descriptions after feedback from a translator. tested on x86_64-darwin16, applied to master, thanks Iain gcc/ChangeLog: 2020-03-21 Iain Sandoe PR target/93694 * gcc/config/darwin.opt: Amend options descriptions. diff --git a/gcc

[committed] Darwin: Handle NULL DECL_SIZE_TYPE in machopic_select_section (PR94237).

2020-03-21 Thread Iain Sandoe
. tested across the darwin range, applied to master, thanks Iain gcc/ChangeLog: 2020-03-21 Iain Sandoe PR lto/94237 * config/darwin.c (darwin_mergeable_constant_section): Collect section anchor checks into the caller. (machopic_select_section): Collect section anc

[committed] testsuite: Fix lambda-vis.C for targets with user label prefix '_'.

2020-03-22 Thread Iain Sandoe
Hi The lambda-vis.C test fails everywhere for targets that use a ‘_’ as USER_LABEL_PREFIX. This prepends an optional match for the additional USER_LABEL_PREFIX to the scan assembler checks. Tested on x86_64-darwin, and linux, applied to master as obvious, thanks Iain 2020-03-22 Iain

Re: [PATCH] coroutines: Implement n4849 recommended symmetric transfer.

2020-03-24 Thread Iain Sandoe
Nathan Sidwell wrote: > On 3/20/20 11:40 AM, Iain Sandoe via Gcc-patches wrote: > >>tree suspend = TREE_VEC_ELT (awaiter_calls, 1); /* await_suspend(). */ >> + tree susp_type; >> + if (TREE_CODE (suspend) == CALL_EXPR) >> +{ >> + susp_type =

Re: [PATCH] coroutines: Implement n4849 recommended symmetric transfer.

2020-03-24 Thread Iain Sandoe
Nathan Sidwell wrote: On 3/24/20 2:08 PM, Iain Sandoe wrote: Hi Nathan, Thanks for the review, comments embedded and a new version attached. @David, you added the CALL_EXPR_MUST_TAIL_CALL which I’ve made use of here (but with an observation). Perhaps you would be able to comment on whether

[committed] coroutines: Fix missing dereference (PR94319).

2020-03-25 Thread Iain Sandoe
Hi This fixes a typo spotted by static analysis. tested on x86_64-darwin, applied to master as obvious thanks Iain gcc/cp/ChangeLog: 2020-03-25 Iain Sandoe PR c++/94319 * coroutines.cc (captures_temporary): Fix a missing dereference. diff --git a/gcc/cp

[PATCH v2] coroutines: Implement n4849 changes to exception handling.

2020-03-25 Thread Iain Sandoe
Hi, Iain Sandoe wrote: > This is the first of two remaining changes needed to bring the GCC > implementation into line with the standard draft at n4849. Here is a revised version with the “initial await resume called” variable renamed to be more consistent, as we discussed off-list.

[PATCH v3] coroutines: Implement n4849 recommended symmetric transfer.

2020-03-25 Thread Iain Sandoe
Nathan Sidwell wrote: > On 3/24/20 2:08 PM, Iain Sandoe wrote: > >>tree suspend = TREE_VEC_ELT (awaiter_calls, 1); /* await_suspend(). */ >> + tree susp_type; >> + if (tree fndecl = cp_get_callee_fndecl_nofold (suspend)) >> +susp_type = TREE_TYPE (T

Re: [PING PATCH coroutines] Do not strip cleanup_point when promote temporaries out of current stmt

2020-03-26 Thread Iain Sandoe
Hi Bin, Bin.Cheng via Gcc-patches wrote: On Mon, Mar 16, 2020 at 5:34 PM Bin.Cheng wrote: On Wed, Mar 11, 2020 at 5:07 PM Iain Sandoe wrote: Bin.Cheng wrote: On Thu, Mar 5, 2020 at 10:18 PM Iain Sandoe wrote: With current trunk + Bin’s two approved patches. I see no change in the

[pushed] coroutines: Spelling corrections in comments [NFC].

2020-07-16 Thread Iain Sandoe
Hi Correct some typos noticed while working on another patch. tested on x86_64-darwin, pushed to master, thanks Iain gcc/cp/ChangeLog: * coroutines.cc: Correct some spelling errors in comments. --- gcc/cp/coroutines.cc | 22 +++--- 1 file changed, 11 insertions(+

[PATCH] coroutines: Correct frame capture of compiler temps [PR95591+4].

2020-07-16 Thread Iain Sandoe
Hello folks, This is a patch correcting a thinko on my part which turns out to have quite serious consequences for coroutines. Sorry it took longer to clean up than I expected. 1/ I am sad that this is (too) late for 10.2 .. .. my advice to distros would be to apply the patch to 10.2… I will c

Re: [PATCH] coroutines: Correct frame capture of compiler temps [PR95591+4].

2020-07-16 Thread Iain Sandoe
Nathan Sidwell wrote: On 7/16/20 11:56 AM, Iain Sandoe wrote: It's unfortunate the original plan of handling lifetime issues in a gimple pass didn't work out. I’ve revisited this (on balance every couple of months, I suppose when it gets tricky doing something in the FE). H

[PATCH] libstdc++, coroutine: Add missing constexpr markers.

2020-07-17 Thread Iain Sandoe
Hi As per http://eel.is/c++draft/coroutine.trivial.awaitables the methods for the trivial awaitables are supposed to be constexpr. tested on x86_64-linux, darwin powerpc64-linux, OK for master? for 10.3? thanks Iain --- The methods of the trivial awaitables are intended to be constexpr.

Re: committed] correct memcmp expansion of constant representations containing embedded nuls (PR 95189)

2020-07-22 Thread Iain Sandoe
Hi Martin, Rainer Orth wrote: I have committed this change in r11-2231 after Jeff approved it off list last Thursday. the new gcc.target/i386/memcpy-pr95886.c test FAILs on 32-bit x86 (i386-pc-solaris2.11): +FAIL: gcc.target/i386/memcpy-pr95886.c scan-rtl-dump-times expand "const_int 1976

[pushed] C++, testsuite: Adjust pure-virtual1.C options for Darwin.

2020-07-25 Thread Iain Sandoe
Hi, Darwin's static linker expects, by default, that all linkage will be satisfied (even for weak items). This allows the two-level namespace to work even for weak cases. However, there's an option to make it behave in a similar manner to ELF. This is needed for the pure-virtual1.C testcase to

[pushed] Darwin: Handle poly_int machine modes.

2020-08-03 Thread Iain Sandoe
Hi I’ve started looking at the changes to the Darwin port that will be needed to support the AArch64 version of the OS. One of those is that it will be necessary to support poly-int machine modes where the number of coeffs > 1. @richard, as discussed on irc, this removes the ‘IN_TARGET_CODE’ cha

[pushed] Darwin: Guard two macros in darwin.h.

2020-08-03 Thread Iain Sandoe
Hi Work on the Arm64 port shows that these two macros can be declared ahead of the version in darwin.h which needs to override (for X86 and PPC this wasn't needed). tested across the Darwin range currently supported. pushed to master. thanks Iain gcc/ChangeLog: * config/darwin.h (ASM_DE

[committed] coroutines, testsuite: Fix symmetric-transfer-00-basic.C on Linux.

2020-03-26 Thread Iain Sandoe
Hi. I failed to comment out some test printing before committing the testcase. However, for that to work, we need to include on Linux platforms. tested on x86_64-linux-gnu, applied to master. thanks Iain 2020-03-27 Iain Sandoe * g++.dg/coroutines/torture/symmetric-transfer

Re: issue with behavior change of gcc -r between gcc-8 and gcc-9

2020-04-01 Thread Iain Sandoe
Olivier Hainque wrote: Hello again, On 01 Apr 2020, at 19:48, Olivier Hainque wrote: * gcc.c (LINK_COMMAND_SPEC): Handle -r like -nostdlib. Would it be possible to revert to the previous behavior and document it ? Or maybe allow it to be controllable by the target ports ? perh

[committed] coroutines, testsuite: Renumber two tests (NFC).

2020-04-05 Thread Iain Sandoe
Hi, This fixes a nit in the numbering of tests that I spotted while working on open PRs. tested on x86_64-linux/darwin. applied to master thanks Iain Try to keep tests order by distinct number (and with a short descriptive name appended). gcc/testsuite/ 2020-04-05 Iain Sandoe

[committed] coroutines: ensure placeholder var is properly declared.

2020-04-07 Thread Iain Sandoe
coroutine frame entry (so that the var created is elided by a later phase). However, we should ensure that the var is correctly declared anyway. gcc/cp/ChangeLog: 2020-04-07 Iain Sandoe * coroutines.cc (maybe_promote_captured_temps): Ensure that reference capture

Re: [PING PATCH coroutines] Do not strip cleanup_point when promote temporaries out of current stmt

2020-04-07 Thread Iain Sandoe
Bin.Cheng wrote: > On Mon, Mar 16, 2020 at 5:34 PM Bin.Cheng wrote: >> On Wed, Mar 11, 2020 at 5:07 PM Iain Sandoe wrote: >>> Bin.Cheng wrote: >>> >>>> On Thu, Mar 5, 2020 at 10:18 PM Iain Sandoe wrote: >>> If it helps, I could push a branch

[committed] coroutines: Revise await expansions [PR94528]

2020-04-10 Thread Iain Sandoe
comments. c: Generalize await statement expansion. This revises the expansion to avoid the need to expand conditionally on the tree type. It resolves PR 94528. gcc/cp/ChangeLog: 2020-04-10 Iain Sandoe PR c++/94528 * coroutines.cc (co_await_expander): Remove

<    2   3   4   5   6   7   8   9   10   11   >