/* tc-pj.c -- Assemble code for Pico Java
- Copyright 1999, 2000, 2001, 2002, 2003, 2005, 2007, 2009
- Free Software Foundation, Inc.
+ Copyright (C) 1999-2020 Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler.
we want to handle magic pending reloc expressions specially. */
void
-pj_cons_fix_new_pj (fragS *frag, int where, int nbytes, expressionS *exp)
+pj_cons_fix_new_pj (fragS *frag, int where, int nbytes, expressionS *exp,
+ bfd_reloc_code_real_type r ATTRIBUTE_UNUSED)
{
static int rv[5][2] =
{ { 0, 0 },
fake_opcode (const char *name,
void (*func) (struct pj_opc_info_t *, char *))
{
- pj_opc_info_t * fake = xmalloc (sizeof (pj_opc_info_t));
+ pj_opc_info_t * fake = XNEW (pj_opc_info_t);
fake->opcode = -1;
fake->opcode_next = -1;
return;
}
+ dwarf2_emit_insn (0);
if (opcode->opcode == -1)
{
/* It's a fake opcode. Dig out the args and pretend that was
op_end++;
if (*op_end == 0)
- as_bad (_("expected expresssion"));
+ as_bad (_("expected expression"));
op_end = parse_exp_save_ilp (op_end, &arg);
as_bad (_("Something forgot to clean up\n"));
}
-char *
+const char *
md_atof (int type, char *litP, int *sizeP)
{
return ieee_md_atof (type, litP, sizeP, target_big_endian);
size_t md_longopts_size = sizeof (md_longopts);
int
-md_parse_option (int c, char *arg ATTRIBUTE_UNUSED)
+md_parse_option (int c, const char *arg ATTRIBUTE_UNUSED)
{
switch (c)
{
char *buf = fixP->fx_where + fixP->fx_frag->fr_literal;
long val = *valP;
long max, min;
- int shift;
max = min = 0;
- shift = 0;
switch (fixP->fx_r_type)
{
case BFD_RELOC_VTABLE_INHERIT:
}
break;
+ case BFD_RELOC_PJ_CODE_REL32:
+ fixP->fx_done = 0;
+ return;
+
default:
abort ();
}
arelent *rel;
bfd_reloc_code_real_type r_type;
- rel = xmalloc (sizeof (arelent));
- rel->sym_ptr_ptr = xmalloc (sizeof (asymbol *));
+ rel = XNEW (arelent);
+ rel->sym_ptr_ptr = XNEW (asymbol *);
*rel->sym_ptr_ptr = symbol_get_bfdsym (fixp->fx_addsy);
rel->address = fixp->fx_frag->fr_address + fixp->fx_where;