Avoid using 'template' C++ keyword

'template' is used in include/opcode/aarch64.h as below,

 typedef struct
 {
   const char *template;
   uint32_t value;
   int has_xt;
 } aarch64_sys_ins_reg;

and it triggers compilation errors when GDB is built in C++ mode.

In file included from git/gdb/aarch64-tdep.c:62:0:
git/gdb/../include/opcode/aarch64.h:651:15: error: expected unqualified-id before 'template'
   const char *template;

This patch is to rename field template to name.

gas/

	* config/tc-aarch64.c (md_begin): Access field 'name' rather
	than 'template'.

include/opcode/

	* aarch64.h (aarch64_sys_ins_reg) <template>: Removed.
	<name>: New field.

opcodes/

	* aarch64-dis.c (aarch64_ext_sysins_op): Access field
	'name' rather than 'template'.
	* aarch64-opc.c (aarch64_print_operand): Likewise.
This commit is contained in:
Yao Qi 2015-10-07 12:23:15 +01:00
parent d3e12b29ae
commit 875880c661
7 changed files with 28 additions and 12 deletions

View File

@ -1,3 +1,8 @@
2015-10-07 Yao Qi <yao.qi@linaro.org>
* config/tc-aarch64.c (md_begin): Access field 'name' rather
than 'template'.
2015-10-07 Claudiu Zissulescu <claziss@synopsys.com>
* config/tc-arc.c: Revamped file for ARC support.

View File

@ -7511,24 +7511,24 @@ md_begin (void)
aarch64_pstatefields[i].name,
(void *) (aarch64_pstatefields + i));
for (i = 0; aarch64_sys_regs_ic[i].template != NULL; i++)
for (i = 0; aarch64_sys_regs_ic[i].name != NULL; i++)
checked_hash_insert (aarch64_sys_regs_ic_hsh,
aarch64_sys_regs_ic[i].template,
aarch64_sys_regs_ic[i].name,
(void *) (aarch64_sys_regs_ic + i));
for (i = 0; aarch64_sys_regs_dc[i].template != NULL; i++)
for (i = 0; aarch64_sys_regs_dc[i].name != NULL; i++)
checked_hash_insert (aarch64_sys_regs_dc_hsh,
aarch64_sys_regs_dc[i].template,
aarch64_sys_regs_dc[i].name,
(void *) (aarch64_sys_regs_dc + i));
for (i = 0; aarch64_sys_regs_at[i].template != NULL; i++)
for (i = 0; aarch64_sys_regs_at[i].name != NULL; i++)
checked_hash_insert (aarch64_sys_regs_at_hsh,
aarch64_sys_regs_at[i].template,
aarch64_sys_regs_at[i].name,
(void *) (aarch64_sys_regs_at + i));
for (i = 0; aarch64_sys_regs_tlbi[i].template != NULL; i++)
for (i = 0; aarch64_sys_regs_tlbi[i].name != NULL; i++)
checked_hash_insert (aarch64_sys_regs_tlbi_hsh,
aarch64_sys_regs_tlbi[i].template,
aarch64_sys_regs_tlbi[i].name,
(void *) (aarch64_sys_regs_tlbi + i));
for (i = 0; i < ARRAY_SIZE (reg_names); i++)

View File

@ -1,3 +1,8 @@
2015-10-07 Yao Qi <yao.qi@linaro.org>
* aarch64.h (aarch64_sys_ins_reg) <template>: Removed.
<name>: New field.
2015-10-07 Yao Qi <yao.qi@linaro.org>
* aarch64.h [__cplusplus]: Wrap in extern "C".

View File

@ -652,7 +652,7 @@ extern bfd_boolean aarch64_pstatefield_supported_p (const aarch64_feature_set,
typedef struct
{
const char *template;
const char *name;
uint32_t value;
int has_xt;
} aarch64_sys_ins_reg;

View File

@ -1,3 +1,9 @@
2015-10-07 Yao Qi <yao.qi@linaro.org>
* aarch64-dis.c (aarch64_ext_sysins_op): Access field
'name' rather than 'template'.
* aarch64-opc.c (aarch64_print_operand): Likewise.
2015-10-07 Claudiu Zissulescu <claziss@synopsys.com>
* arc-dis.c: Revamped file for ARC support

View File

@ -1027,12 +1027,12 @@ aarch64_ext_sysins_op (const aarch64_operand *self ATTRIBUTE_UNUSED,
default: assert (0); return 0;
}
for (i = 0; sysins_ops[i].template != NULL; ++i)
for (i = 0; sysins_ops[i].name != NULL; ++i)
if (sysins_ops[i].value == value)
{
info->sysins_op = sysins_ops + i;
DEBUG_TRACE ("%s found value: %x, has_xt: %d, i: %d.",
info->sysins_op->template,
info->sysins_op->name,
(unsigned)info->sysins_op->value,
info->sysins_op->has_xt, i);
return 1;

View File

@ -2667,7 +2667,7 @@ aarch64_print_operand (char *buf, size_t size, bfd_vma pc,
case AARCH64_OPND_SYSREG_DC:
case AARCH64_OPND_SYSREG_IC:
case AARCH64_OPND_SYSREG_TLBI:
snprintf (buf, size, "%s", opnd->sysins_op->template);
snprintf (buf, size, "%s", opnd->sysins_op->name);
break;
case AARCH64_OPND_BARRIER: