mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-08-06 14:49:38 +08:00
PR gas/15602
* config/tc-m68k.h (TC_CHECK_ADJUSTED_BROKEN_DOT_WORD): Define. * config/tc-m68k.c (tc_m68k_check_adjusted_broken_word): New function. Generates an error if the adjusted offset is out of a 16-bit range.
This commit is contained in:
@ -1,3 +1,11 @@
|
|||||||
|
2013-06-13 Nick Clifton <nickc@redhat.com>
|
||||||
|
|
||||||
|
PR gas/15602
|
||||||
|
* config/tc-m68k.h (TC_CHECK_ADJUSTED_BROKEN_DOT_WORD): Define.
|
||||||
|
* config/tc-m68k.c (tc_m68k_check_adjusted_broken_word): New
|
||||||
|
function. Generates an error if the adjusted offset is out of a
|
||||||
|
16-bit range.
|
||||||
|
|
||||||
2013-06-12 Sandra Loosemore <sandra@codesourcery.com>
|
2013-06-12 Sandra Loosemore <sandra@codesourcery.com>
|
||||||
|
|
||||||
* config/tc-nios2.c (md_apply_fix): Mask constant
|
* config/tc-nios2.c (md_apply_fix): Mask constant
|
||||||
|
@ -8133,3 +8133,17 @@ tc_m68k_frame_initial_instructions (void)
|
|||||||
cfi_add_CFA_def_cfa (sp_regno, -DWARF2_CIE_DATA_ALIGNMENT);
|
cfi_add_CFA_def_cfa (sp_regno, -DWARF2_CIE_DATA_ALIGNMENT);
|
||||||
cfi_add_CFA_offset (DWARF2_DEFAULT_RETURN_COLUMN, DWARF2_CIE_DATA_ALIGNMENT);
|
cfi_add_CFA_offset (DWARF2_DEFAULT_RETURN_COLUMN, DWARF2_CIE_DATA_ALIGNMENT);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Check and emit error if broken-word handling has failed to fix up a
|
||||||
|
case-table. This is called from write.c, after doing everything it
|
||||||
|
knows about how to handle broken words. */
|
||||||
|
|
||||||
|
void
|
||||||
|
tc_m68k_check_adjusted_broken_word (offsetT new_offset, struct broken_word *brokwP)
|
||||||
|
{
|
||||||
|
if (new_offset > 32767 || new_offset < -32768)
|
||||||
|
as_bad_where (brokwP->frag->fr_file, brokwP->frag->fr_line,
|
||||||
|
_("Adjusted signed .word (%#lx) overflows: `switch'-statement too large."),
|
||||||
|
(long) new_offset);
|
||||||
|
}
|
||||||
|
|
||||||
|
@ -188,3 +188,9 @@ extern void tc_m68k_frame_initial_instructions (void);
|
|||||||
/* However, follow compiler's guidance when it specifies encoding for LSDA. */
|
/* However, follow compiler's guidance when it specifies encoding for LSDA. */
|
||||||
# define CFI_DIFF_LSDA_OK 1
|
# define CFI_DIFF_LSDA_OK 1
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
struct broken_word;
|
||||||
|
#define TC_CHECK_ADJUSTED_BROKEN_DOT_WORD(new_offset, brokw) \
|
||||||
|
tc_m68k_check_adjusted_broken_word ((offsetT) (new_offset), (brokw))
|
||||||
|
extern void tc_m68k_check_adjusted_broken_word (offsetT,
|
||||||
|
struct broken_word *);
|
||||||
|
Reference in New Issue
Block a user