I went over a massive package using ASTInterpreter (basically using commands n
and s
) and came across the following output. Why was such a long diagram printed and regular output omitted? Quite puzzled.
1|debug > s
Body`
├─ :(_6 = (Array{Any,1})(0))
│ ├─ _6
│ └─ Call
│ ├─ Array{Any,1}
│ └─ 0
├─ :(SSAValue(0) = (af.colon)(1,(Base.length)(_2) >> 1))
│ ├─ SSAValue(0)
│ └─ Call
│ ├─ af.colon
│ ├─ 1
│ └─ Call
│ ├─ Base.>>
│ ├─ Call
│ │ ├─ Base.length
│ │ └─ _2
│ └─ 1
├─ :(_7 = (Base.start)(SSAValue(0)))
│ ├─ _7
│ └─ Call
│ ├─ Base.start
│ └─ SSAValue(0)
├─ 4:
├─ :(unless !((Base.done)(SSAValue(0),_7)) goto 14)
│ ├─ Call
│ │ ├─ Base.!
│ │ └─ Call
│ │ ├─ Base.done
│ │ ├─ SSAValue(0)
│ │ └─ _7
│ └─ 14
├─ :(SSAValue(1) = (Base.next)(SSAValue(0),_7))
│ ├─ SSAValue(1)
│ └─ Call
│ ├─ Base.next
│ ├─ SSAValue(0)
│ └─ _7
├─ :(_8 = (Core.getfield)(SSAValue(1),1))
│ ├─ _8
│ └─ Call
│ ├─ Core.getfield
│ ├─ SSAValue(1)
│ └─ 1
├─ :(_7 = (Core.getfield)(SSAValue(1),2))
│ ├─ _7
│ └─ Call
│ ├─ Core.getfield
│ ├─ SSAValue(1)
│ └─ 2
├─ :(_9 = _8 * 2 - 1)
│ ├─ _9
│ └─ Call
│ ├─ Base.-
│ ├─ Call
│ │ ├─ Base.*
│ │ ├─ _8
│ │ └─ 2
│ └─ 1
├─ :(_10 = (Core.arrayref)(_2,_9))
│ ├─ _10
│ └─ Call
│ ├─ Core.arrayref
│ ├─ _2
│ └─ _9
├─ Call
│ ├─ Core.ccall
│ ├─ :jl_array_ptr_1d_push
│ ├─ af.Void
│ ├─ Call
│ │ ├─ Core.svec
│ │ ├─ af.Any
│ │ └─ af.Any
│ ├─ _6
│ ├─ 0
│ ├─ Call
│ │ ├─ Core.tuple
│ │ ├─ _10
│ │ └─ Call
│ │ ├─ Core.arrayref
│ │ ├─ _2
│ │ └─ Call
│ │ ├─ Base.+
│ │ ├─ _9
│ │ └─ 1
│ └─ 0
├─ 12:
├─ goto 4
├─ 14:
└─ Return
└─ Call
├─ af.#\#284
├─ _6
├─ _3
├─ _4
└─ _5