* config/tc-m32r.c (md_begin): Set cgen_asm_parse_operand_fn.

(md_assemble): Call cgen_asm_init_parse.
	Update call to m32r_cgen_assemble_insn, call as_bad if assembly failed.
This commit is contained in:
David Edelsohn 1997-04-10 21:54:15 +00:00
parent 841eff9e79
commit 4e9d8deacb
2 changed files with 19 additions and 2 deletions

View File

@ -1,3 +1,9 @@
Thu Apr 10 14:40:00 1997 Doug Evans <dje@canuck.cygnus.com>
* config/tc-m32r.c (md_begin): Set cgen_asm_parse_operand_fn.
(md_assemble): Call cgen_asm_init_parse.
Update call to m32r_cgen_assemble_insn, call as_bad if assembly failed.
Wed Apr 9 11:49:41 1997 Ian Lance Taylor <ian@cygnus.com>
* config/tc-m68k.c (m68k_ip): Handle #j.

View File

@ -252,6 +252,10 @@ md_begin ()
subsegT subseg;
/* Initialize the `cgen' interface. */
/* This is a callback from cgen to gas to parse operands. */
cgen_asm_parse_operand_fn = cgen_asm_parse_operand;
/* Set the machine number and endian. */
CGEN_SYM (init_asm) (0 /* mach number */,
target_big_endian ? CGEN_ENDIAN_BIG : CGEN_ENDIAN_LITTLE);
@ -306,10 +310,17 @@ md_assemble (str)
#endif
struct cgen_fields fields;
const struct cgen_insn *insn;
char *errmsg;
insn = CGEN_SYM (assemble_insn) (str, &fields, buffer);
/* Initialize GAS's cgen interface for a new instruction. */
cgen_asm_init_parse ();
insn = CGEN_SYM (assemble_insn) (str, &fields, buffer, &errmsg);
if (!insn)
return;
{
as_bad (errmsg);
return;
}
if (CGEN_INSN_BITSIZE (insn) == 32)
{