* [PATCH] Use chain_next on eh_landing_pad_d for GTY (PR middle-end/110510)
@ 2023-07-01 21:28 Andrew Pinski
2023-07-03 7:53 ` Richard Biener
0 siblings, 1 reply; 2+ messages in thread
From: Andrew Pinski @ 2023-07-01 21:28 UTC (permalink / raw)
To: gcc-patches; +Cc: Andrew Pinski
The backtrace in the bug report suggest there is a running out of
stack during GC collection, because of a long chain of eh_landing_pad_d.
This might fix that by adding chain_next onto eh_landing_pad_d's GTY marker.
OK? Bootstrapped and tested on x86_64-linux-gnu with no regressions.
gcc/ChangeLog:
PR middle-end/110510
* except.h (struct eh_landing_pad_d): Add chain_next GTY.
---
gcc/except.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gcc/except.h b/gcc/except.h
index 378a9e4cb77..173b0f026db 100644
--- a/gcc/except.h
+++ b/gcc/except.h
@@ -66,7 +66,7 @@ enum eh_region_type
/* A landing pad for a given exception region. Any transfer of control
from the EH runtime to the function happens at a landing pad. */
-struct GTY(()) eh_landing_pad_d
+struct GTY((chain_next("%h.next_lp"))) eh_landing_pad_d
{
/* The linked list of all landing pads associated with the region. */
struct eh_landing_pad_d *next_lp;
--
2.31.1
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH] Use chain_next on eh_landing_pad_d for GTY (PR middle-end/110510)
2023-07-01 21:28 [PATCH] Use chain_next on eh_landing_pad_d for GTY (PR middle-end/110510) Andrew Pinski
@ 2023-07-03 7:53 ` Richard Biener
0 siblings, 0 replies; 2+ messages in thread
From: Richard Biener @ 2023-07-03 7:53 UTC (permalink / raw)
To: Andrew Pinski; +Cc: gcc-patches
On Sat, Jul 1, 2023 at 11:29 PM Andrew Pinski via Gcc-patches
<gcc-patches@gcc.gnu.org> wrote:
>
> The backtrace in the bug report suggest there is a running out of
> stack during GC collection, because of a long chain of eh_landing_pad_d.
> This might fix that by adding chain_next onto eh_landing_pad_d's GTY marker.
>
> OK? Bootstrapped and tested on x86_64-linux-gnu with no regressions.
OK.
Richard.
> gcc/ChangeLog:
>
> PR middle-end/110510
> * except.h (struct eh_landing_pad_d): Add chain_next GTY.
> ---
> gcc/except.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/gcc/except.h b/gcc/except.h
> index 378a9e4cb77..173b0f026db 100644
> --- a/gcc/except.h
> +++ b/gcc/except.h
> @@ -66,7 +66,7 @@ enum eh_region_type
> /* A landing pad for a given exception region. Any transfer of control
> from the EH runtime to the function happens at a landing pad. */
>
> -struct GTY(()) eh_landing_pad_d
> +struct GTY((chain_next("%h.next_lp"))) eh_landing_pad_d
> {
> /* The linked list of all landing pads associated with the region. */
> struct eh_landing_pad_d *next_lp;
> --
> 2.31.1
>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2023-07-03 7:56 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-07-01 21:28 [PATCH] Use chain_next on eh_landing_pad_d for GTY (PR middle-end/110510) Andrew Pinski
2023-07-03 7:53 ` Richard Biener
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).