[PATCH] opcodes: tic54x: namespace exported variables
Mike Frysinger
vapier@gentoo.org
Sat Jan 30 06:12:53 GMT 2021
ping ...
On 16 Jan 2021 01:22, Mike Frysinger via Binutils wrote:
> The tic54x exports some fairly generic variable names that can
> conflict with programs that use them, so put proper tic54x_
> prefixes on all of them.
>
> include/:
>
> * opcode/tic54x.h (mmregs): Rename to ...
> (tic54x_mmregs): ... this.
> (regs): Rename to ...
> (tic54x_regs): ... this.
> (condition_codes): Rename to ...
> (tic54x_condition_codes): ... this.
> (cc2_codes): Rename to ...
> (tic54x_cc2_codes): ... this.
> (status_bits): Rename to ...
> (tic54x_status_bits): ... this.
> (cc3_codes): Rename to ...
> (tic54x_cc3_codes): ... this.
> (misc_symbols): Rename to ...
> (tic54x_misc_symbols): ... this.
>
> gas/:
>
> * config/tc-tic54x (tic54x_mmregs): Rename to ...
> (tic54x_register_mmregs): ... this. Change mmregs to tic54x_mmregs.
> (md_pseudo_table): Change tic54x_mmregs to tic54x_register_mmregs.
> (md_begin): Add tic54x_ prefix to regs, mmregs, condition_codes,
> cc2_codes, cc3_codes, status_bits, and misc_symbols.
>
> opcodes/:
>
> * tic54x-dis.c (sprint_mmr): Change to tic54x_mmregs.
> * tic54x-opc.c (regs): Rename to ...
> (tic54x_regs): ... this.
> (mmregs): Rename to ...
> (tic54x_mmregs): ... this.
> (condition_codes): Rename to ...
> (tic54x_condition_codes): ... this.
> (cc2_codes): Rename to ...
> (tic54x_cc2_codes): ... this.
> (cc3_codes): Rename to ...
> (tic54x_cc3_codes): ... this.
> (status_bits): Rename to ...
> (tic54x_status_bits): ... this.
> (misc_symbols): Rename to ...
> (tic54x_misc_symbols): ... this.
> ---
> gas/config/tc-tic54x.c | 28 ++++++++++++++--------------
> include/opcode/tic54x.h | 8 ++++----
> opcodes/tic54x-dis.c | 2 +-
> opcodes/tic54x-opc.c | 14 +++++++-------
> 4 files changed, 26 insertions(+), 26 deletions(-)
>
> diff --git a/gas/config/tc-tic54x.c b/gas/config/tc-tic54x.c
> index 5a6bc8aa7dc6..da2c755946c6 100644
> --- a/gas/config/tc-tic54x.c
> +++ b/gas/config/tc-tic54x.c
> @@ -2007,13 +2007,13 @@ tic54x_label (int ignored ATTRIBUTE_UNUSED)
> absolute local symbols. */
>
> static void
> -tic54x_mmregs (int ignored ATTRIBUTE_UNUSED)
> +tic54x_register_mmregs (int ignored ATTRIBUTE_UNUSED)
> {
> - tic54x_symbol *sym;
> + const tic54x_symbol *sym;
>
> ILLEGAL_WITHIN_STRUCT ();
>
> - for (sym = (tic54x_symbol *) mmregs; sym->name; sym++)
> + for (sym = tic54x_mmregs; sym->name; sym++)
> {
> symbolS *symbolP = symbol_new (sym->name, absolute_section,
> &zero_address_frag, sym->value);
> @@ -2421,7 +2421,7 @@ const pseudo_typeS md_pseudo_table[] =
> { "mlib" , tic54x_mlib , 0 },
> { "mlist" , s_ignore , 0 },
> { "mnolist" , s_ignore , 0 },
> - { "mmregs" , tic54x_mmregs , 0 },
> + { "mmregs" , tic54x_register_mmregs , 0 },
> { "newblock" , tic54x_clear_local_labels, 0 },
> { "option" , s_ignore , 0 },
> { "p2align" , tic54x_p2align , 0 },
> @@ -2965,10 +2965,10 @@ void
> md_begin (void)
> {
> insn_template *tm;
> - tic54x_symbol *sym;
> + const tic54x_symbol *sym;
> const subsym_proc_entry *subsym_proc;
> const math_proc_entry *math_proc;
> - char **symname;
> + const char **symname;
> char *TIC54X_DIR = getenv ("TIC54X_DIR");
> char *A_DIR = TIC54X_DIR ? TIC54X_DIR : getenv ("A_DIR");
>
> @@ -3000,7 +3000,7 @@ md_begin (void)
> str_hash_insert (parop_hash, tm->name, tm, 0);
>
> reg_hash = str_htab_create ();
> - for (sym = (tic54x_symbol *) regs; sym->name; sym++)
> + for (sym = tic54x_regs; sym->name; sym++)
> {
> /* Add basic registers to the symbol table. */
> symbolS *symbolP = symbol_new (sym->name, absolute_section,
> @@ -3009,30 +3009,30 @@ md_begin (void)
> symbol_table_insert (symbolP);
> str_hash_insert (reg_hash, sym->name, sym, 0);
> }
> - for (sym = (tic54x_symbol *) mmregs; sym->name; sym++)
> + for (sym = tic54x_mmregs; sym->name; sym++)
> str_hash_insert (reg_hash, sym->name, sym, 0);
> mmreg_hash = str_htab_create ();
> - for (sym = (tic54x_symbol *) mmregs; sym->name; sym++)
> + for (sym = tic54x_mmregs; sym->name; sym++)
> str_hash_insert (mmreg_hash, sym->name, sym, 0);
>
> cc_hash = str_htab_create ();
> - for (sym = (tic54x_symbol *) condition_codes; sym->name; sym++)
> + for (sym = tic54x_condition_codes; sym->name; sym++)
> str_hash_insert (cc_hash, sym->name, sym, 0);
>
> cc2_hash = str_htab_create ();
> - for (sym = (tic54x_symbol *) cc2_codes; sym->name; sym++)
> + for (sym = tic54x_cc2_codes; sym->name; sym++)
> str_hash_insert (cc2_hash, sym->name, sym, 0);
>
> cc3_hash = str_htab_create ();
> - for (sym = (tic54x_symbol *) cc3_codes; sym->name; sym++)
> + for (sym = tic54x_cc3_codes; sym->name; sym++)
> str_hash_insert (cc3_hash, sym->name, sym, 0);
>
> sbit_hash = str_htab_create ();
> - for (sym = (tic54x_symbol *) status_bits; sym->name; sym++)
> + for (sym = tic54x_status_bits; sym->name; sym++)
> str_hash_insert (sbit_hash, sym->name, sym, 0);
>
> misc_symbol_hash = str_htab_create ();
> - for (symname = (char **) misc_symbols; *symname; symname++)
> + for (symname = tic54x_misc_symbols; *symname; symname++)
> str_hash_insert (misc_symbol_hash, *symname, *symname, 0);
>
> /* Only the base substitution table and local label table are initialized;
> diff --git a/include/opcode/tic54x.h b/include/opcode/tic54x.h
> index 8e0dd7e75902..4567ca89cc0e 100644
> --- a/include/opcode/tic54x.h
> +++ b/include/opcode/tic54x.h
> @@ -152,10 +152,10 @@ typedef struct _template
> extern const insn_template tic54x_unknown_opcode;
> extern const insn_template tic54x_optab[];
> extern const insn_template tic54x_paroptab[];
> -extern const tic54x_symbol mmregs[], regs[];
> -extern const tic54x_symbol condition_codes[], cc2_codes[], status_bits[];
> -extern const tic54x_symbol cc3_codes[];
> -extern const char *misc_symbols[];
> +extern const tic54x_symbol tic54x_mmregs[], tic54x_regs[];
> +extern const tic54x_symbol tic54x_condition_codes[], tic54x_cc2_codes[];
> +extern const tic54x_symbol tic54x_status_bits[], tic54x_cc3_codes[];
> +extern const char *tic54x_misc_symbols[];
> struct disassemble_info;
> extern const insn_template* tic54x_get_insn (struct disassemble_info *,
> bfd_vma, unsigned short, int *);
> diff --git a/opcodes/tic54x-dis.c b/opcodes/tic54x-dis.c
> index 85309eaded9e..5bf9a58f8eb7 100644
> --- a/opcodes/tic54x-dis.c
> +++ b/opcodes/tic54x-dis.c
> @@ -529,7 +529,7 @@ sprint_mmr (disassemble_info *info ATTRIBUTE_UNUSED,
> char buf[],
> int mmr)
> {
> - tic54x_symbol *reg = (tic54x_symbol *) mmregs;
> + const tic54x_symbol *reg = tic54x_mmregs;
> while (reg->name != NULL)
> {
> if (mmr == reg->value)
> diff --git a/opcodes/tic54x-opc.c b/opcodes/tic54x-opc.c
> index 6ed2cb8d8874..411460c07edf 100644
> --- a/opcodes/tic54x-opc.c
> +++ b/opcodes/tic54x-opc.c
> @@ -24,7 +24,7 @@
> #include "opcode/tic54x.h"
>
> /* these are the only register names not found in mmregs */
> -const tic54x_symbol regs[] = {
> +const tic54x_symbol tic54x_regs[] = {
> { "AR0", 16 }, { "ar0", 16 },
> { "AR1", 17 }, { "ar1", 17 },
> { "AR2", 18 }, { "ar2", 18 },
> @@ -38,7 +38,7 @@ const tic54x_symbol regs[] = {
>
> /* status bits, MM registers, condition codes, etc */
> /* some symbols are only valid for certain chips... */
> -const tic54x_symbol mmregs[] = {
> +const tic54x_symbol tic54x_mmregs[] = {
> { "IMR", 0 }, { "imr", 0 },
> { "IFR", 1 }, { "ifr", 1 },
> { "ST0", 6 }, { "st0", 6 },
> @@ -111,7 +111,7 @@ const tic54x_symbol mmregs[] = {
> { NULL, 0},
> };
>
> -const tic54x_symbol condition_codes[] = {
> +const tic54x_symbol tic54x_condition_codes[] = {
> /* condition codes */
> { "UNC", 0 }, { "unc", 0 },
> #define CC1 0x40
> @@ -155,7 +155,7 @@ const tic54x_symbol condition_codes[] = {
> { NULL, 0 }
> };
>
> -const tic54x_symbol cc2_codes[] = {
> +const tic54x_symbol tic54x_cc2_codes[] = {
> { "UNC", 0 }, { "unc", 0 },
> { "AEQ", 5 }, { "aeq", 5 },
> { "ANEQ", 4 }, { "aneq", 4 },
> @@ -172,7 +172,7 @@ const tic54x_symbol cc2_codes[] = {
> { NULL, 0 },
> };
>
> -const tic54x_symbol cc3_codes[] = {
> +const tic54x_symbol tic54x_cc3_codes[] = {
> { "EQ", 0x0000 }, { "eq", 0x0000 },
> { "LT", 0x0100 }, { "lt", 0x0100 },
> { "GT", 0x0200 }, { "gt", 0x0200 },
> @@ -189,7 +189,7 @@ const tic54x_symbol cc3_codes[] = {
> };
>
> /* FIXME -- also allow decimal digits */
> -const tic54x_symbol status_bits[] = {
> +const tic54x_symbol tic54x_status_bits[] = {
> /* status register 0 */
> { "TC", 12 }, { "tc", 12 },
> { "C", 11 }, { "c", 11 },
> @@ -209,7 +209,7 @@ const tic54x_symbol status_bits[] = {
> { NULL, 0 },
> };
>
> -const char *misc_symbols[] = {
> +const char *tic54x_misc_symbols[] = {
> "ARP", "arp",
> "DP", "dp",
> "ASM", "asm",
> --
> 2.28.0
>
More information about the Binutils
mailing list