PR 34670 remove TRUNCATE support from mri ld scripts
Alan Modra
amodra@gmail.com
Wed Sep 23 23:24:37 GMT 2026
Another undocumented and unimplemented feature. Appeared in 1993.
diff --git a/ld/ldgram.y b/ld/ldgram.y
index f8bdf70fd85..070054d6ed0 100644
--- a/ld/ldgram.y
+++ b/ld/ldgram.y
@@ -154,7 +154,7 @@ static void yyerror (const char *);
%type <token> assign_op atype attributes_opt sect_constraint opt_align_with_input
%type <name> filename
%token CHIP LIST SECT ABSOLUTE LOAD NEWLINE ENDWORD ORDER NAMEWORD ASSERT_K
-%token LOG2CEIL FORMAT PUBLIC DEFSYMEND BASE ALIAS TRUNCATE REL
+%token LOG2CEIL FORMAT PUBLIC DEFSYMEND BASE ALIAS REL
%token INPUT_SCRIPT INPUT_MRI_SCRIPT INPUT_DEFSYM CASE EXTERN START
%token <name> VERS_TAG VERS_IDENTIFIER
%token GLOBAL LOCAL VERSIONK INPUT_VERSION_SCRIPT INPUT_SECTION_ORDERING_SCRIPT
@@ -249,8 +249,6 @@ mri_script_command:
{ mri_alias ($2, 0, (int) $4.integer); }
| BASE exp
{ mri_base($2); }
- | TRUNCATE INT
- { mri_truncate ((unsigned int) $2.integer); }
| CASE casesymlist
| EXTERN extern_name_list
| INCLUDE filename
diff --git a/ld/ldlex.l b/ld/ldlex.l
index 791b3c84b79..e15da25e404 100644
--- a/ld/ldlex.l
+++ b/ld/ldlex.l
@@ -361,7 +361,6 @@ V_IDENTIFIER [*?.$_a-zA-Z\[\]\-\!\^\\]([*?.$_a-zA-Z0-9\[\]\-\!\^\\]|::)*
<MRI>"CHIP" { RTOKEN(CHIP); }
<MRI>"BASE" { RTOKEN(BASE); }
<MRI>"ALIAS" { RTOKEN(ALIAS); }
-<MRI>"TRUNCATE" { RTOKEN(TRUNCATE); }
<MRI>"LOAD" { RTOKEN(LOAD); }
<MRI>"PUBLIC" { RTOKEN(PUBLIC); }
<MRI>"ORDER" { RTOKEN(ORDER); }
@@ -378,7 +377,6 @@ V_IDENTIFIER [*?.$_a-zA-Z\[\]\-\!\^\\]([*?.$_a-zA-Z0-9\[\]\-\!\^\\]|::)*
<MRI>"chip" { RTOKEN(CHIP); }
<MRI>"base" { RTOKEN(BASE); }
<MRI>"alias" { RTOKEN(ALIAS); }
-<MRI>"truncate" { RTOKEN(TRUNCATE); }
<MRI>"load" { RTOKEN(LOAD); }
<MRI>"public" { RTOKEN(PUBLIC); }
<MRI>"order" { RTOKEN(ORDER); }
diff --git a/ld/mri.c b/ld/mri.c
index 0d137377ce5..2c0890b231d 100644
--- a/ld/mri.c
+++ b/ld/mri.c
@@ -45,7 +45,6 @@ struct section_name_struct {
int ok_to_load;
};
-static unsigned int symbol_truncate = 10000;
static etree_type *base; /* Relocation base - or null */
static struct section_name_struct *order;
@@ -308,9 +307,3 @@ mri_alignmod (const char *name, etree_type *exp)
{
mri_add_to_list (&subalignment, name, 0, 0, 0, exp);
}
-
-void
-mri_truncate (unsigned int exp)
-{
- symbol_truncate = exp;
-}
diff --git a/ld/mri.h b/ld/mri.h
index d093b84cf4c..3be0eeabf01 100644
--- a/ld/mri.h
+++ b/ld/mri.h
@@ -32,7 +32,6 @@ extern void mri_format (const char *);
extern void mri_public (const char *, etree_type *);
extern void mri_align (const char *, etree_type *);
extern void mri_alignmod (const char *, etree_type *);
-extern void mri_truncate (unsigned int);
extern void mri_draw_tree (void);
#endif
--
Alan Modra
More information about the Binutils
mailing list