- unsigned len = strlen (insn->template);
- struct s7_asm_opcode *new;
- char *template;
- new = obstack_alloc (&insn_obstack, sizeof (struct s7_asm_opcode));
- template = obstack_alloc (&insn_obstack, len + 1);
-
- strcpy (template, insn->template);
- new->template = template;
- new->parms = insn->parms;
- new->value = insn->value;
- new->relax_value = insn->relax_value;
- new->type = insn->type;
- new->bitmask = insn->bitmask;
- hash_insert (s7_score_ops_hsh, new->template, (void *) new);
+ size_t len = strlen (insn->template_name);
+ struct s7_asm_opcode *new_opcode;
+ char *template_name;
+ new_opcode = (struct s7_asm_opcode *)
+ obstack_alloc (&insn_obstack, sizeof (struct s7_asm_opcode));
+ template_name = (char *) obstack_alloc (&insn_obstack, len + 1);
+
+ strcpy (template_name, insn->template_name);
+ new_opcode->template_name = template_name;
+ new_opcode->parms = insn->parms;
+ new_opcode->value = insn->value;
+ new_opcode->relax_value = insn->relax_value;
+ new_opcode->type = insn->type;
+ new_opcode->bitmask = insn->bitmask;
+ hash_insert (s7_score_ops_hsh, new_opcode->template_name,
+ (void *) new_opcode);