aboutsummaryrefslogtreecommitdiffstats
path: root/test/mppa/interop/vaarg_common.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/mppa/interop/vaarg_common.c')
-rw-r--r--test/mppa/interop/vaarg_common.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/test/mppa/interop/vaarg_common.c b/test/mppa/interop/vaarg_common.c
index 9033893b..3314959f 100644
--- a/test/mppa/interop/vaarg_common.c
+++ b/test/mppa/interop/vaarg_common.c
@@ -3,20 +3,24 @@
#define STACK int a[100];\
a[42] = 42;
-#define ONEARG_OP(arg) (3*arg+2)
+#define ONEARG_OP(arg) (3*magic(arg)+2)
-#define MULTIARG_OP(arg1, arg2, arg3, arg4) (arg1 ^ arg2 << arg3 - arg4)
+#define MULTIARG_OP(arg1, arg2, arg3, arg4) (arg1 ^ magic(arg2) << arg3 - arg4)
#define MANYARG_OP(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9,\
a10, a11, a12, a13, a14, a15, a16, a17, a18, a19,\
a20, a21, a22, a23, a24, a25, a26, a27, a28, a29)\
- (a0 + a1 * a2 + a3 * a4 + a5 + a6 + a7 - a8 + a9 +\
- a10 + a11 - a12 ^ a13 + a14 - a15 + a16 ^ a17 + a18 + a19 +\
+ (a0 + a1 * a2 + magic(a3) * a4 + a5 + a6 + a7 - a8 + a9 +\
+ a10 + a11 - a12 ^ a13 + a14 - magic(a15) + a16 ^ a17 + a18 + a19 +\
a20 + a21 + a22 * a23 + a24 + a25 << a26 & a27 + a28 + a29)
#define VA_START(vl, arg) va_list vl; va_start(vl, arg)
#define VA_END(vl) va_end(vl)
+int magic(long a){
+ return a*2 + 42;
+}
+
void void_void(void){
STACK;
}