; start of dump from pass_cd_dce (../../src/gcc/tree-ssa-dce.c:1754) ;; Function ravif2 (ravif2, funcdef_no=0, decl_uid=364, cgraph_uid=0, symbol_order=0) ;; 1 loops found ;; ;; Loop 0 ;; header 0, latch 1 ;; depth 0, outer -1 ;; nodes: 0 1 2 3 4 ;; 2 succs { 3 4 } ;; 3 succs { 4 } ;; 4 succs { 1 } Marking useful stmt: entry: Marking useful stmt: raviV_op_loadnil (_4, 0, 0); Marking useful stmt: MEM[(struct ravi_TValue *)base_9 + 16B].value_.i = _12; Marking useful stmt: MEM[(struct ravi_TValue *)base_9 + 16B].tt_ = 1; Marking useful stmt: MEM[(struct ravi_TValue *)base_9 + 16B].value_.i = _15; Marking useful stmt: printf ("OP_RETURN(pc=%d) return %d args", 13, 1); Marking useful stmt: L_3(D)->top = _21; Marking useful stmt: OP_RETURN_if_sizep_gt_0_12_23: Marking useful stmt: luaF_close (L_3(D), base_20); Marking useful stmt: OP_RETURN_else_sizep_gt_0_12_24: Marking useful stmt: luaD_poscall (L_3(D), _26); Marking useful stmt: return 1; Processing worklist: processing: return 1; processing: luaD_poscall (L_3(D), _26); marking necessary through _26 stmt _26 = base_20 + 16; processing: _26 = base_20 + 16; marking necessary through base_20 stmt base_20 = _19->u.l.base; processing: base_20 = _19->u.l.base; marking necessary through _19 stmt _19 = L_3(D)->ci; processing: _19 = L_3(D)->ci; processing: luaF_close (L_3(D), base_20); Marking useful stmt: if (_24 > 0) processing: if (_24 > 0) marking necessary through _24 stmt _24 = _23->sizep; processing: _24 = _23->sizep; marking necessary through _23 stmt _23 = cl_6->p; processing: _23 = cl_6->p; marking necessary through cl_6 stmt cl_6 = _5->value_.gc; processing: cl_6 = _5->value_.gc; marking necessary through _5 stmt _5 = _4->func; processing: _5 = _4->func; marking necessary through _4 stmt _4 = L_3(D)->ci; processing: _4 = L_3(D)->ci; processing: L_3(D)->top = _21; marking necessary through _21 stmt _21 = base_20 + 32; processing: _21 = base_20 + 32; processing: printf ("OP_RETURN(pc=%d) return %d args", 13, 1); processing: MEM[(struct ravi_TValue *)base_9 + 16B].value_.i = _15; marking necessary through base_9 stmt base_9 = _8->u.l.base; marking necessary through _15 stmt _15 = _11->value_.i; processing: _15 = _11->value_.i; marking necessary through _11 stmt _11 = _10->k; processing: _11 = _10->k; marking necessary through _10 stmt _10 = cl_6->p; processing: _10 = cl_6->p; processing: base_9 = _8->u.l.base; marking necessary through _8 stmt _8 = L_3(D)->ci; processing: _8 = L_3(D)->ci; processing: MEM[(struct ravi_TValue *)base_9 + 16B].tt_ = 1; processing: MEM[(struct ravi_TValue *)base_9 + 16B].value_.i = _12; marking necessary through _12 stmt _12 = _11->value_.i; processing: _12 = _11->value_.i; processing: raviV_op_loadnil (_4, 0, 0); Eliminating unnecessary statements: Removed 0 of 28 statements (0%) Removed 0 of 1 PHI nodes (0%) ravif2 (struct ravi_lua_State * L) { struct ravi_TValue * base; struct ravi_LClosure * cl; struct ravi_CallInfo * _4; struct ravi_TValue * _5; struct ravi_CallInfo * _8; struct ravi_Proto * _10; struct ravi_TValue * _11; signed long _12; signed long _15; struct ravi_CallInfo * _19; struct ravi_TValue * _21; struct ravi_Proto * _23; signed int _24; struct ravi_TValue * _26; entry: _4 = L_3(D)->ci; _5 = _4->func; cl_6 = _5->value_.gc; raviV_op_loadnil (_4, 0, 0); _8 = L_3(D)->ci; base_9 = _8->u.l.base; _10 = cl_6->p; _11 = _10->k; _12 = _11->value_.i; MEM[(struct ravi_TValue *)base_9 + 16B].value_.i = _12; MEM[(struct ravi_TValue *)base_9 + 16B].tt_ = 1; _15 = _11->value_.i; MEM[(struct ravi_TValue *)base_9 + 16B].value_.i = _15; printf ("OP_RETURN(pc=%d) return %d args", 13, 1); _19 = L_3(D)->ci; base_20 = _19->u.l.base; _21 = base_20 + 32; L_3(D)->top = _21; _23 = cl_6->p; _24 = _23->sizep; if (_24 > 0) goto (OP_RETURN_if_sizep_gt_0_12_23); else goto (OP_RETURN_else_sizep_gt_0_12_24); OP_RETURN_if_sizep_gt_0_12_23: luaF_close (L_3(D), base_20); OP_RETURN_else_sizep_gt_0_12_24: _26 = base_20 + 16; luaD_poscall (L_3(D), _26); return 1; } ; end of dump from pass_cd_dce (../../src/gcc/tree-ssa-dce.c:1754)