From e776e3feb600765a3c10f797a7d18de9ebc1c853 Mon Sep 17 00:00:00 2001 From: Martin Perner Date: Tue, 18 May 2010 23:14:10 +0200 Subject: [PATCH] Added new testcases --- codea/skinner33_17.0 | 45 ++++++++++++++++++++++++++++++++++++++++ codea/skinner33_17.call | 28 +++++++++++++++++++++++++ codea/skinner33_17.instr | 1 + codea/skinner33_18.0 | 38 +++++++++++++++++++++++++++++++++ codea/skinner33_18.call | 24 +++++++++++++++++++++ codea/skinner33_18.instr | 1 + codea/skinner33_19.0 | 31 +++++++++++++++++++++++++++ codea/skinner33_19.call | 22 ++++++++++++++++++++ codea/skinner33_19.instr | 1 + 9 files changed, 191 insertions(+) create mode 100644 codea/skinner33_17.0 create mode 100644 codea/skinner33_17.call create mode 100644 codea/skinner33_17.instr create mode 100644 codea/skinner33_18.0 create mode 100644 codea/skinner33_18.call create mode 100644 codea/skinner33_18.instr create mode 100644 codea/skinner33_19.0 create mode 100644 codea/skinner33_19.call create mode 100644 codea/skinner33_19.instr diff --git a/codea/skinner33_17.0 b/codea/skinner33_17.0 new file mode 100644 index 0000000..e6f4035 --- /dev/null +++ b/codea/skinner33_17.0 @@ -0,0 +1,45 @@ +struct foo bar end; + +method f1(a) + return 5 * a.foo; +end; + +method f2(a) + return a.bar * this; +end; + +method f3(a) + return (a.foo-3) < (a.bar-3); +end; + +method f4(a) + return (a.foo*1) < 6; +end; + +method f5(a) + return 5 < (a.bar * 1); +end; + +method f6(a) + return (1 * a.foo) < this; +end; + +method f7(a) + return a.foo < (a.bar * 1); +end; + +method f8(a) + return a.foo < this; +end; + +method f9(a) + return this < a.bar; +end; + +method f10(a) + return a.foo < 6; +end; + +method f11(a) + return 5 < a.bar; +end; diff --git a/codea/skinner33_17.call b/codea/skinner33_17.call new file mode 100644 index 0000000..803f021 --- /dev/null +++ b/codea/skinner33_17.call @@ -0,0 +1,28 @@ + +long f1(long, long*); +long f2(long, long*); +long f3(long, long*); +long f4(long, long*); +long f5(long, long*); +long f6(long, long*); +long f7(long, long*); +long f8(long, long*); +long f9(long, long*); +long f10(long, long*); +long f11(long, long*); + +long muh[] = {5, 6}; +long kuh[] = {6, 5}; + +RET(f1(4,muh) == 25 && + f2(5,muh) == 30 && + f3(5,muh) == 1 && f3(5,kuh) == 0 && + f4(5,muh) == 1 && f4(5,kuh) == 0 && + f5(5,muh) == 1 && f5(5,kuh) == 0 && + f6(6,muh) == 0 && f6(6,kuh) == 0 && + f7(5,muh) == 1 && f7(5,kuh) == 0 && + f8(5,muh) == 0 && f8(7,kuh) == 1 && + f9(5,muh) == 1 && f9(5,kuh) == 0 && + f10(5,muh) == 1 && f10(5,kuh) == 0 && + f11(5,muh) == 1 && f11(5,kuh) == 0 +); diff --git a/codea/skinner33_17.instr b/codea/skinner33_17.instr new file mode 100644 index 0000000..c67f579 --- /dev/null +++ b/codea/skinner33_17.instr @@ -0,0 +1 @@ +93 diff --git a/codea/skinner33_18.0 b/codea/skinner33_18.0 new file mode 100644 index 0000000..41e359c --- /dev/null +++ b/codea/skinner33_18.0 @@ -0,0 +1,38 @@ +struct foo bar end; + +method f1(a) + return (a.foo * 1) = 5; +end; + +method f2(a) + return 5 = (a.bar * 1); +end; + +method f3(a) + return (a.foo * 1) = this; +end; + +method f4(a) + return this = (a.bar * 1); +end; + +method f5(a) + return a.foo = (this * 1); +end; + +method f6(a) + return a.foo = 5; +end; + +method f7(a) + return 5 = a.bar; +end; + +method f8(a) + return a.foo = this; +end; + +method f9(a) + return this = a.bar; +end; + diff --git a/codea/skinner33_18.call b/codea/skinner33_18.call new file mode 100644 index 0000000..f8d0291 --- /dev/null +++ b/codea/skinner33_18.call @@ -0,0 +1,24 @@ + +long f1(long, long*); +long f2(long, long*); +long f3(long, long*); +long f4(long, long*); +long f5(long, long*); +long f6(long, long*); +long f7(long, long*); +long f8(long, long*); +long f9(long, long*); + +long muh[] = {5, 6}; +long kuh[] = {6, 5}; + +RET(f1(4,muh) == 1 && f1(5,kuh) == 0 && + f2(5,muh) == 0 && f2(5,kuh) == 1 && + f3(5,muh) == 1 && f3(5,kuh) == 0 && + f4(5,muh) == 0 && f4(5,kuh) == 1 && + f5(5,muh) == 1 && f5(5,kuh) == 0 && + f6(6,muh) == 1 && f6(6,kuh) == 0 && + f7(5,muh) == 0 && f7(5,kuh) == 1 && + f8(5,muh) == 1 && f8(5,kuh) == 0 && + f9(5,muh) == 0 && f9(5,kuh) == 1 +); diff --git a/codea/skinner33_18.instr b/codea/skinner33_18.instr new file mode 100644 index 0000000..dde92dd --- /dev/null +++ b/codea/skinner33_18.instr @@ -0,0 +1 @@ +82 diff --git a/codea/skinner33_19.0 b/codea/skinner33_19.0 new file mode 100644 index 0000000..3a12e4b --- /dev/null +++ b/codea/skinner33_19.0 @@ -0,0 +1,31 @@ +method f1(a b) + return not(a or b); +end; + +method f2(a b) + return not(not(a or b)); +end; + +method f3(a b) + return not(a - b); +end; + +method f4(a b) + return not(not(a - b)); +end; + +method f5(a b) + return not(a < b); +end; + +method f6(a b) + return not(not(a < b)); +end; + +method f7(a b) + return not(a = b); +end; + +method f8(a b) + return not(not(a = b)); +end; diff --git a/codea/skinner33_19.call b/codea/skinner33_19.call new file mode 100644 index 0000000..2d6d7b8 --- /dev/null +++ b/codea/skinner33_19.call @@ -0,0 +1,22 @@ +long f1(long,long,long); +long f2(long,long,long); +long f3(long,long,long); +long f4(long,long,long); +long f5(long,long,long); +long f6(long,long,long); +long f7(long,long,long); +long f8(long,long,long); + +RET( +f1(0,0,0) == 1 && f1(0,1,1) == 0 && +f2(0,0,0) == 0 && f2(0,1,1) == 1 && + +f3(0,4,4) == 1 && f3(0,4,3) == 0 && +f4(0,4,4) == 0 && f4(0,4,3) == 1 && + +f5(0,5,4) == 1 && f5(0,4,5) == 0 && +f6(0,5,4) == 0 && f6(0,4,5) == 1 && + +f7(0,5,4) == 1 && f7(0,5,5) == 0 && +f8(0,5,4) == 0 && f8(0,5,5) == 1 +); diff --git a/codea/skinner33_19.instr b/codea/skinner33_19.instr new file mode 100644 index 0000000..d22307c --- /dev/null +++ b/codea/skinner33_19.instr @@ -0,0 +1 @@ +88 -- 2.25.1