You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
1 ─ s = (Main.zero)($(Expr(:static_parameter, 1)))
88
+
@ REPL[1]:2 within `summer'
89
+
1 ─ s = Main.zero($(Expr(:static_parameter, 1)))
90
+
│ @ REPL[1]:3 within `summer'
23
91
│ %2 = A
24
-
│ #temp# = (Base.iterate)(%2)
25
-
│ %4=#temp# === nothing
26
-
│ %5=(Base.not_int)(%4)
92
+
│ @_4 = Base.iterate(%2)
93
+
│ %4 = @_4 === nothing
94
+
│ %5 = Base.not_int(%4)
27
95
└── goto #4 if not %5
28
-
2 ┄ %7=#temp#
29
-
│ a = (Core.getfield)(%7, 1)
30
-
│ %9= (Core.getfield)(%7, 2)
96
+
2 ┄ %7 = @_4
97
+
│ a = Core.getfield(%7, 1)
98
+
│ %9 = Core.getfield(%7, 2)
99
+
│ @ REPL[1]:4 within `summer'
31
100
│ s = s + a
32
-
│ #temp# = (Base.iterate)(%2, %9)
33
-
│ %12=#temp# === nothing
34
-
│ %13=(Base.not_int)(%12)
101
+
│ @_4= Base.iterate(%2, %9)
102
+
│ %12=@_4===nothing
103
+
│ %13= Base.not_int(%12)
35
104
└── goto #4 if not %13
36
105
3 ─ goto #2
106
+
@ REPL[1]:6 within `summer'
37
107
4 ┄ return s
38
108
)
39
109
```
110
+
!!! note
111
+
Not all Julia versions support `debuginfo`. If the command above fails for you,
112
+
just omit the `debuginfo=:source` portion.
40
113
41
114
To understand this package's internals, you need to familiarize yourself with these
42
-
`CodeInfo` objects. The numbers on the left correspond to [basic blocks](https://en.wikipedia.org/wiki/Basic_block);
43
-
when used in statements these are printed with a hash, e.g., in `goto #4 if not %6`, the
115
+
`CodeInfo` objects.
116
+
The lines that start with `@ REPL[1]:n` indicate the source line of the succeeding
117
+
block of statements; here we defined this method in the REPL, so the source file is `REPL[1]`;
118
+
the number after the colon is the line number.
119
+
120
+
The numbers on the left correspond to [basic blocks](https://en.wikipedia.org/wiki/Basic_block),
121
+
as we annotated with `@label block2` above.
122
+
When used in statements these are printed with a hash, e.g., in`goto #4 if not %5`, the
44
123
`#4` refers to basic block 4.
45
-
The numbers in the next column--e.g., `%1`, refer to [single static assignment (SSA) values](https://en.wikipedia.org/wiki/Static_single_assignment_form).
124
+
The numbers in the next column--e.g., `%2`, refer to
0 commit comments