aboutsummaryrefslogtreecommitdiff
path: root/gas/config/tc-ia64.h
diff options
context:
space:
mode:
authorJim Wilson <wilson@tuliptree.org>2004-07-04 00:29:21 +0000
committerJim Wilson <wilson@tuliptree.org>2004-07-04 00:29:21 +0000
commit5a9ff93dab6b113db2b37fcea9e0937fae1ae41d (patch)
tree9ee8d9812a6aa5f3157967626032097ff6f2c079 /gas/config/tc-ia64.h
parent2405c5d661781d27b766f8889d2e2fa960d2d0c6 (diff)
downloadgdb-5a9ff93dab6b113db2b37fcea9e0937fae1ae41d.zip
gdb-5a9ff93dab6b113db2b37fcea9e0937fae1ae41d.tar.gz
gdb-5a9ff93dab6b113db2b37fcea9e0937fae1ae41d.tar.bz2
Emit error for unaligned instructions.
* config/tc-ia64.c (emit_one_bundle): Check and set insn_addr. * config/tc-ia64.h (md_frag_check): Define.
Diffstat (limited to 'gas/config/tc-ia64.h')
-rw-r--r--gas/config/tc-ia64.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/gas/config/tc-ia64.h b/gas/config/tc-ia64.h
index dcc2c29..f626c46 100644
--- a/gas/config/tc-ia64.h
+++ b/gas/config/tc-ia64.h
@@ -158,6 +158,14 @@ extern void ia64_convert_frag (fragS *);
#define TC_FRAG_TYPE int
#define TC_FRAG_INIT(FRAGP) do {(FRAGP)->tc_frag_data = 0;}while (0)
+/* Give an error if a frag containing code is not aligned to a 16 byte
+ boundary. */
+#define md_frag_check(FRAGP) \
+ if ((FRAGP)->has_code \
+ && (((FRAGP)->fr_address + (FRAGP)->insn_addr) & 15) != 0) \
+ as_bad_where ((FRAGP)->fr_file, (FRAGP)->fr_line, \
+ _("instruction address is not a multiple of 16"));
+
#define MAX_MEM_FOR_RS_ALIGN_CODE (15 + 16)
#define WORKING_DOT_WORD /* don't do broken word processing for now */