https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94282
Thomas Schwinge <tschwinge at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Ever confirmed|0 |1
Status|UNCONFIRMED |NEW
Last reconfirmed| |2020-04-22
--- Comment #4 from Thomas Schwinge <tschwinge at gcc dot gnu.org> ---
(In reply to Andrew Stubbs from comment #3)
> (In reply to Andrew Pinski from comment #2)
> > (In reply to Tobias Burnus from comment #1)
> > > The symbol __gxx_personality_v0 is part of libsupc++ – which I believe is
> > > not build to to lacking/restricted C++ support.
> >
> > It is also exception handling related. Does amdgcn have EH support?
>
> No, it does not. No unwind support, nor sjlj either (the register file is
> very large, and has variable size, so it's not trivial to implement, IIUC).
Unexpectedly, the same as for nvptx.
So:
(In reply to Thomas Schwinge from comment #0)
> Assuming that's not yet done
(It isn't.)
> can something similar be done as done for
> nvptx, where we force-disable all C++ exceptions code/tables generation, see
> PR86660 GCC trunk r263265, and then GCC trunk r263287?
Seems so. I successfully tested the following change to
'gcc/common/config/gcn/gcn-common.c'; OK to commit? If approving this patch,
please respond with "Reviewed-by: NAME <EMAIL>" so that your effort will be
recorded in the commit log, see <https://gcc.gnu.org/wiki/Reviewed-by>.
+static enum unwind_info_type
+gcn_except_unwind_info (struct gcc_options *opts ATTRIBUTE_UNUSED)
+{
+ return UI_NONE;
+}
+#undef TARGET_EXCEPT_UNWIND_INFO
+#define TARGET_EXCEPT_UNWIND_INFO gcn_except_unwind_info