[m-rev.] for review: Delete use of signal handlers taking sigcontext arguments.
Julien Fischer
jfischer at opturion.com
Tue Oct 13 16:10:37 AEDT 2020
On Mon, 12 Oct 2020, Peter Wang wrote:
> The configure checks for sigcontext (aka sigcontext_struct) have failed
> for a long time without anyone noticing. The MR_GET_FAULT_ADDR macro
> that is also needed for the sigcontext code paths was only ever defined
> for __i386__ and __mc68000__.
>
> According to the sigaction(2) man page, the struct sigcontext
> argument was obsoleted by the introduction of the SA_SIGINFO flag
> (which we also have code for, though also not working either).
>
> configure.ac:
> Delete checks related to struct sigcontext.
>
> Delete check for asm/sigcontext.h
>
> runtime/mercury_conf.h.in:
> Delete macros that are no longer defined.
>
> runtime/mercury_memory_handlers.c:
> runtime/mercury_signal.c:
> runtime/mercury_signal.h:
> Delete code for using signal handlers that take a sigcontext argument.
>
> Add XXX where native GC casts a context parameter to
> struct sigcontext * when it should be a ucontext_t *.
> Possibly never tested.
>
> runtime/mercury_faultaddr.h:
> Delete this file containing only the MR_GET_FAULT_ADDR macro which is
> no longer used.
>
> runtime/RESERVED_MACRO_NAMES:
> ssdb/RESERVED_MACRO_NAMES:
> trace/RESERVED_MACRO_NAMES:
> Delete macros that are no longer defined.
>
> tools/configure_mingw_cross:
> Don't need to set variables mercury_cv_sigcontext_struct_2arg and
> mercury_cv_sigcontext_struct_3arg any more.
That's fine.
Julien.
More information about the reviews
mailing list