[Darwin, machopic 11/n, committed] A flag to indicate synbols should be linker-visible.

2019-11-10 Thread Iain Sandoe
Some of the solution to PR71767 is incomplete, and we need finer-grained control over whether symbols need to be made linker-visible. This is a preparation patch, providing the flag. tested on x86_64-darwin16, applied to mainline. thanks gcc/ChangeLog: 2019-11-10 Iain Sandoe

[pushed] testsuite, X86 : Add target requires masm_intel to three tests.

2020-11-01 Thread Iain Sandoe
Hi These tests currently fail on targets without Intel assembler support. Tested that they are now UNSUPPORTED on x86_64-darwin, which does not have -masm=intel support. pushed to master as trivial/obvious. thanks Iain gcc/testsuite/ChangeLog: * gcc.target/i386/amxbf16-asmintel-1.c: R

[pushed] Objective-C/C++ : Improve '@' keyword locations.

2020-11-01 Thread Iain Sandoe
Hi When we are lexing tokens for Objective-C, we combine '@' tokens with a following keyword (when that keyword is a valid Objective-C one or, for Objective-C, one of the C++ keywords that can appear in this position). The responsibility is passed on to the parser to validate the resulting combin

[pushed] Objective-C : Implement SEL as a built-in typedef.

2020-11-01 Thread Iain Sandoe
Hi The reference implementation for Objective-C provides the SEL typedef (although it is also available from ). tested on x86_64-darwin, x86_64-linux-gnu pushed thanks Iain gcc/objc/ChangeLog: * objc-act.c (synth_module_prologue): Get the SEL identifier. * objc-act.h (enum objc_

[pushed] Darwin: Adjust the PCH area to allow for 16384byte page size.

2020-11-01 Thread Iain Sandoe
Hi The new version of Darwin report pagesize 16384 which means that we need to adjust the aligment of the PCH area. tested across the Darwin range (32 and 64 bit hosts) and on x86_64-linux-gnu pushed to master thanks Iain gcc/ChangeLog: * config/host-darwin.c: Align pch_address_space to

[pushed] Darwin: Darwin 20 is to be macOS 11 (Big Sur).

2020-11-06 Thread Iain Sandoe
Hi, It looks like the next macOS release is imminent. Tested across the Darwin patch, and on x86_64-linux-gnu, pushed to master thanks Iain -- As per Nigel Tufnel's assertion "... this one goes to 11". The various parts of the code that deal with mapping Darwin versions to macOS (X) versio

[pushed] Objective-C/C++ (parsers) : Update @property attribute parsing.

2020-11-06 Thread Iain Sandoe
Hi This is preparatory work for bringing at least one aspect of the Objective-C implementation up to date. Tested on a number of Darwin revisions, and x86_64-linux-gnu pushed to master, thanks Iain --- At present, we are missing parsing and checking for around half of the property attribute

[pushed] Objective-C/C++ : Allow visibility prefix attributes on interfaces.

2020-11-06 Thread Iain Sandoe
Hi, Some system headers apply visibility attributes to Objective-C @interface declarations. Those are “default”, but still need to be accepted. tested across the Darwin patch and on x86_64-linux-gnu, pushed to master, thanks Iain - This passes visibility through without warning (so that, f

[PATCH] Objective-C : Implement NSObject attribute.

2020-11-06 Thread Iain Sandoe
Hi Originally, I had this as a Darwin-only patch, however GNUStep also makes use of NSObject and similar constructs, so this really needs to be available to linux-gnu as well. tested across several Darwin versions and on x86_64-linux-gnu. OK for the c-family changes? thanks Iain = This att

[PATCH] Objective-C/C++ (C-family) : Add missing 'atomic' property attribute.

2020-11-06 Thread Iain Sandoe
Hi Arguably, this is actually a bug fix since the ‘atomic’ attribute is paired with the ‘nonatomic’ one. However it is the default and was omitted when the @property implementation was added. ‘atomic’ in Objective-C terms is not specified in relation to _Atomic or std::atomic (the _Atomic keywor

[pushed] Ada : Fix bootstrap after r11-4793.

2020-11-07 Thread Iain Sandoe
Hi The patch omitted a change for Ada, fixed thus. tested on x86_64-darwin, pushed to master as obvious/bootstrap fix. thanks Iain gcc/ada/ChangeLog: * gcc-interface/misc.c (gnat_printable_name): Change DECL_IS_BUILTIN -> DECL_IS_UNDECLARED_BUILTIN. --- gcc/ada/gcc-interface/mi

Re: Rename DECL_IS_BUILTIN to DECL_IS_UNDECLARED_BUILTIN

2020-11-07 Thread Iain Sandoe
Andreas Schwab wrote: ../../gcc/ada/gcc-interface/misc.c: In function 'const char* gnat_printable_name(tree, int)': ../../gcc/ada/gcc-interface/misc.c:562:47: error: 'DECL_IS_BUILTIN' was not declared in this scope if (verbosity == 2 && !DECL_IS_BUILTIN (decl)) should be fixed by https:

[PATCH] Objective-C++ : Allow prefix attrs on linkage specs.

2020-11-07 Thread Iain Sandoe
Hi, For Objective-C++/C, we cater for the possibility that a class interface (@interface) might be preceded by prefix attributes. In the case of Objective-C++, the reference implementation (a.k.a. clang) also allows (and combines) prefix attributes that precede a linkage specification (but only o

[PATCH] CFI-handling : Add a hook to allow target-specific Personality and LSDA indirections.

2020-11-07 Thread Iain Sandoe
Hi ** Actually, this was originally posted during last stage-1, but I forgot to keep pinging it… At present, the output of .cfi_personality and .cfi_lsda assumes ELF semantics for indirections. This isn't suitable for all targets and is one blocker to moving Darwin to use .cfi_. T

[pushed] testsuite, Darwin, X86 : Add target requires native tls to test.

2020-11-08 Thread Iain Sandoe
Hi The builtin_thread_pointer test does not work for emulated TLS. Add a target requires to cover this. tested on x86_64-darwin, x86_64-linux-gnu pushed to master, Iain gcc/testsuite/ChangeLog: * gcc.target/i386/builtin_thread_pointer.c: Require native TLS. --- gcc/testsuite/gcc.target

[pushed] Objective-C/C++ : Handle parsing @property 'class' attribute.

2020-11-08 Thread Iain Sandoe
Hi (this change reused the existing ‘class’ keyword and RID, so only needed Objective-C context modifications). tested on x86_64-darwin, x86_64-linux-gnu, pushed to master, thanks Iain This attribute states that a property is one manipulated by class methods (it requires a static variable

Re: [PATCH] C-family : Add attribute 'unavailable'.

2020-11-10 Thread Iain Sandoe
Hi Richard, Richard Biener wrote: On Mon, 9 Nov 2020, Iain Sandoe wrote: Hi, I?ve been carrying this patch around on my Darwin branches for a very long time? tested across the Darwin patch and on x86_64-linux-gnu, OK for master? thanks Iain = commit message If an interface is marked

[PATCH v2] C-family : Add attribute 'unavailable'.

2020-11-10 Thread Iain Sandoe
Hi Jospeh, Joseph Myers wrote: > This patch seems to be missing documentation for the new attribute in > extend.texi. Apologies, for that omission, revised patch includes the documentation and also addresses Richi’s comments. documentation patch tested with “make pdf” and visual inspection of

Re: [PATCH] Objective-C : Implement NSObject attribute.

2020-11-10 Thread Iain Sandoe
Hi Jeff, Jeff Law wrote: This attribute allows pointers to be marked as pointers to an NSObject-compatible object. This allows for additional OK with a suitable update to documentation. I have no idea the attribute is supposed to do. Joseph ack’d this and I applied it to master .. ..

[PATCH] C++ : Add the -stdlib= option.

2020-11-11 Thread Iain Sandoe
resending - the first & second attempt didn’t seem to make it to gcc-patches. Hi This option allows the user to specify alternate C++ runtime libraries, for example when a platform uses libc++ as the installed C++ runtime. It is the same spelling as a clang option that allows that to use libstd

[PATCH] C-Family, Objective-C : Implement Objective-C nullability Part 1 [PR90707].

2020-11-12 Thread Iain Sandoe
Hi, The PR notes that our inability to parse these keywords in GNU Objective-C is one of the contributing factors to being unable to use some important system headers (at least, on Darwin platforms). tested on x86_64-darwin and x86_64-linux-gnu, OK for the C-family changes? thanks Iain — com

[pushed] doc : Fix build error from r11-4972.

2020-11-13 Thread Iain Sandoe
(aonther re-send, no sign of the message on patches archive) Hi As reported on irc, some tex tools don’t like @r{} commands being split. For the record, I tried a number of things to wrap the line: 1/ putting the @r{} on the line after the @item that didn't work - the (Objective-C and Object

[pushed] testsuite, Objective-C : Amend PR23214 for Darwin11.

2020-11-14 Thread Iain Sandoe
Hi, The test needs to use Object rather than NSObject on this and earlier OS versions. Although the PR reports against the GNU runtime, we run this on NeXT as well. tested on x86_64-darwin11 and x86_64-darwin16 pushed to master, thanks Iain gcc/testsuite/ChangeLog: * objc.dg/pr23214.m:

Re: [pushed] Objective-C/C++ (parsers) : Update @property attribute parsing.

2020-11-16 Thread Iain Sandoe
Hi Martin, Martin Liška wrote: On 11/6/20 8:54 PM, Iain Sandoe wrote: +/* Provide a dummy type for the RID enum used as an argument to + objc_prop_attr_kind_for_rid () */ +enum rid { DUMMY }; + I've noticed the hunk caused the following -Wodr warning: ../libdecnumber/libdecnum

[pushed] C-family : Fix a C++ ODR violation [PR97854].

2020-11-16 Thread Iain Sandoe
Hi The changes in r11-4799 introduced a dummy enum rid type with a different initial member name to the actual version (an ODR violation). Fixed by including the header declaring the actual type. tested --with-build-config=bootstrap-lto on Linux and --with-build-config=bootstrap-lto-noplugin o

Re: [pushed] Objective-C/C++ (parsers) : Update @property attribute parsing.

2020-11-16 Thread Iain Sandoe
Martin Liška wrote: On 11/16/20 10:00 AM, Iain Sandoe wrote: ../../gcc/c-family/stub-objc.c:30: note: an enum with different value name is defined in another translation unit 30 | enum rid { DUMMY }; I’m not disagreeing, of course (and will sort it out).. .. but I don’t see this

Re: [C++ coroutines 5/7, v3] Standard library header.

2020-01-09 Thread Iain Sandoe
wrote: > On 09/01/20 12:39 +0000, Iain Sandoe wrote: >> +#ifndef _GLIBCXX_EXPERIMENTAL_COROUTINE >> +#define _GLIBCXX_EXPERIMENTAL_COROUTINE 1 > > Did you mean to leave EXPERIMENTAL in this macro? no, dropped. >> >> + template struct coroutine_traits > >

[C++ coroutines 7/7] libiberty demangler update.

2020-01-11 Thread Iain Sandoe
Ian Lance Taylor wrote: > Iain Sandoe writes: >> 2020-01-09 Iain Sandoe >> >> * cp-demangle.c (cplus_demangle_operators): Add the co_await >> operator. > > Please add something to libiberty/testsuite/demangle-expected. Thanks. done***, OK no

Re: [PATCH v3] Updated the Fix:

2020-01-12 Thread Iain Sandoe
Jason Merrill wrote: On 11/3/19 6:42 AM, Kamlesh Kumar wrote: ChangeLog Entries: --- 2019-11-02 Kamlesh Kumar * cp-demangle.c (d_expr_primary): Handle nullptr demangling. * testsuite/demangle-expected: Added test. This test is failing in at least some pl

Re: [wwwdocs] Git transition - how to access private user and vendor branches

2020-01-12 Thread Iain Sandoe
Segher Boessenkool wrote: > Hi Richard, > > On Thu, Jan 09, 2020 at 04:50:03PM +, Richard Earnshaw (lists) wrote: >> Given the proposed intention to use non-standard refspecs for private >> and vendor branches I've written some notes on how to use these. >> >> It would be helpful if someon

Re: [wwwdocs] Git transition - how to access private user and vendor branches

2020-01-13 Thread Iain Sandoe
Segher Boessenkool wrote: On Sun, Jan 12, 2020 at 01:31:13PM +, Iain Sandoe wrote: Segher Boessenkool wrote: Why would people want to name their local branches "me/thing" instead of just "thing", btw? it’s a way of making things distinct and allows the push rule

Re: Analyzer committed to master (was Re: Analyzer status)

2020-01-15 Thread Iain Sandoe
Dimitar Dimitrov wrote: On Wed, 15.01.2020, 14:30:43 EET Rainer Orth wrote: Hi David, I've rebased and squashed the analyzer patch kit and squashed patch 2 of the hash_table fix into it, and re-tested it successfully, so I've pushed it to master (as 757bf1dff5e8cee34c0a75d06140ca972bfecfa7).

Re: [C++ coroutines 4/6] Middle end expanders and transforms.

2020-01-16 Thread Iain Sandoe
Bin.Cheng wrote: >>> + gassign *get_res = gimple_build_assign (lhs, done); >>> + gsi_replace (gsi, get_res, true); >>> + *handled_ops_p = true; >>> + } >>> + break; >>> + } >>> +} >>> + return NULL_TREE; >>> +} >>> + >>> +/* Main entry poin

limit on emails for merge commits.

2020-01-16 Thread Iain Sandoe
I have a merge commit to devel/c++-coroutines, which is intended to refect the state at the point of commit to trunk. However, I cannot push that commit because: remote: *** This update introduces too many new commits (284), which would remote: *** trigger as many emails, exceeding the current

Re: limit on emails for merge commits.

2020-01-17 Thread Iain Sandoe
Hi Folks, Joel Brobecker wrote: You should include Joel on such questions as the expert on the hooks. I don't know whether there's something to put in the commit message to say "allow this merge of more than 100 commits". I don't think a squashed merge is the right workaround, supposing you

[C++ coroutines] Initial implementation pushed to master.

2020-01-18 Thread Iain Sandoe
e CD we worked to. [C++ coroutines 6] Testsuite. There are two categories of test: 1. Checks for correctly formed source code and the error reporting. 2. Checks for transformation and code-gen. The second set are run as 'torture' tests for the standard options set,

Re: [C++ coroutines] Initial implementation pushed to master.

2020-01-18 Thread Iain Sandoe
Hi Jakub, Jakub Jelinek wrote: On Sat, Jan 18, 2020 at 12:53:48PM +, Iain Sandoe wrote: Thanks. Shouldn't this be mentioned in https://gcc.gnu.org/projects/cxx-status.html ? * This is not enabled by default (even for -std=c++2a), it needs -fcoroutines. And, if this is the pl

Re: [C++ coroutines] Initial implementation pushed to master.

2020-01-20 Thread Iain Sandoe
Richard Biener wrote: On Sat, Jan 18, 2020 at 2:02 PM Iain Sandoe wrote: Hi Jakub, Jakub Jelinek wrote: On Sat, Jan 18, 2020 at 12:53:48PM +, Iain Sandoe wrote: Thanks. Shouldn't this be mentioned in https://gcc.gnu.org/projects/cxx-status.html ? * This is not enabl

Re: [PATCH Coroutines]Fix false warning message about missing return

2020-01-20 Thread Iain Sandoe
Hi Bin, bin.cheng wrote: The patch sets current_function_returns_value flag in templates for all co_return/co_yield/co_await cases, as well as for ramp function. This fixes false warning message for case like the added, or various cases in cppcoro. gcc/cp 2020-01-20 Bin Cheng *

Re: [PATCH Coroutines] Add error messages for missing methods of awaitable class

2020-01-20 Thread Iain Sandoe
Hi JunMa, JunMa wrote: gcc/cp 2020-01-20 Jun Ma * coroutines.cc (lookup_awaitable_member): Lookup an awaitable member. (build_co_await): Use lookup_awaitable_member instead of lookup_member. (finish_co_yield_expr, finish_co_await_expr): Add error check on return

Re: [PATCH Coroutines]Fix ICE when co_awaiting on void type

2020-01-20 Thread Iain Sandoe
Hi Bin, bin.cheng wrote: gcc/cp 2020-01-20 Bin Cheng * coroutines.cc (build_co_await): Skip getting complete type for void. gcc/testsuite 2020-01-20 Bin Cheng * g++.dg/coroutines/co-await-void_type.C: New test.<0001-Fix-ICE-when-co_awaiting-on-void-type.patch> This LG

Re: [PATCH Coroutines] Fix issue with unused corutine function parameters

2020-01-20 Thread Iain Sandoe
Hi JunMa, JunMa wrote: Hi Accroding to N4835: When a coroutine is invoked, a copy is created for each coroutine parameter. While in current implementation, we only collect used parameters. This may lost behavior inside constructor and destructor of unused parameters. This patch change the imp

Re: [PATCH Coroutines]Fix ICE when co_awaiting on void type

2020-01-20 Thread Iain Sandoe
Hi Bin, Bin.Cheng wrote: On Mon, Jan 20, 2020 at 5:28 PM Jakub Jelinek wrote: On Mon, Jan 20, 2020 at 08:59:20AM +, Iain Sandoe wrote: Hi Bin, bin.cheng wrote: gcc/cp 2020-01-20 Bin Cheng * coroutines.cc (build_co_await): Skip getting complete type for void. gcc

Re: [PATCH Coroutines]Fix ICE when co_awaiting on void type

2020-01-20 Thread Iain Sandoe
Hi Richard, Richard Sandiford wrote: Jakub Jelinek writes: On Mon, Jan 20, 2020 at 08:59:20AM +, Iain Sandoe wrote: Do you really need one byte extra? I mean, sizeof ("__parm.") already includes +1 for the terminating '\0', so unless you append something to the b

Re: [PATCH Coroutines]Fix ICE when co_awaiting on void type

2020-01-20 Thread Iain Sandoe
Bin.Cheng wrote: > On Mon, Jan 20, 2020 at 6:31 PM Iain Sandoe wrote: >> Hi Bin, >> >> Bin.Cheng wrote: >> >>> On Mon, Jan 20, 2020 at 5:28 PM Jakub Jelinek wrote: >>>> On Mon, Jan 20, 2020 at 08:59:20AM +, Iain Sandoe wr

Re: [PATCH Coroutines] Fix issue with unused corutine function parameters

2020-01-20 Thread Iain Sandoe
Hi JunMa, JunMa wrote: > 在 2020/1/20 下午6:07, Iain Sandoe 写道: >> Hi JunMa, >> >> JunMa wrote: >> >>> Hi >>> Accroding to N4835: When a coroutine is invoked, a copy is created >>> for each coroutine parameter. While in current implementati

Re: [PATCH Coroutines] Fix issue with unused corutine function parameters

2020-01-20 Thread Iain Sandoe
JunMa wrote: 在 2020/1/20 下午7:55, Iain Sandoe 写道: Hi JunMa, JunMa wrote: 在 2020/1/20 下午6:07, Iain Sandoe 写道: Hi JunMa, JunMa wrote: Hi Accroding to N4835: When a coroutine is invoked, a copy is created for each coroutine parameter. While in current implementation, we only collect used

Re: [PATCH Coroutines]Access promise via actor function's frame pointer argument

2020-01-20 Thread Iain Sandoe
Hi Bin, bin.cheng wrote: > By standard, coroutine body should be encapsulated in try-catch block > as following: > try { >// coroutine body > } catch(...) { >promise.unhandled_exception(); > } > Given above try-catch block is implemented in the coroutine actor > function called by cor

Re: [PATCH Coroutines] Fix issue with unused corutine function parameters

2020-01-20 Thread Iain Sandoe
JunMa wrote: > 在 2020/1/20 下午8:21, Iain Sandoe 写道: >> JunMa wrote: >> >>> 在 2020/1/20 下午7:55, Iain Sandoe 写道: >>>> Hi JunMa, >>>> >>>> JunMa wrote: >>>> >>>>> 在 2020/1/20 下午6:07, Iain Sandoe 写道: >

Re: [PATCH Coroutines] Fix issue with unused corutine function parameters

2020-01-21 Thread Iain Sandoe
JunMa wrote: 在 2020/1/21 上午9:34, JunMa 写道: 在 2020/1/21 上午12:39, Iain Sandoe 写道: JunMa wrote: 在 2020/1/20 下午8:21, Iain Sandoe 写道: JunMa wrote: 在 2020/1/20 下午7:55, Iain Sandoe 写道: Hi JunMa, JunMa wrote: 在 2020/1/20 下午6:07, Iain Sandoe 写道: Hi JunMa, JunMa wrote: Hi Accroding to

Re: [PATCH Coroutines]Fix ICE when co_awaiting on void type

2020-01-21 Thread Iain Sandoe
Hi Nathan, This corrects my mixup between the error returns for complete_type and complete_type_or_else, spotted by Jakub, I have included Bin’s change that makes the coro-specific error message fire if a void type is provided for this. Additional comments below. Iain Sandoe wrote

Re: [PATCH Coroutines]Access promise via actor function's frame pointer argument

2020-01-21 Thread Iain Sandoe
Hi Nathan, Bin, bin.cheng wrote: > On Mon, Jan 20, 2020 at 10:59 PM Iain Sandoe wrote: >> Hi Bin, >> >> bin.cheng wrote: >> >>> By standard, coroutine body should be encapsulated in try-catch block >>> as following: >

Re: [PATCH] powerpc: Fix ICE with fp conditional move (PR target/93073)

2020-01-22 Thread Iain Sandoe
Segher Boessenkool wrote: On Mon, Jan 20, 2020 at 11:52:55PM +0100, Jakub Jelinek wrote: PR target/93073 * config/rs6000/rs6000.c (rs6000_emit_cmove): Punt for compare_mode other than SFmode or DFmode. "If using fsel, punt for..." etc. + /* Don't allow compare_mode other th

[committed] coroutines: Fix whitespace and comment markers.

2020-01-26 Thread Iain Sandoe
8022264265dd39887a1723eeda8ae445afad1fde Author: Iain Sandoe Date: 2020-01-26 20:49:04 + coroutines: Fix whitespace and comment markers. This amends the cases where inline comments in function calls were followed by a space. It also fixes some uses of C++ style and wrongly

[PATCH] coroutines: Ensure the ramp return object is checked (PR93443).

2020-01-27 Thread Iain Sandoe
cases. bootstrapped and tested on x86_64-darwin16, OK for trunk? thanks Iain gcc/cp/ChangeLog: 2020-01-27 Iain Sandoe PR c++/93443 * coroutines.cc (morph_fn_to_coro): Check the ramp return value when it is constructed from the 'get return object'. — gcc/cp/cor

Re: [PATCH] gcc: Add new configure options to allow static libraries to be selected

2020-01-28 Thread Iain Sandoe
Hi Andrew, Andrew Burgess wrote: * Jeff Law [2020-01-22 13:52:27 -0700]: On Wed, 2020-01-22 at 15:39 +, Andrew Burgess wrote: The motivation behind this change is to make it easier for a user to link against static libraries on a target where dynamic libraries are the default library t

[PATCH] coroutines: Fix ICE on invalid (PR93458).

2020-01-28 Thread Iain Sandoe
). Once we've emitted an error for this level of fail, then we suppress additional copies (otherwise the same thing will be reported for every coroutine keyword seen). tested on x86_64-darwin16, OK for trunk? thanks iain gcc/cp/ChangeLog: 2020-01-28 Iain Sandoe * coroutin

[PATCH] coroutines: Prevent repeated error messages for missing promise.

2020-01-28 Thread Iain Sandoe
tion. This suppresses all but the first instance in each coroutine. tested on x86_64-darwin16 OK for master? thanks Iain gcc/cp/ChangeLog: 2020-01-28 Iain Sandoe * coroutines.cc (find_promise_type): Delete unused forward declaration. (struct coroutine_info): Add a bool for no promise

[PATCH, v2] coroutines: Fix ICE on invalid (PR93458).

2020-01-29 Thread Iain Sandoe
Hi Nathan, Nathan Sidwell wrote: > On 1/28/20 11:14 AM, Iain Sandoe wrote: >> + if (!error_emitted && >> + (traits_decl == NULL_TREE || traits_decl == error_mark_node)) >> { >>error_at (kw, "cannot find % template"); >> +

[PATCH, v3] coroutines: Fix ICE on invalid (PR93458).

2020-01-30 Thread Iain Sandoe
Hi Nathan, Nathan Sidwell wrote: > On 1/29/20 10:39 AM, Iain Sandoe wrote: >> Hi Nathan, >> + /* If we are missing fundmental information, such as the traits, then >> don't >> + emit this for every keyword in a TU. This particular error is per TU >&

Re: [PATCH] gcc: Add new configure options to allow static libraries to be selected

2020-01-30 Thread Iain Sandoe
Hi Andrew, Andrew Burgess wrote: > * Iain Sandoe [2020-01-28 10:34:52 +]: >> * Before the patch, libcpp and gcc configury finds this and they agree on >> the availability of ICONV (#define HAVE_ICONV 1). >> >> * After the patch libcpp no longer thinks

Re: [PATCH] gcc: Add new configure options to allow static libraries to be selected

2020-01-31 Thread Iain Sandoe
Hello Andrew, Andrew Burgess wrote: Here's a cleaned up version of the previous patch I posted. If Iain reports this fixes the regressions he saw then I will push this. I applied this to r10-6364 and tested on a bunch of Darwin platforms. AFAICT, the configuration now reports consistent va

Re: [PATCH, v4] coroutines: Fix ICE on invalid (PR93458).

2020-02-01 Thread Iain Sandoe
Nathan Sidwell wrote: > On 1/30/20 9:43 AM, Iain Sandoe wrote: >> Hi Nathan, > >> however. …. >>> also, what if you find something, but it's not a type template? >> … I’ve switched the complain off on lookup_qualified_name and now check for >> a typ

[committed] testsuite,Darwin,PPC: Adjust darwin-abi-12.c for common section use.

2020-02-02 Thread Iain Sandoe
Hi, Another in the series of amendments following the switch to default to no-common. Tested on powerpc-darwin9, applied to master, thanks Iain -- This test explicitly tests for code generation that expects a common section. gcc/testsuite/ChangeLog: 2020-02-02 Iain Sandoe

Re: [PATCH Coroutines][OBVIOUS]Fix typo of temporary variable name

2020-02-05 Thread Iain Sandoe
bin.cheng wrote: This is an obvious patch fixing typo in maybe_promote_captured_temps, previously, the vnum (== 0) is used for all captured temps... Will commit later. Yeah, I made this exact change locally yesterday (but I didn’t commit it yet, so go ahead if you have time). Iain

Re: [PATCH coroutines] Change lowering behavior of alias variable from copy to substitute

2020-02-06 Thread Iain Sandoe
Hi JunMa, JunMa wrote: 在 2020/2/4 下午8:17, JunMa 写道: Hi When testing coroutines with lambda function, I find we copy each captured variable to frame. However, according to gimplify pass, for each declaration that is an alias for another expression(DECL_VALUE_EXPR), we can substitute them di

coroutines: Update to n4849 allocation/deallocation.

2020-02-07 Thread Iain Sandoe
used, the size of the block is passed as the corresponding argument. gcc/cp/ChangeLog: 2020-02-07 Iain Sandoe * coroutines.cc (build_actor_fn): Implement deallocation function selection per n4849, dcl.fct.def.coroutine bullet 12. (morph_fn_to_coro): Implement alloc

Re: [PATCH Coroutines]Insert the default return_void call at correct position

2020-02-10 Thread Iain Sandoe
Hi Bin, Bin.Cheng wrote: > Ping. We are seeking to clarify the standard wording around this (and the cases where unhandled_exception() returns - hopefully during the WG21 meeting this week, FWIW, I think your interpretation makes sense here. thanks Iain > > Thanks, > bin > > On Mon, Feb 3,

[committed] Darwin: -Wformat-diag fix (PR93641)

2020-02-10 Thread Iain Sandoe
th used for the comparison for ‘CFStringRef' was only comparing for ‘CFString' potentially allowing mismatched identifiers. 2020-02-10 Iain Sandoe PR other/93641 * config/darwin-c.c (darwin_cfstring_ref_p): Fix up last argument of strncmp. diff --git a/gc

Re: [PATCH Coroutines]Insert the default return_void call at correct position

2020-02-13 Thread Iain Sandoe
Hello Bin, Nathan, Iain Sandoe wrote: We are seeking to clarify the standard wording around this (and the cases where unhandled_exception() returns - hopefully during the WG21 meeting this week, FWIW, I think your interpretation makes sense here. It’s not clear if the committee will

[PATCH 0/8] coroutines: Use DECL_VALUE_EXPRs to assist in debug [PR99215]

2021-09-01 Thread Iain Sandoe
Hi, As discussed with Jason at WG21 in Prague - last year, this amends the way in which the coroutine frame copies of variables are represented in the front end lowering. Instead of an explicit pointer->field we now apply a DECL_VALUE_EXPR to each instead (where that value is the pointer->field).

[PATCH 1/8] coroutines : Use DECL_VALUE_EXPR instead of rewriting vars.

2021-09-01 Thread Iain Sandoe
need to be copied since they are used in two different contexts during the re-write (in the building of the ramp function, and in the actor function itself). This will assist in improvement of debugging (PR 99215). Signed-off-by: Iain Sandoe gcc/cp/ChangeLog: * coroutines.cc

[PATCH 2/8] coroutines: Add a helper for creating local vars.

2021-09-01 Thread Iain Sandoe
This is primarily code factoring, but we take this opportunity to rename some of the implementation variables (which we intend to expose to debugging) so that they are in the implementation namespace. Signed-off-by: Iain Sandoe gcc/cp/ChangeLog: * coroutines.cc

PATCH 3/8] coroutines: Support for debugging implementation state.

2021-09-01 Thread Iain Sandoe
support (PR 99215). Signed-off-by: Iain Sandoe gcc/cp/ChangeLog: * coroutines.cc (register_local_var_uses): Do not mangle frame entries for the outermost scope. Record the outer scope as nesting depth 0. --- gcc/cp/coroutines.cc | 16 +++- 1 file changed, 11

[PATCH 4/8] coroutines: Make some of the artificial names more debugger-friendly.

2021-09-01 Thread Iain Sandoe
Some of the compiler-generated entries are of interest to a user debugging - keep variables in the implementation namespace but avoid using periods as separators (which is not compatible with visible symbols for some assemblers). Partial improvement to debugging (PR 99215). Signed-off-by: Iain

[PATCH 5/8] coroutines: Define and populate accessors for debug state.

2021-09-01 Thread Iain Sandoe
for these and populates them on demand (avoiding repeated identifier calls). Contributory to debug support (PR 99215) Signed-off-by: Iain Sandoe gcc/cp/ChangeLog: * coroutines.cc: Add identifiers for implementation variables that we want to expose to debug

[PATCH 6/8] coroutines: Convert implementation variables to debug-friendly form.

2021-09-01 Thread Iain Sandoe
'self handle'. Whether the coroutine frame is allocated and needs to be freed. These variables are given names that can be 'well-known' and advertised in debug documentation - they are placed in the implementation namespace and all begin with _Coro_. Signed-off-by: Iain Sando

[PATCH 7/8] coroutines: Make proxy vars for the function arg copies.

2021-09-01 Thread Iain Sandoe
running. Signed-off-by: Iain Sandoe gcc/cp/ChangeLog: * coroutines.cc (struct param_info): Add copy_var. (build_actor_fn): Use simplified param references. (register_param_uses): Likewise. (rewrite_param_uses): Likewise. (analyze_fn_parms): New function

[PATCH 8/8] coroutines: Make the continue handle visible to debug.

2021-09-01 Thread Iain Sandoe
e' is visible to debug. Contributory to PR 99215. Signed-off-by: Iain Sandoe gcc/cp/ChangeLog: * coroutines.cc (build_actor_fn): Make _Coro_actor_continue visible to debug. --- gcc/cp/coroutines.cc | 1 + 1 file changed, 1 insertion(+) diff --git a/gcc/cp/coroutines.c

[pushed] coroutines: No cleanups on goto statements.

2021-09-01 Thread Iain Sandoe
Hi, Minor cleanup, this is statement not an expression, we do not need to use finish_expr_stmt here. tested on x86_64, powerpc64-linux, x86_64-darwin, pushed to master as trivial/obvious, thanks Iain Signed-off-by: Iain Sandoe gcc/cp/ChangeLog: * coroutines.cc (await_statement_walker

[pushed] coroutines : Add a missed begin/finish else clause to the codegen.

2021-09-01 Thread Iain Sandoe
Hi, Minor code-gen correction. tested on x86_64, powerpc64 - linux, x86_64-darwin, pushed to master as trivial/obvious, thanks Iain Signed-off-by: Iain Sandoe gcc/cp/ChangeLog: * coroutines.cc (build_actor_fn): Add begin/finish clauses to the initial test in the actor

[pushed] C-family: Add attribute 'unavailable'.

2021-09-01 Thread Iain Sandoe
Hi, The patch was approved here: https://gcc.gnu.org/pipermail/gcc-patches/2021-January/562757.html and here: https://gcc.gnu.org/pipermail/gcc-patches/2020-November/560604.html subject to a documentation nit. I ran out of time before stage3 ended .. and just got around to this now. re-tested o

[pushed] Objective-C, NeXT: Fix messenging non-aggregate return-in-memory.

2021-09-01 Thread Iain Sandoe
c64-linux, pushed to master, thanks Iain Signed-off-by: Iain Sandoe PR objc/101718 - Objective-C frontend emits wrong code to call methods returning scalar types returned in memory PR objc/101718 gcc/objc/ChangeLog: * objc-next-runtime-abi-02.c (build_v2_build_objc_method_c

[PING] [PATCH] Jit, testsuite: Amend expect processing to tolerate more platforms.

2021-09-01 Thread Iain Sandoe
this, and really I cannot enable Jit reliably on Darwin since one failure mode is a deadlocked expect instance so that the testsuite never completes until that is killed manually. thanks Iain > On 19 Aug 2021, at 19:59, Iain Sandoe wrote: > > Hi, > > Preface: > > this is t

Re: [PATCH] Jit, testsuite: Amend expect processing to tolerate more platforms.

2021-09-02 Thread Iain Sandoe
Hi David, > On 2 Sep 2021, at 15:47, David Malcolm wrote: > > On Thu, 2021-08-19 at 19:59 +0100, Iain Sandoe wrote: >> OK for master? > > Did you try this with RUN_UNDER_VALGRIND set? Assuming that that still > works, yes, looks good to me. For what configuration par

Re: [PATCH 5/8] coroutines: Define and populate accessors for debug state.

2021-09-03 Thread Iain Sandoe
> On 3 Sep 2021, at 14:39, Jason Merrill wrote: > > On 9/1/21 6:54 AM, Iain Sandoe wrote: >> This is an efficiency measure and repeats the pattern used for >> other identifiers used in the coroutine implementation. >> In support of debugging, the user might well nee

Re: [PATCH 5/8] coroutines: Define and populate accessors for debug state.

2021-09-03 Thread Iain Sandoe
> On 3 Sep 2021, at 14:39, Jason Merrill wrote: > > On 9/1/21 6:54 AM, Iain Sandoe wrote: >> This is an efficiency measure and repeats the pattern used for >> other identifiers used in the coroutine implementation. >> In support of debugging, the user might well nee

Re: [PATCH 6/8] coroutines: Convert implementation variables to debug-friendly form.

2021-09-03 Thread Iain Sandoe
> On 3 Sep 2021, at 14:52, Jason Merrill wrote: > > On 9/1/21 6:55 AM, Iain Sandoe wrote: >> The user might well wish to inspect some of the state that represents >> the implementation of the coroutine machine. >> In particular: >> The promise object. &

Re: [PATCH 6/8] coroutines: Convert implementation variables to debug-friendly form.

2021-09-03 Thread Iain Sandoe
> On 3 Sep 2021, at 15:12, Jason Merrill wrote: > > On 9/3/21 9:56 AM, Iain Sandoe wrote: >>> On 3 Sep 2021, at 14:52, Jason Merrill wrote: >>> >>> On 9/1/21 6:55 AM, Iain Sandoe wrote: >>>> The user might well wish to inspect some of the stat

Re: [PATCH 7/8] coroutines: Make proxy vars for the function arg copies.

2021-09-03 Thread Iain Sandoe
> On 3 Sep 2021, at 15:07, Jason Merrill via Gcc-patches > wrote: > > On 9/1/21 6:56 AM, Iain Sandoe wrote: >> This adds top level proxy variables for the coroutine frame >> copies of the original function args. These are then available >> in the debugger to

Re: [PATCH V3 0/6] Initial support for AVX512FP16

2021-09-03 Thread Iain Sandoe
> On 3 Sep 2021, at 08:51, Iain Sandoe wrote: > > >> On 2 Sep 2021, at 21:03, Joseph Myers wrote: >> >> On Thu, 2 Sep 2021, Iain Sandoe via Gcc-patches wrote: >> >>> diff --git a/libgcc/soft-fp/eqdf2.c b/libgcc/soft-fp/eqdf2.c >>> ind

Re: [PATCH 6/8] coroutines: Convert implementation variables to debug-friendly form.

2021-09-05 Thread Iain Sandoe
implementation variables to debug-friendly form. (approved) [PATCH 8/8] coroutines: Make the continue handle visible to debug. [PATCH 6/8] coroutines: Convert implementation variables to debug-friendly form. > On 3 Sep 2021, at 15:21, Iain Sandoe wrote: >> On 3 Sep 2021, at 15:12, Jaso

[PATCH 7/8 v2] coroutines: Make proxy vars for the function arg copies.

2021-09-05 Thread Iain Sandoe
Hello Jason, > On 3 Sep 2021, at 15:23, Iain Sandoe wrote: >> On 3 Sep 2021, at 15:07, Jason Merrill via Gcc-patches >> wrote: >> >> On 9/1/21 6:56 AM, Iain Sandoe wrote: >>> This adds top level proxy variables for the coroutine frame >>> +

[PATCH] coroutines: Small cleanups to await_statement_walker [NFC].

2021-09-07 Thread Iain Sandoe
need to carry out any analysis - we just need to detect the presence of any co_await. Signed-off-by: Iain Sandoe gcc/cp/ChangeLog: * coroutines.cc (await_statement_walker): Code cleanups. --- gcc/cp/coroutines.cc | 121 --- 1 file changed, 56

[PATCH] configure: Avoid unnecessary constraints on executables for $build.

2021-09-07 Thread Iain Sandoe
also fixes a bootstrap issue with some Darwin versions and clang as the bootstrap compiler, where -no-PIE causes the correct relocation model to be switched off leading to invalid user-space code. Signed-off-by: Iain Sandoe gcc/ChangeLog: * Makefile.in: Remove variables related to applyi

Re: [PATCH] Remove DARWIN_PREFER_DWARF and dead code

2021-09-13 Thread Iain Sandoe
Hi Folks > On 10 Sep 2021, at 16:16, Jeff Law wrote: > On 9/10/2021 1:19 AM, Richard Biener via Gcc-patches wrote: >> This removes the always defined DARWIN_PREFER_DWARF and the code >> guarded by it being not defined, removing the possibility to >> default some i386 darwin configurations to STAB

Re: [PATCH RFC] c++: don't call 'rvalue' in coroutines code

2021-09-14 Thread Iain Sandoe
Hi Jason, I was looking at handling some backports to 11.x and 10.x for coroutines code-gen fixes ... > On 7 May 2021, at 04:11, Jason Merrill wrote: > > A change to check glvalue_p rather than specifically for TARGET_EXPR > revealed issues with the coroutines code's use of the 'rvalue' functio

[PATCH] coroutines: Small cleanups to await_statement_walker [NFC].

2021-09-14 Thread Iain Sandoe
is no need to carry out any analysis - we just need to detect the presence of any co_await. Signed-off-by: Iain Sandoe gcc/cp/ChangeLog: * coroutines.cc (await_statement_walker): Code cleanups. --- gcc/cp/coroutines.cc | 121 --- 1 file changed, 56

Re: [PATCH] c++tools : Add a simple handler for ModuleCompiledRequest.

2021-09-14 Thread Iain Sandoe
> On 9 Sep 2021, at 17:15, Jason Merrill wrote: > > On 8/18/21 3:13 PM, Iain Sandoe wrote: >> Hi, >> I have found it useful when working with modules stuff to have the completed >> set of command/responses available (some people working with the interfaces >>

Re: [PATCH] coroutines: Small cleanups to await_statement_walker [NFC].

2021-09-15 Thread Iain Sandoe
Hi Jason, > On 15 Sep 2021, at 18:32, Jason Merrill wrote: > > On 9/14/21 11:36, Iain Sandoe wrote: >> Hi >> Some small code cleanups that allow us to have just one place that >> we handle a statement with await expression(s) embedded. Also we >> can reduce th

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