summaryrefslogtreecommitdiff
path: root/alpha/include/ape/stdarg.h
diff options
context:
space:
mode:
authorcinap_lenrek <devnull@localhost>2011-03-30 16:05:55 +0000
committercinap_lenrek <devnull@localhost>2011-03-30 16:05:55 +0000
commitc3ceeded2dfb647e1a4172debf3cf6d3aba5ef39 (patch)
tree463dc45c4a24bec37a8bfabdbfa02e3f4d21f8e6 /alpha/include/ape/stdarg.h
parent96fa636465351366a4e11569c21175a9337d7866 (diff)
downloadplan9front-c3ceeded2dfb647e1a4172debf3cf6d3aba5ef39.tar.xz
...
Diffstat (limited to 'alpha/include/ape/stdarg.h')
-rw-r--r--alpha/include/ape/stdarg.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/alpha/include/ape/stdarg.h b/alpha/include/ape/stdarg.h
new file mode 100644
index 000000000..f4ff6c734
--- /dev/null
+++ b/alpha/include/ape/stdarg.h
@@ -0,0 +1,17 @@
+#ifndef __STDARG
+#define __STDARG
+
+typedef char *va_list;
+
+#define va_start(list, start) list = (char *)(&(start)+1)
+#define va_end(list)
+#define va_arg(list, mode)\
+ (sizeof(mode)==1?\
+ ((mode*)(list += 4))[-1]:\
+ sizeof(mode)==2?\
+ ((mode*)(list += 4))[-1]:\
+ sizeof(mode)>4?\
+ ((mode*)(list = (char*)((long)(list+7) & ~7) + sizeof(mode)))[-1]:\
+ ((mode*)(list += sizeof(mode)))[-1])
+
+#endif /* __STDARG */