summaryrefslogtreecommitdiff
path: root/include/coff
diff options
context:
space:
mode:
authorArnold Metselaar <arnold.metselaar@planet.nl>2009-10-17 18:23:12 +0000
committerArnold Metselaar <arnold.metselaar@planet.nl>2009-10-17 18:23:12 +0000
commitf0117a41799a59e019ffb3ed8e286ac22a869561 (patch)
treea49be2ca028ef0ad42a05a29f89fb8e25eefc6f0 /include/coff
parent276605bc084348c1bfc57e0ab42758179847d49a (diff)
downloadbinutils-redhat-f0117a41799a59e019ffb3ed8e286ac22a869561.tar.gz
* z80.h: Store alignment requirement in section header, to allow
ld to preserve alignment. Some code was copied from ti.h.
Diffstat (limited to 'include/coff')
-rw-r--r--include/coff/ChangeLog5
-rw-r--r--include/coff/z80.h9
2 files changed, 14 insertions, 0 deletions
diff --git a/include/coff/ChangeLog b/include/coff/ChangeLog
index 5b9e45c8f1..66ca81f00b 100644
--- a/include/coff/ChangeLog
+++ b/include/coff/ChangeLog
@@ -1,3 +1,8 @@
+2009-10-17 Arnold Metselaar <arnold.metselaar@planet.nl>
+
+ * z80.h: Store alignment requirement in section header, to allow
+ ld to preserve alignment. Some code was copied from ti.h.
+
2009-09-05 Martin Thuresson <martin@mtme.org>
* ti.h (GET_LNSZ_SIZE, PUT_LNSZ_SIZE): Updated name of class
diff --git a/include/coff/z80.h b/include/coff/z80.h
index 3c72c10dd9..3d37c1d0f7 100644
--- a/include/coff/z80.h
+++ b/include/coff/z80.h
@@ -30,6 +30,15 @@
/* Type of cpu is stored in flags. */
#define F_MACHMASK 0xF000
+/* Z80 COFF encodes the section alignment in the section header flags */
+#define COFF_ALIGN_IN_SECTION_HEADER 1
+#define COFF_ALIGN_IN_S_FLAGS 1
+#define F_ALGNMASK 0x0F00
+/* requires a power-of-two argument */
+#define COFF_ENCODE_ALIGNMENT(S,X) ((S).s_flags |= (((unsigned)(X)&0xF)<<8))
+/* result is a power of two */
+#define COFF_DECODE_ALIGNMENT(X) (((X)>>8)&0xF)
+
#define Z80MAGIC 0x805A
#define Z80BADMAG(x) (((x).f_magic != Z80MAGIC))