-/* tc-sh.c -- Assemble code for the Renesas Super-H
+/* tc-sh.c -- Assemble code for the Renesas / SuperH SH
Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
Free Software Foundation, Inc.
{"2byte", s_uacons, 2},
{"4byte", s_uacons, 4},
{"8byte", s_uacons, 8},
-#ifdef BFD_ASSEMBLER
- {"file", (void (*) PARAMS ((int))) dwarf2_directive_file, 0 },
- {"loc", dwarf2_directive_loc, 0 },
-#endif
#ifdef HAVE_SH64
{"mode", s_sh64_mode, 0 },
if (opcode->arg[0] == A_BDISP12
|| opcode->arg[0] == A_BDISP8)
{
+ /* Since we skip get_specific here, we have to check & update
+ valid_arch now. */
+ if (valid_arch & opcode->arch)
+ valid_arch &= opcode->arch;
+ else
+ as_bad (_("Delayed branches not available on SH1"));
parse_exp (op_end + 1, &operand[0]);
build_relax (opcode, &operand[0]);
}
rel->addend = 0;
rel->howto = bfd_reloc_type_lookup (stdoutput, r_type);
+#ifdef OBJ_ELF
if (rel->howto->type == R_SH_IND12W)
rel->addend += fixp->fx_offset - 4;
+#endif
if (rel->howto == NULL)
{
as_bad_where (fixp->fx_file, fixp->fx_line,