summaryrefslogtreecommitdiff
path: root/src/cmd/5l/l.h
diff options
context:
space:
mode:
authorRuss Cox <rsc@golang.org>2010-02-10 15:01:02 -0800
committerRuss Cox <rsc@golang.org>2010-02-10 15:01:02 -0800
commitf73b19e403c5d0ae641053cb4c127ccb02304030 (patch)
tree87ece72cc35ddb91e6ddef18247991f939de6cb9 /src/cmd/5l/l.h
parentba505420849cf717607741226cc2725e63820a56 (diff)
downloadgolang-f73b19e403c5d0ae641053cb4c127ccb02304030.tar.gz
arm: fix build on android
R=kaib CC=golang-dev http://codereview.appspot.com/206059
Diffstat (limited to 'src/cmd/5l/l.h')
-rw-r--r--src/cmd/5l/l.h24
1 files changed, 16 insertions, 8 deletions
diff --git a/src/cmd/5l/l.h b/src/cmd/5l/l.h
index 8c00f11c1..9a54122a7 100644
--- a/src/cmd/5l/l.h
+++ b/src/cmd/5l/l.h
@@ -127,6 +127,7 @@ struct Sym
uchar reachable;
int32 value;
int32 sig;
+ int32 size;
uchar used;
uchar thumb; // thumb code
uchar foreign; // called by arm if thumb, by thumb if arm
@@ -470,13 +471,20 @@ int fninc(Sym *);
void thumbcount(void);
void reachable(void);
void fnptrs(void);
-
-uint32 linuxheadr(void);
-void linuxphdr(int type, int flags, vlong foff,
- vlong vaddr, vlong paddr,
- vlong filesize, vlong memsize, vlong align);
-void linuxshdr(char *name, uint32 type, vlong flags, vlong addr, vlong off,
- vlong size, uint32 link, uint32 info, vlong align, vlong entsize);
-int linuxstrtable(void);
+void doelf(void);
+
+vlong addaddr(Sym *s, Sym *t);
+vlong addsize(Sym *s, Sym *t);
+vlong addstring(Sym *s, char *str);
+vlong adduint16(Sym *s, uint16 v);
+vlong adduint32(Sym *s, uint32 v);
+vlong adduint64(Sym *s, uint64 v);
+vlong adduint8(Sym *s, uint8 v);
+vlong adduintxx(Sym *s, uint64 v, int wid);
+
+/* Native is little-endian */
+#define LPUT(a) lputl(a)
+#define WPUT(a) wputl(a)
+#define VPUT(a) abort()
#endif