106 lines
2.9 KiB
Plaintext
106 lines
2.9 KiB
Plaintext
program main
|
|
fn make_i32_values(base: i32) -> (array i32 3)
|
|
array : (array i32 3)
|
|
var base : i32
|
|
binary + : i32
|
|
var base : i32
|
|
int 1 : i32
|
|
binary + : i32
|
|
var base : i32
|
|
int 2 : i32
|
|
fn make_i64_values(base: i64) -> (array i64 3)
|
|
array : (array i64 3)
|
|
var base : i64
|
|
binary + : i64
|
|
var base : i64
|
|
i64 1 : i64
|
|
binary + : i64
|
|
var base : i64
|
|
i64 2 : i64
|
|
fn make_f64_values(base: f64) -> (array f64 3)
|
|
array : (array f64 3)
|
|
var base : f64
|
|
binary + : f64
|
|
var base : f64
|
|
float 1 : f64
|
|
binary + : f64
|
|
var base : f64
|
|
float 2 : f64
|
|
fn make_flags(first: bool) -> (array bool 3)
|
|
array : (array bool 3)
|
|
var first : bool
|
|
bool false : bool
|
|
bool true : bool
|
|
fn i32_at(values: (array i32 3), i: i32) -> i32
|
|
index : i32
|
|
var values : (array i32 3)
|
|
var i : i32
|
|
fn i64_at(values: (array i64 3), i: i32) -> i64
|
|
index : i64
|
|
var values : (array i64 3)
|
|
var i : i32
|
|
fn f64_at(values: (array f64 3), i: i32) -> f64
|
|
index : f64
|
|
var values : (array f64 3)
|
|
var i : i32
|
|
fn bool_at(values: (array bool 3), i: i32) -> bool
|
|
index : bool
|
|
var values : (array bool 3)
|
|
var i : i32
|
|
fn i64_local_array_flow(i: i32) -> i64
|
|
local let values : unit
|
|
call make_i64_values : (array i64 3)
|
|
i64 40 : i64
|
|
call i64_at : i64
|
|
var values : (array i64 3)
|
|
var i : i32
|
|
fn f64_parameter_local_copy(values: (array f64 3), i: i32) -> f64
|
|
local let copy : unit
|
|
var values : (array f64 3)
|
|
index : f64
|
|
var copy : (array f64 3)
|
|
var i : i32
|
|
fn echo_flags(values: (array bool 3)) -> (array bool 3)
|
|
var values : (array bool 3)
|
|
fn bool_call_return_index(i: i32) -> bool
|
|
index : bool
|
|
call make_flags : (array bool 3)
|
|
bool true : bool
|
|
var i : i32
|
|
fn main() -> i32
|
|
if : i32
|
|
call bool_call_return_index : bool
|
|
int 0 : i32
|
|
int 0 : i32
|
|
int 1 : i32
|
|
test "i32 array parameter value flow"
|
|
binary = : bool
|
|
call i32_at : i32
|
|
call make_i32_values : (array i32 3)
|
|
int 7 : i32
|
|
int 0 : i32
|
|
int 7 : i32
|
|
test "i64 array local call value flow"
|
|
binary = : bool
|
|
call i64_local_array_flow : i64
|
|
int 2 : i32
|
|
i64 42 : i64
|
|
test "f64 array parameter local copy"
|
|
binary = : bool
|
|
call f64_parameter_local_copy : f64
|
|
call make_f64_values : (array f64 3)
|
|
float 4 : f64
|
|
int 1 : i32
|
|
float 5 : f64
|
|
test "bool array dynamic index"
|
|
call bool_at : bool
|
|
call make_flags : (array bool 3)
|
|
bool true : bool
|
|
int 2 : i32
|
|
test "bool array return call value flow"
|
|
index : bool
|
|
call echo_flags : (array bool 3)
|
|
call make_flags : (array bool 3)
|
|
bool false : bool
|
|
int 2 : i32
|