testsuite updated to reflect recent changes in codegen: branch support
This commit is contained in:
committed by
vvlevchenko
parent
76ee79adc0
commit
3c68ee4ce5
@@ -174,7 +174,31 @@ task hello2(type: RunKonanTest) {
|
|||||||
source = "runtime/basic/hello2.kt"
|
source = "runtime/basic/hello2.kt"
|
||||||
} */
|
} */
|
||||||
|
|
||||||
// TODO: waiting for boolean to be implemented
|
task if_else(type: UnitKonanTest) {
|
||||||
//task bool_yes(type: KonanTest) {
|
source = "codegen/branching/if_else.kt"
|
||||||
// source = "codegen/function/boolean.kt"
|
}
|
||||||
//}
|
|
||||||
|
task when2(type: UnitKonanTest) {
|
||||||
|
source = "codegen/branching/when2.kt"
|
||||||
|
}
|
||||||
|
|
||||||
|
task when5(type: UnitKonanTest) {
|
||||||
|
source = "codegen/branching/when5.kt"
|
||||||
|
}
|
||||||
|
|
||||||
|
task when_through(type: UnitKonanTest) {
|
||||||
|
source = "codegen/branching/when_through.kt"
|
||||||
|
}
|
||||||
|
|
||||||
|
task advanced_when2(type: UnitKonanTest) {
|
||||||
|
source = "codegen/branching/advanced_when2.kt"
|
||||||
|
}
|
||||||
|
|
||||||
|
task advanced_when5(type: UnitKonanTest) {
|
||||||
|
source = "codegen/branching/advanced_when5.kt"
|
||||||
|
}
|
||||||
|
|
||||||
|
task bool_yes(type: UnitKonanTest) {
|
||||||
|
source = "codegen/function/boolean.kt"
|
||||||
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,10 @@
|
|||||||
|
extern void *resolve_symbol(const char*);
|
||||||
|
|
||||||
|
int
|
||||||
|
run_test() {
|
||||||
|
int (*advanced_when2)(int) = resolve_symbol("kfun:advanced_when2");
|
||||||
|
|
||||||
|
if (advanced_when2(2) != 3) return 1;
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
fun advanced_when2(i: Int): Int {
|
||||||
|
var value = 1
|
||||||
|
when (i) {
|
||||||
|
10 -> {val v = 42; value = v}
|
||||||
|
// 11 -> {val v = 43; value = v}
|
||||||
|
// 12 -> {val v = 44; value = v}
|
||||||
|
}
|
||||||
|
|
||||||
|
return value
|
||||||
|
}
|
||||||
|
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
extern void *resolve_symbol(const char*);
|
||||||
|
|
||||||
|
int
|
||||||
|
run_test() {
|
||||||
|
int (*advanced_when5)(int) = resolve_symbol("kfun:advanced_when5");
|
||||||
|
|
||||||
|
if (advanced_when5(2) != 3) return 1;
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
fun advanced_when5(i: Int): Int {
|
||||||
|
when (i) {
|
||||||
|
0 -> { val v = 42; return v}
|
||||||
|
1 -> { val v = 42; return v}
|
||||||
|
2 -> { val v = 42; return v}
|
||||||
|
3 -> { val v = 42; return v}
|
||||||
|
4 -> { val v = 42; return v}
|
||||||
|
else -> return 24
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
extern void *resolve_symbol(const char*);
|
||||||
|
|
||||||
|
int
|
||||||
|
run_test() {
|
||||||
|
int (*if_else)(int) = resolve_symbol("kfun:if_else");
|
||||||
|
|
||||||
|
if (if_else(0) != 24) return 1;
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
fun if_else(b: Boolean): Int {
|
||||||
|
if (b) return 42
|
||||||
|
else return 24
|
||||||
|
}
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
extern void *resolve_symbol(const char*);
|
||||||
|
|
||||||
|
int
|
||||||
|
run_test() {
|
||||||
|
int (*when2)(int) = resolve_symbol("kfun:when2");
|
||||||
|
|
||||||
|
if (when2(0) != 42) return 1;
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
fun when2(i: Int): Int {
|
||||||
|
when (i) {
|
||||||
|
0 -> return 42
|
||||||
|
else -> return 24
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
fun when5(i: Int): Int {
|
||||||
|
when (i) {
|
||||||
|
0 -> return 42
|
||||||
|
1 -> return 4
|
||||||
|
2 -> return 3
|
||||||
|
3 -> return 2
|
||||||
|
4 -> return 1
|
||||||
|
}
|
||||||
|
return 24
|
||||||
|
}
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
extern void *resolve_symbol(const char*);
|
||||||
|
|
||||||
|
int
|
||||||
|
run_test() {
|
||||||
|
int (*when5)(int) = resolve_symbol("kfun:when5");
|
||||||
|
|
||||||
|
if (when5(2) != 3) return 1;
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
fun when5(i: Int): Int {
|
||||||
|
when (i) {
|
||||||
|
0 -> return 42
|
||||||
|
1 -> return 4
|
||||||
|
2 -> return 3
|
||||||
|
3 -> return 2
|
||||||
|
4 -> return 1
|
||||||
|
else -> return 24
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
extern void *resolve_symbol(const char*);
|
||||||
|
|
||||||
|
int
|
||||||
|
run_test() {
|
||||||
|
int (*when_through)(int) = resolve_symbol("kfun:when_through");
|
||||||
|
|
||||||
|
if (when_through(2) != 3) return 1;
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
fun when_through(i: Int): Int {
|
||||||
|
var value = 1
|
||||||
|
when (i) {
|
||||||
|
10 -> value = 42
|
||||||
|
11 -> value = 43
|
||||||
|
12 -> value = 44
|
||||||
|
}
|
||||||
|
|
||||||
|
return value
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user