[PATCH 3/4] x86-64: improve gas diagnostic when no 32-bit target is configured

Jan Beulich jbeulich@suse.com
Fri May 19 13:52:18 GMT 2023


Make this similar to --64 and --x32: Check whether a suitable target
exists.

--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -14186,7 +14186,21 @@ md_parse_option (int c, const char *arg)
 #endif
 
     case OPTION_32:
-      default_arch = "i386";
+      {
+	const char **list, **l;
+
+	list = bfd_target_list ();
+	for (l = list; *l != NULL; l++)
+	  if (strstr (*l, "-i386")
+	      || strstr (*l, "-go32"))
+	    {
+	      default_arch = "i386";
+	      break;
+	    }
+	if (*l == NULL)
+	  as_fatal (_("no compiled in support for ix86"));
+	free (list);
+      }
       break;
 
     case OPTION_DIVIDE:



More information about the Binutils mailing list