mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
55 lines
1.2 KiB
Plaintext
55 lines
1.2 KiB
Plaintext
{
|
|
function f(a, b) -> r {
|
|
let x := add(a,b)
|
|
r := sub(x,a)
|
|
}
|
|
function g() {
|
|
sstore(0x01, 0x0101)
|
|
}
|
|
function h(x) {
|
|
h(f(x, 0))
|
|
g()
|
|
}
|
|
function i() -> v, w {
|
|
v := 0x0202
|
|
w := 0x0303
|
|
}
|
|
let x, y := i()
|
|
h(x)
|
|
h(y)
|
|
}
|
|
// ----
|
|
// Block 0:
|
|
// Entries: None
|
|
// i: [ RET[i] ] => [ TMP[i, 0] TMP[i, 1] ]
|
|
// Assignment(x, y): [ TMP[i, 0] TMP[i, 1] ] => [ x y ]
|
|
// h: [ RET[h] x ] => [ ]
|
|
// h: [ RET[h] y ] => [ ]
|
|
// MainExit
|
|
// function f(a, b) -> r:
|
|
// Block 0:
|
|
// Entries: None
|
|
// add: [ b a ] => [ TMP[add, 0] ]
|
|
// Assignment(x): [ TMP[add, 0] ] => [ x ]
|
|
// sub: [ a x ] => [ TMP[sub, 0] ]
|
|
// Assignment(r): [ TMP[sub, 0] ] => [ r ]
|
|
// FunctionReturn of f
|
|
// function g():
|
|
// Block 0:
|
|
// Entries: None
|
|
// sstore: [ 0x0101 0x01 ] => [ ]
|
|
// FunctionReturn of g
|
|
// function h(x):
|
|
// Block 0:
|
|
// Entries: None
|
|
// f: [ RET[f] 0x00 x ] => [ TMP[f, 0] ]
|
|
// h: [ RET[h] TMP[f, 0] ] => [ ]
|
|
// g: [ RET[g] ] => [ ]
|
|
// FunctionReturn of h
|
|
// function i() -> v, w:
|
|
// Block 0:
|
|
// Entries: None
|
|
// Assignment(v): [ 0x0202 ] => [ v ]
|
|
// Assignment(w): [ 0x0303 ] => [ w ]
|
|
// FunctionReturn of i
|