/* Generated by ./xlat/gen.sh from ./xlat/sigill_codes.in; do not edit. */

static const struct xlat sigill_codes[] = {
#if defined(ILL_ILLOPC) || (defined(HAVE_DECL_ILL_ILLOPC) && HAVE_DECL_ILL_ILLOPC)
	XLAT(ILL_ILLOPC),
#endif
#if defined(ILL_ILLOPN) || (defined(HAVE_DECL_ILL_ILLOPN) && HAVE_DECL_ILL_ILLOPN)
	XLAT(ILL_ILLOPN),
#endif
#if defined(ILL_ILLADR) || (defined(HAVE_DECL_ILL_ILLADR) && HAVE_DECL_ILL_ILLADR)
	XLAT(ILL_ILLADR),
#endif
#if defined(ILL_ILLTRP) || (defined(HAVE_DECL_ILL_ILLTRP) && HAVE_DECL_ILL_ILLTRP)
	XLAT(ILL_ILLTRP),
#endif
#if defined(ILL_PRVOPC) || (defined(HAVE_DECL_ILL_PRVOPC) && HAVE_DECL_ILL_PRVOPC)
	XLAT(ILL_PRVOPC),
#endif
#if defined(ILL_PRVREG) || (defined(HAVE_DECL_ILL_PRVREG) && HAVE_DECL_ILL_PRVREG)
	XLAT(ILL_PRVREG),
#endif
#if defined(ILL_COPROC) || (defined(HAVE_DECL_ILL_COPROC) && HAVE_DECL_ILL_COPROC)
	XLAT(ILL_COPROC),
#endif
#if defined(ILL_BADSTK) || (defined(HAVE_DECL_ILL_BADSTK) && HAVE_DECL_ILL_BADSTK)
	XLAT(ILL_BADSTK),
#endif
	XLAT_END
};
