summaryrefslogtreecommitdiff
path: root/usr.bin/pcc/powerpc/macdefs.h
diff options
context:
space:
mode:
authorOtto Moerbeek <otto@cvs.openbsd.org>2007-11-01 10:52:59 +0000
committerOtto Moerbeek <otto@cvs.openbsd.org>2007-11-01 10:52:59 +0000
commit59110514bbd7cdc9028bf9cc78ac11d6316430a8 (patch)
tree308de9edfd9e2a8a40a3abaecc0c1c3c754d9858 /usr.bin/pcc/powerpc/macdefs.h
parent9b80eb276466cb5f1c5d221bf0afc9a55c488916 (diff)
Pull from master repo, commit by myself:
next step for ELFABI, hello world works with ELFABI, but register pairs still produce wrong assembly; with Dale Rahn
Diffstat (limited to 'usr.bin/pcc/powerpc/macdefs.h')
-rw-r--r--usr.bin/pcc/powerpc/macdefs.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/usr.bin/pcc/powerpc/macdefs.h b/usr.bin/pcc/powerpc/macdefs.h
index 3f58fb9604d..4e4406428a6 100644
--- a/usr.bin/pcc/powerpc/macdefs.h
+++ b/usr.bin/pcc/powerpc/macdefs.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: macdefs.h,v 1.1 2007/10/20 10:01:38 otto Exp $ */
+/* $OpenBSD: macdefs.h,v 1.2 2007/11/01 10:52:58 otto Exp $ */
/*
* Copyright (c) 2003 Anders Magnusson (ragge@ludd.luth.se).
* All rights reserved.
@@ -89,6 +89,8 @@
#define BOOL_TYPE INT /* what used to store _Bool */
#define WCHAR_TYPE INT /* what used to store wchar_t */
+#define ELFABI
+
/*
* Use large-enough types.
*/
@@ -97,8 +99,13 @@ typedef unsigned long long U_CONSZ;
typedef long long OFFSZ;
#define CONFMT "%lld" /* format for printing constants */
+#ifdef ELFABI
+#define LABFMT ".L%d" /* format for printing labels */
+#else
#define LABFMT "L%d" /* format for printing labels */
+#endif
#define STABLBL "LL%d" /* format for stab (debugging) labels */
+#define STAB_LINE_ABSOLUTE /* S_LINE fields use absolute addresses */
#define MYP2TREE(p) myp2tree(p);
@@ -261,6 +268,7 @@ int COLORMAP(int c, int *r);
#define SHSTR (MAXSPECIAL+1) /* short struct */
#define SFUNCALL (MAXSPECIAL+2) /* struct assign after function call */
+#define SPCON (MAXSPECIAL+3) /* positive constant */
struct stub {
struct { struct stub *q_forw, *q_back; } link;