Add support for non-contiguous memory regions
[deliverable/binutils-gdb.git] / ld / lexsup.c
index 3d15cc491d566554e28f3febc59886641958384d..2597e2d6304a3414f63c8d87d152976eeb3f635e 100644 (file)
@@ -122,6 +122,10 @@ static const struct ld_option ld_options[] =
     'E', NULL, N_("Export all dynamic symbols"), TWO_DASHES },
   { {"no-export-dynamic", no_argument, NULL, OPTION_NO_EXPORT_DYNAMIC},
     '\0', NULL, N_("Undo the effect of --export-dynamic"), TWO_DASHES },
+  { {"enable-non-contiguous-regions", no_argument, NULL, OPTION_NON_CONTIGUOUS_REGIONS},
+    '\0', NULL, N_("Enable support of non-contiguous memory regions"), TWO_DASHES },
+  { {"enable-non-contiguous-regions-warnings", no_argument, NULL, OPTION_NON_CONTIGUOUS_REGIONS_WARNINGS},
+    '\0', NULL, N_("Enable warnings when --enable-non-contiguous-regions may cause unexpected behaviour"), TWO_DASHES },
   { {"EB", no_argument, NULL, OPTION_EB},
     '\0', NULL, N_("Link big-endian objects"), ONE_DASH },
   { {"EL", no_argument, NULL, OPTION_EL},
@@ -845,6 +849,12 @@ parse_args (unsigned argc, char **argv)
        case OPTION_NO_EXPORT_DYNAMIC:
          link_info.export_dynamic = FALSE;
          break;
+       case OPTION_NON_CONTIGUOUS_REGIONS:
+         link_info.non_contiguous_regions = TRUE;
+         break;
+       case OPTION_NON_CONTIGUOUS_REGIONS_WARNINGS:
+         link_info.non_contiguous_regions_warnings = TRUE;
+         break;
        case 'e':
          lang_add_entry (optarg, TRUE);
          break;
This page took 0.023818 seconds and 4 git commands to generate.