diff options
Diffstat (limited to 'gas/config/tc-m68k.h')
-rw-r--r-- | gas/config/tc-m68k.h | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/gas/config/tc-m68k.h b/gas/config/tc-m68k.h index 56879d2..fb33db4 100644 --- a/gas/config/tc-m68k.h +++ b/gas/config/tc-m68k.h @@ -227,11 +227,14 @@ extern int m68k_parse_long_option PARAMS ((char *)); extern struct relax_type md_relax_table[]; #define TC_GENERIC_RELAX_TABLE md_relax_table -/* Copied from write.c */ -/* This was formerly called M68K_AIM_KLUDGE. */ +/* We can't do a byte jump to the next instruction, so in that case + force word mode by faking AIM. */ #define md_prepare_relax_scan(fragP, address, aim, this_state, this_type) \ - if (aim==0 && this_state== 4) { /* hard encoded from tc-m68k.c */ \ - aim=this_type->rlx_forward+1; /* Force relaxation into word mode */ \ - } + do \ + { \ + if (aim == 0 && this_type->rlx_forward == 127) \ + aim = 128; \ + } \ + while (0) #define DWARF2_LINE_MIN_INSN_LENGTH 2 |