Native toolchain can default to different ABI (amd64 in bug case).
Set target to i386.
https://bugs.gentoo.org/600664
diff -Naur a/mono/mini/aot-compiler.c b/mono/mini/aot-compiler.c
--- a/mono/mini/aot-compiler.c	2016-06-22 04:31:58.000000000 -0500
+++ b/mono/mini/aot-compiler.c	2017-12-08 14:25:35.338251941 -0600
@@ -9438,7 +9438,12 @@
 	const char *tool_prefix = acfg->aot_opts.tool_prefix ? acfg->aot_opts.tool_prefix : "";
 	char *ld_flags = acfg->aot_opts.ld_flags ? acfg->aot_opts.ld_flags : g_strdup("");
 
-#if defined(TARGET_AMD64) && !defined(TARGET_MACH)
+#if defined(TARGET_X86)
+#define LD_OPTIONS "-m elf_i386"
+#if !defined(TARGET_MACH)
+#define AS_OPTIONS "--32"
+#endif
+#elif defined(TARGET_AMD64) && !defined(TARGET_MACH)
 #define AS_OPTIONS "--64"
 #elif defined(TARGET_POWERPC64)
 #define AS_OPTIONS "-a64 -mppc64"
