|
|
@@ -0,0 +1,92 @@
|
|
|
+strict digraph "tests/contract_testcases/substrate/yul/ptr_to_int.sol" {
|
|
|
+ contract [label="contract c\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:2:1-43:2"]
|
|
|
+ tags [label="notice: Tests various"]
|
|
|
+ add_pointer [label="function add_pointer\ncontract: c\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:3:5-6:31\nsignature add_pointer(bytes)\nvisibility public\nmutability pure"]
|
|
|
+ parameters [label="parameters\nbytes _returnData"]
|
|
|
+ returns [label="returns\nbytes "]
|
|
|
+ inline_assembly [label="inline assembly\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:8:9-10:10"]
|
|
|
+ yul_assignment [label="yul assignment\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:9:13-51"]
|
|
|
+ solidity_variable [label="solidity variable: _returnData\nbytes\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:9:13-24"]
|
|
|
+ yul_builtin_call [label="yul builtin call 'add'\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:9:29-51"]
|
|
|
+ solidity_variable_10 [label="solidity variable: _returnData\nbytes\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:9:33-44"]
|
|
|
+ yul_number_literal [label="uint256 literal: 4\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:9:46-50"]
|
|
|
+ inline_assembly_12 [label="inline assembly\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:11:2-13:3"]
|
|
|
+ yul_assignment_13 [label="yul assignment\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:12:6-22"]
|
|
|
+ solidity_variable_14 [label="solidity variable: _returnData\nbytes\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:12:6-17"]
|
|
|
+ yul_number_literal_15 [label="uint256 literal: 1\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:12:21-22"]
|
|
|
+ return [label="return\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:14:9-27"]
|
|
|
+ variable [label="variable: _returnData\nbytes\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:14:16-27"]
|
|
|
+ uint32_as_ptr [label="function uint32_as_ptr\ncontract: c\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:17:5-20:31\nsignature uint32_as_ptr(bytes)\nvisibility public\nmutability pure"]
|
|
|
+ parameters_19 [label="parameters\nbytes _returnData"]
|
|
|
+ returns_20 [label="returns\nbytes "]
|
|
|
+ var_decl [label="variable decl uint32 p\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:22:2-10"]
|
|
|
+ inline_assembly_22 [label="inline assembly\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:23:9-26:10"]
|
|
|
+ yul_assignment_23 [label="yul assignment\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:24:13-41"]
|
|
|
+ solidity_variable_24 [label="solidity variable: p\nuint32\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:24:13-14"]
|
|
|
+ yul_builtin_call_25 [label="yul builtin call 'add'\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:24:19-41"]
|
|
|
+ solidity_variable_26 [label="solidity variable: _returnData\nbytes\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:24:23-34"]
|
|
|
+ yul_number_literal_27 [label="uint256 literal: 4\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:24:36-40"]
|
|
|
+ yul_assignment_28 [label="yul assignment\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:25:6-22"]
|
|
|
+ solidity_variable_29 [label="solidity variable: _returnData\nbytes\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:25:6-17"]
|
|
|
+ solidity_variable_30 [label="solidity variable: p\nuint32\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:25:21-22"]
|
|
|
+ return_31 [label="return\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:27:9-27"]
|
|
|
+ variable_32 [label="variable: _returnData\nbytes\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:27:16-27"]
|
|
|
+ ptr_to_ptr [label="function ptr_to_ptr\ncontract: c\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:30:5-33:31\nsignature ptr_to_ptr(bytes)\nvisibility public\nmutability pure"]
|
|
|
+ parameters_34 [label="parameters\nbytes _returnData"]
|
|
|
+ returns_35 [label="returns\nbytes "]
|
|
|
+ var_decl_36 [label="variable decl uint32[] foo\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:35:2-32"]
|
|
|
+ alloc_array [label="alloc array uint32[]\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:35:17-32"]
|
|
|
+ number_literal [label="uint32 literal: 2\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:35:30-31"]
|
|
|
+ inline_assembly_39 [label="inline assembly\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:36:9-38:10"]
|
|
|
+ yul_assignment_40 [label="yul assignment\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:37:6-24"]
|
|
|
+ solidity_variable_41 [label="solidity variable: _returnData\nbytes\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:37:6-17"]
|
|
|
+ solidity_variable_42 [label="solidity variable: foo\nuint32[]\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:37:21-24"]
|
|
|
+ return_43 [label="return\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:39:9-27"]
|
|
|
+ variable_44 [label="variable: _returnData\nbytes\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:39:16-27"]
|
|
|
+ diagnostic [label="found contract 'c'\nlevel Debug\ntests/contract_testcases/substrate/yul/ptr_to_int.sol:2:1-43:2"]
|
|
|
+ contracts -> contract
|
|
|
+ contract -> tags [label="tags"]
|
|
|
+ contract -> add_pointer [label="function"]
|
|
|
+ add_pointer -> parameters [label="parameters"]
|
|
|
+ add_pointer -> returns [label="returns"]
|
|
|
+ add_pointer -> inline_assembly [label="body"]
|
|
|
+ inline_assembly -> yul_assignment [label="statement #0"]
|
|
|
+ yul_assignment -> solidity_variable [label="rhs #0"]
|
|
|
+ yul_assignment -> yul_builtin_call [label="lhs"]
|
|
|
+ yul_builtin_call -> solidity_variable_10 [label="arg #0"]
|
|
|
+ yul_builtin_call -> yul_number_literal [label="arg #1"]
|
|
|
+ inline_assembly -> inline_assembly_12 [label="next"]
|
|
|
+ inline_assembly_12 -> yul_assignment_13 [label="statement #0"]
|
|
|
+ yul_assignment_13 -> solidity_variable_14 [label="rhs #0"]
|
|
|
+ yul_assignment_13 -> yul_number_literal_15 [label="lhs"]
|
|
|
+ inline_assembly_12 -> return [label="next"]
|
|
|
+ return -> variable [label="expr"]
|
|
|
+ contract -> uint32_as_ptr [label="function"]
|
|
|
+ uint32_as_ptr -> parameters_19 [label="parameters"]
|
|
|
+ uint32_as_ptr -> returns_20 [label="returns"]
|
|
|
+ uint32_as_ptr -> var_decl [label="body"]
|
|
|
+ var_decl -> inline_assembly_22 [label="next"]
|
|
|
+ inline_assembly_22 -> yul_assignment_23 [label="statement #0"]
|
|
|
+ yul_assignment_23 -> solidity_variable_24 [label="rhs #0"]
|
|
|
+ yul_assignment_23 -> yul_builtin_call_25 [label="lhs"]
|
|
|
+ yul_builtin_call_25 -> solidity_variable_26 [label="arg #0"]
|
|
|
+ yul_builtin_call_25 -> yul_number_literal_27 [label="arg #1"]
|
|
|
+ yul_assignment_23 -> yul_assignment_28 [label="statement #1"]
|
|
|
+ yul_assignment_28 -> solidity_variable_29 [label="rhs #0"]
|
|
|
+ yul_assignment_28 -> solidity_variable_30 [label="lhs"]
|
|
|
+ inline_assembly_22 -> return_31 [label="next"]
|
|
|
+ return_31 -> variable_32 [label="expr"]
|
|
|
+ contract -> ptr_to_ptr [label="function"]
|
|
|
+ ptr_to_ptr -> parameters_34 [label="parameters"]
|
|
|
+ ptr_to_ptr -> returns_35 [label="returns"]
|
|
|
+ ptr_to_ptr -> var_decl_36 [label="body"]
|
|
|
+ var_decl_36 -> alloc_array [label="init"]
|
|
|
+ alloc_array -> number_literal [label="length"]
|
|
|
+ var_decl_36 -> inline_assembly_39 [label="next"]
|
|
|
+ inline_assembly_39 -> yul_assignment_40 [label="statement #0"]
|
|
|
+ yul_assignment_40 -> solidity_variable_41 [label="rhs #0"]
|
|
|
+ yul_assignment_40 -> solidity_variable_42 [label="lhs"]
|
|
|
+ inline_assembly_39 -> return_43 [label="next"]
|
|
|
+ return_43 -> variable_44 [label="expr"]
|
|
|
+ diagnostics -> diagnostic [label="Debug"]
|
|
|
+}
|