snafu_05.0: does not follow 7-v rule (may fail)
authorSnafu <stuff@c-gabriel.at>
Sun, 16 May 2010 14:36:39 +0000 (16:36 +0200)
committerSnafu <stuff@c-gabriel.at>
Sun, 16 May 2010 14:36:39 +0000 (16:36 +0200)
snafu_06.0: stuff with immediates

codea/snafu_05.0 [new file with mode: 0644]
codea/snafu_05.call [new file with mode: 0644]
codea/snafu_05.instr [new file with mode: 0644]
codea/snafu_06.0 [new file with mode: 0644]
codea/snafu_06.call [new file with mode: 0644]
codea/snafu_06.instr [new file with mode: 0644]

diff --git a/codea/snafu_05.0 b/codea/snafu_05.0
new file mode 100644 (file)
index 0000000..bb0ff4b
--- /dev/null
@@ -0,0 +1,3 @@
+method meh(a b c d)
+       return (this * (a - b)) - (c - (a * d));
+end;
diff --git a/codea/snafu_05.call b/codea/snafu_05.call
new file mode 100644 (file)
index 0000000..49e372a
--- /dev/null
@@ -0,0 +1,3 @@
+long meh(long, long, long, long, long);
+
+RET(meh(2,11,5,15,32) == 349);
diff --git a/codea/snafu_05.instr b/codea/snafu_05.instr
new file mode 100644 (file)
index 0000000..ec63514
--- /dev/null
@@ -0,0 +1 @@
+9
diff --git a/codea/snafu_06.0 b/codea/snafu_06.0
new file mode 100644 (file)
index 0000000..1803c6c
--- /dev/null
@@ -0,0 +1,11 @@
+method test64()
+       return this - -0x80808080;
+end;
+
+method num()
+       return 15 - 4 - 2 - 6 - 7;
+end;
+
+method num2()
+       return 15 - (4 - 2 - 6 - 7);
+end;
diff --git a/codea/snafu_06.call b/codea/snafu_06.call
new file mode 100644 (file)
index 0000000..c618c4d
--- /dev/null
@@ -0,0 +1,5 @@
+long test64(long);
+
+RET((test64(0x1000000000) ==  (long) 0x1000000000 + (int) 0x80808080) 
+       && (num(0) == -4)
+       && (num2(0) == 26));
diff --git a/codea/snafu_06.instr b/codea/snafu_06.instr
new file mode 100644 (file)
index 0000000..7f8f011
--- /dev/null
@@ -0,0 +1 @@
+7