seafoam 0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (147) hide show
  1. checksums.yaml +7 -0
  2. data/.github/probots.yml +2 -0
  3. data/.github/workflows/rubocop.yml +10 -0
  4. data/.github/workflows/specs.yml +19 -0
  5. data/.gitignore +7 -0
  6. data/.rubocop.yml +34 -0
  7. data/.ruby-version +1 -0
  8. data/.seafoam/config +1 -0
  9. data/CODE_OF_CONDUCT.md +128 -0
  10. data/CONTRIBUTING.md +5 -0
  11. data/Gemfile +2 -0
  12. data/LICENSE.md +7 -0
  13. data/README.md +298 -0
  14. data/bin/bgv2isabelle +53 -0
  15. data/bin/bgv2json +42 -0
  16. data/bin/seafoam +24 -0
  17. data/docs/annotators.md +43 -0
  18. data/docs/bgv.md +284 -0
  19. data/docs/getting-graphs.md +47 -0
  20. data/examples/Fib.java +24 -0
  21. data/examples/MatMult.java +39 -0
  22. data/examples/fib-java.bgv +0 -0
  23. data/examples/fib-js.bgv +0 -0
  24. data/examples/fib-ruby.bgv +0 -0
  25. data/examples/fib.js +15 -0
  26. data/examples/fib.rb +15 -0
  27. data/examples/identity.bgv +0 -0
  28. data/examples/identity.rb +13 -0
  29. data/examples/java/Irreducible.j +35 -0
  30. data/examples/java/IrreducibleDecompiled.java +21 -0
  31. data/examples/java/JavaExamples.java +418 -0
  32. data/examples/java/exampleArithOperator.bgv +0 -0
  33. data/examples/java/exampleArithOperator.cfg +925 -0
  34. data/examples/java/exampleArrayAllocation.bgv +0 -0
  35. data/examples/java/exampleArrayAllocation.cfg +5268 -0
  36. data/examples/java/exampleArrayRead.bgv +0 -0
  37. data/examples/java/exampleArrayRead.cfg +2263 -0
  38. data/examples/java/exampleArrayWrite.bgv +0 -0
  39. data/examples/java/exampleArrayWrite.cfg +2315 -0
  40. data/examples/java/exampleCatch.bgv +0 -0
  41. data/examples/java/exampleCatch.cfg +4150 -0
  42. data/examples/java/exampleCompareOperator.bgv +0 -0
  43. data/examples/java/exampleCompareOperator.cfg +1109 -0
  44. data/examples/java/exampleDoubleSynchronized.bgv +0 -0
  45. data/examples/java/exampleDoubleSynchronized.cfg +26497 -0
  46. data/examples/java/exampleExactArith.bgv +0 -0
  47. data/examples/java/exampleExactArith.cfg +1888 -0
  48. data/examples/java/exampleFieldRead.bgv +0 -0
  49. data/examples/java/exampleFieldRead.cfg +1228 -0
  50. data/examples/java/exampleFieldWrite.bgv +0 -0
  51. data/examples/java/exampleFieldWrite.cfg +1102 -0
  52. data/examples/java/exampleFor.bgv +0 -0
  53. data/examples/java/exampleFor.cfg +3936 -0
  54. data/examples/java/exampleFullEscape.bgv +0 -0
  55. data/examples/java/exampleFullEscape.cfg +5893 -0
  56. data/examples/java/exampleIf.bgv +0 -0
  57. data/examples/java/exampleIf.cfg +2462 -0
  58. data/examples/java/exampleIfNeverTaken.bgv +0 -0
  59. data/examples/java/exampleIfNeverTaken.cfg +2476 -0
  60. data/examples/java/exampleInstanceOfManyImpls.bgv +0 -0
  61. data/examples/java/exampleInstanceOfManyImpls.cfg +6391 -0
  62. data/examples/java/exampleInstanceOfOneImpl.bgv +0 -0
  63. data/examples/java/exampleInstanceOfOneImpl.cfg +2604 -0
  64. data/examples/java/exampleIntSwitch.bgv +0 -0
  65. data/examples/java/exampleIntSwitch.cfg +3121 -0
  66. data/examples/java/exampleInterfaceCallManyImpls.bgv +0 -0
  67. data/examples/java/exampleInterfaceCallManyImpls.cfg +1358 -0
  68. data/examples/java/exampleInterfaceCallOneImpl.bgv +0 -0
  69. data/examples/java/exampleInterfaceCallOneImpl.cfg +3859 -0
  70. data/examples/java/exampleLocalInstanceOf.bgv +0 -0
  71. data/examples/java/exampleLocalInstanceOf.cfg +5276 -0
  72. data/examples/java/exampleLocalSynchronized.bgv +0 -0
  73. data/examples/java/exampleLocalSynchronized.cfg +1364 -0
  74. data/examples/java/exampleLocalVariables.bgv +0 -0
  75. data/examples/java/exampleLocalVariables.cfg +1195 -0
  76. data/examples/java/exampleLocalVariablesState.bgv +0 -0
  77. data/examples/java/exampleLocalVariablesState.cfg +1673 -0
  78. data/examples/java/exampleNestedWhile.bgv +0 -0
  79. data/examples/java/exampleNestedWhile.cfg +15499 -0
  80. data/examples/java/exampleNestedWhileBreak.bgv +0 -0
  81. data/examples/java/exampleNestedWhileBreak.cfg +11162 -0
  82. data/examples/java/exampleNoEscape.bgv +0 -0
  83. data/examples/java/exampleNoEscape.cfg +974 -0
  84. data/examples/java/exampleObjectAllocation.bgv +0 -0
  85. data/examples/java/exampleObjectAllocation.cfg +5287 -0
  86. data/examples/java/examplePartialEscape.bgv +0 -0
  87. data/examples/java/examplePartialEscape.cfg +7042 -0
  88. data/examples/java/examplePhi.bgv +0 -0
  89. data/examples/java/examplePhi.cfg +3227 -0
  90. data/examples/java/exampleReducible.bgv +0 -0
  91. data/examples/java/exampleReducible.cfg +5578 -0
  92. data/examples/java/exampleSimpleCall.bgv +0 -0
  93. data/examples/java/exampleSimpleCall.cfg +1435 -0
  94. data/examples/java/exampleStamp.bgv +0 -0
  95. data/examples/java/exampleStamp.cfg +913 -0
  96. data/examples/java/exampleStaticCall.bgv +0 -0
  97. data/examples/java/exampleStaticCall.cfg +1154 -0
  98. data/examples/java/exampleStringSwitch.bgv +0 -0
  99. data/examples/java/exampleStringSwitch.cfg +15377 -0
  100. data/examples/java/exampleSynchronized.bgv +0 -0
  101. data/examples/java/exampleSynchronized.cfg +26027 -0
  102. data/examples/java/exampleThrow.bgv +0 -0
  103. data/examples/java/exampleThrow.cfg +780 -0
  104. data/examples/java/exampleThrowCatch.bgv +0 -0
  105. data/examples/java/exampleThrowCatch.cfg +744 -0
  106. data/examples/java/exampleUnsafeRead.bgv +0 -0
  107. data/examples/java/exampleUnsafeRead.cfg +912 -0
  108. data/examples/java/exampleUnsafeWrite.bgv +0 -0
  109. data/examples/java/exampleUnsafeWrite.cfg +962 -0
  110. data/examples/java/exampleWhile.bgv +0 -0
  111. data/examples/java/exampleWhile.cfg +3936 -0
  112. data/examples/java/exampleWhileBreak.bgv +0 -0
  113. data/examples/java/exampleWhileBreak.cfg +5963 -0
  114. data/examples/matmult-java.bgv +0 -0
  115. data/examples/matmult-ruby.bgv +0 -0
  116. data/examples/matmult.rb +29 -0
  117. data/examples/overflow.bgv +0 -0
  118. data/examples/overflow.rb +13 -0
  119. data/lib/seafoam.rb +13 -0
  120. data/lib/seafoam/annotators.rb +54 -0
  121. data/lib/seafoam/annotators/fallback.rb +27 -0
  122. data/lib/seafoam/annotators/graal.rb +376 -0
  123. data/lib/seafoam/bgv/bgv_parser.rb +602 -0
  124. data/lib/seafoam/binary/binary_reader.rb +21 -0
  125. data/lib/seafoam/binary/io_binary_reader.rb +88 -0
  126. data/lib/seafoam/colors.rb +18 -0
  127. data/lib/seafoam/commands.rb +447 -0
  128. data/lib/seafoam/config.rb +34 -0
  129. data/lib/seafoam/graph.rb +91 -0
  130. data/lib/seafoam/graphviz_writer.rb +213 -0
  131. data/lib/seafoam/spotlight.rb +28 -0
  132. data/lib/seafoam/version.rb +5 -0
  133. data/seafoam.gemspec +20 -0
  134. data/spec/seafoam/annotators/fallback_spec.rb +69 -0
  135. data/spec/seafoam/annotators/graal_spec.rb +96 -0
  136. data/spec/seafoam/annotators_spec.rb +61 -0
  137. data/spec/seafoam/bgv/bgv_parser_spec.rb +144 -0
  138. data/spec/seafoam/bgv/fixtures/not.bgv +1 -0
  139. data/spec/seafoam/bgv/fixtures/unsupported.bgv +1 -0
  140. data/spec/seafoam/binary/io_binary_reader_spec.rb +176 -0
  141. data/spec/seafoam/command_spec.rb +252 -0
  142. data/spec/seafoam/graph_spec.rb +172 -0
  143. data/spec/seafoam/graphviz_writer_spec.rb +63 -0
  144. data/spec/seafoam/spec_helpers.rb +30 -0
  145. data/spec/seafoam/spotlight_spec.rb +38 -0
  146. data/tools/render-all +36 -0
  147. metadata +238 -0
@@ -0,0 +1,744 @@
1
+ begin_compilation
2
+ name " HotSpotCompilation-126[JavaExamples.exampleThrowCatch()]"
3
+ method "HotSpotCompilation-126[JavaExamples.exampleThrowCatch()]"
4
+ date 1583364091773
5
+ end_compilation
6
+ begin_cfg
7
+ name "Final HIR schedule"
8
+ begin_block
9
+ name "B0"
10
+ from_bci -1
11
+ to_bci -1
12
+ predecessors
13
+ successors
14
+ xhandlers
15
+ flags
16
+ probability 4607182418800017408
17
+ begin_IR
18
+ HIR
19
+ f <@#|@fixed with next>@ <|@
20
+ tid v0 <|@
21
+ d <@d|@=== Debug Properties ===
22
+ stamp: void
23
+ withSpeculationFence: false
24
+ === Inputs ===
25
+ stateAfter: -
26
+ === Succesors ===
27
+ next: v11
28
+ === Usages ===
29
+ === Predecessor ===
30
+ - >@ <|@
31
+ instruction <@StartNode|@org.graalvm.compiler.nodes.StartNode>@ stateAfter: - #next: v11 <|@ <|@
32
+ f <@*|@fixed>@ <|@
33
+ tid v11 <|@
34
+ d <@d|@=== Debug Properties ===
35
+ nodeSourcePosition: at JavaExamples.exampleThrowCatch(JavaExamples.java:289) [bci: 5]
36
+ stamp: void
37
+ === Inputs ===
38
+ result: -
39
+ memoryMap: -
40
+ === Succesors ===
41
+ === Usages ===
42
+ === Predecessor ===
43
+ v0 >@ <|@
44
+ instruction <@Return|@org.graalvm.compiler.nodes.ReturnNode>@ result: - memoryMap: - <|@ <|@
45
+ end_IR
46
+ end_block
47
+ end_cfg
48
+ begin_cfg
49
+ name "After LIRGeneration"
50
+ begin_block
51
+ name "B0"
52
+ from_bci -1
53
+ to_bci -1
54
+ predecessors
55
+ successors
56
+ xhandlers
57
+ flags
58
+ probability 4607182418800017408
59
+ begin_IR
60
+ LIR
61
+ nr -1 <|@ instruction [rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
62
+ nr -1 <|@ instruction v0|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
63
+ nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d45bc58 slotKind: QWORD <|@ <|@
64
+ nr -1 <|@ instruction RETURN (savedRbp: v0|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
65
+ end_IR
66
+ end_block
67
+ end_cfg
68
+ begin_bytecodes
69
+ 0: getstatic #57 // RUNTIME_EXCEPTION:java.lang.RuntimeException
70
+ 3: athrow
71
+ 4: astore_0
72
+ 5: return
73
+ <|@
74
+ end_bytecodes
75
+ begin_cfg
76
+ name "After LIR generation"
77
+ begin_block
78
+ name "B0"
79
+ from_bci -1
80
+ to_bci -1
81
+ predecessors
82
+ successors
83
+ xhandlers
84
+ flags
85
+ probability 4607182418800017408
86
+ begin_IR
87
+ HIR
88
+ f <@#|@fixed with next>@ <|@
89
+ tid v0 <|@
90
+ d <@d|@=== Debug Properties ===
91
+ stamp: void
92
+ withSpeculationFence: false
93
+ === Inputs ===
94
+ stateAfter: -
95
+ === Succesors ===
96
+ next: v11
97
+ === Usages ===
98
+ === Predecessor ===
99
+ - >@ <|@
100
+ instruction <@StartNode|@org.graalvm.compiler.nodes.StartNode>@ stateAfter: - #next: v11 <|@ <|@
101
+ f <@*|@fixed>@ <|@
102
+ tid v11 <|@
103
+ d <@d|@=== Debug Properties ===
104
+ nodeSourcePosition: at JavaExamples.exampleThrowCatch(JavaExamples.java:289) [bci: 5]
105
+ stamp: void
106
+ === Inputs ===
107
+ result: -
108
+ memoryMap: -
109
+ === Succesors ===
110
+ === Usages ===
111
+ === Predecessor ===
112
+ v0 >@ <|@
113
+ instruction <@Return|@org.graalvm.compiler.nodes.ReturnNode>@ result: - memoryMap: - <|@ <|@
114
+ end_IR
115
+ begin_IR
116
+ LIR
117
+ nr -1 <|@ instruction [rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
118
+ nr -1 <|@ instruction v0|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
119
+ nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d45bc58 slotKind: QWORD <|@ <|@
120
+ nr -1 <|@ instruction RETURN (savedRbp: v0|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
121
+ end_IR
122
+ end_block
123
+ end_cfg
124
+ begin_cfg
125
+ name "After ConstantLoadOptimization"
126
+ begin_block
127
+ name "B0"
128
+ from_bci -1
129
+ to_bci -1
130
+ predecessors
131
+ successors
132
+ xhandlers
133
+ flags
134
+ probability 4607182418800017408
135
+ begin_IR
136
+ LIR
137
+ nr -1 <|@ instruction [rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
138
+ nr -1 <|@ instruction v0|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
139
+ nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d45bc58 slotKind: QWORD <|@ <|@
140
+ nr -1 <|@ instruction RETURN (savedRbp: v0|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
141
+ end_IR
142
+ end_block
143
+ end_cfg
144
+ begin_bytecodes
145
+ 0: getstatic #57 // RUNTIME_EXCEPTION:java.lang.RuntimeException
146
+ 3: athrow
147
+ 4: astore_0
148
+ 5: return
149
+ <|@
150
+ end_bytecodes
151
+ begin_cfg
152
+ name "After SaveCalleeSaveRegisters"
153
+ begin_block
154
+ name "B0"
155
+ from_bci -1
156
+ to_bci -1
157
+ predecessors
158
+ successors
159
+ xhandlers
160
+ flags
161
+ probability 4607182418800017408
162
+ begin_IR
163
+ LIR
164
+ nr -1 <|@ instruction [rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
165
+ nr -1 <|@ instruction v0|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
166
+ nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d45bc58 slotKind: QWORD <|@ <|@
167
+ nr -1 <|@ instruction RETURN (savedRbp: v0|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
168
+ end_IR
169
+ end_block
170
+ end_cfg
171
+ begin_bytecodes
172
+ 0: getstatic #57 // RUNTIME_EXCEPTION:java.lang.RuntimeException
173
+ 3: athrow
174
+ 4: astore_0
175
+ 5: return
176
+ <|@
177
+ end_bytecodes
178
+ begin_cfg
179
+ name "After PreAllocationOptimizationStage"
180
+ begin_block
181
+ name "B0"
182
+ from_bci -1
183
+ to_bci -1
184
+ predecessors
185
+ successors
186
+ xhandlers
187
+ flags
188
+ probability 4607182418800017408
189
+ begin_IR
190
+ LIR
191
+ nr -1 <|@ instruction [rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
192
+ nr -1 <|@ instruction v0|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
193
+ nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d45bc58 slotKind: QWORD <|@ <|@
194
+ nr -1 <|@ instruction RETURN (savedRbp: v0|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
195
+ end_IR
196
+ end_block
197
+ end_cfg
198
+ begin_bytecodes
199
+ 0: getstatic #57 // RUNTIME_EXCEPTION:java.lang.RuntimeException
200
+ 3: athrow
201
+ 4: astore_0
202
+ 5: return
203
+ <|@
204
+ end_bytecodes
205
+ begin_cfg
206
+ name "After MarkBasePointers"
207
+ begin_block
208
+ name "B0"
209
+ from_bci -1
210
+ to_bci -1
211
+ predecessors
212
+ successors
213
+ xhandlers
214
+ flags
215
+ probability 4607182418800017408
216
+ begin_IR
217
+ LIR
218
+ nr -1 <|@ instruction [rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
219
+ nr -1 <|@ instruction v0|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
220
+ nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d45bc58 slotKind: QWORD <|@ <|@
221
+ nr -1 <|@ instruction RETURN (savedRbp: v0|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
222
+ end_IR
223
+ end_block
224
+ end_cfg
225
+ begin_bytecodes
226
+ 0: getstatic #57 // RUNTIME_EXCEPTION:java.lang.RuntimeException
227
+ 3: athrow
228
+ 4: astore_0
229
+ 5: return
230
+ <|@
231
+ end_bytecodes
232
+ begin_cfg
233
+ name "Before register allocation"
234
+ begin_block
235
+ name "B0"
236
+ from_bci -1
237
+ to_bci -1
238
+ predecessors
239
+ successors
240
+ xhandlers
241
+ flags
242
+ probability 4607182418800017408
243
+ begin_IR
244
+ LIR
245
+ nr 0 <|@ instruction [rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
246
+ nr 2 <|@ instruction v0|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
247
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d45bc58 slotKind: QWORD <|@ <|@
248
+ nr 6 <|@ instruction RETURN (savedRbp: v0|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
249
+ end_IR
250
+ end_block
251
+ end_cfg
252
+ begin_bytecodes
253
+ 0: getstatic #57 // RUNTIME_EXCEPTION:java.lang.RuntimeException
254
+ 3: athrow
255
+ 4: astore_0
256
+ 5: return
257
+ <|@
258
+ end_bytecodes
259
+ begin_cfg
260
+ name "After SSALinearScanLifetimeAnalysis"
261
+ begin_block
262
+ name "B0"
263
+ from_bci -1
264
+ to_bci -1
265
+ predecessors
266
+ successors
267
+ xhandlers
268
+ flags
269
+ probability 4607182418800017408
270
+ begin_IR
271
+ LIR
272
+ nr 0 <|@ instruction [rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
273
+ nr 2 <|@ instruction v0|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
274
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d45bc58 slotKind: QWORD <|@ <|@
275
+ nr 6 <|@ instruction RETURN (savedRbp: v0|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
276
+ end_IR
277
+ end_block
278
+ end_cfg
279
+ begin_bytecodes
280
+ 0: getstatic #57 // RUNTIME_EXCEPTION:java.lang.RuntimeException
281
+ 3: athrow
282
+ 4: astore_0
283
+ 5: return
284
+ <|@
285
+ end_bytecodes
286
+ begin_intervals
287
+ name "Before register allocation"
288
+ rbp|q fixed "[rbp|q]" rbp|q -1 [0, 2[ "NoSpillStore"
289
+ v0|q QWORD "[v0|q]" v0|q rbp|q [2, 6[2 MustHaveRegister 6 ShouldHaveRegister "NoSpillStore"
290
+ end_intervals
291
+ begin_intervals
292
+ name "After register allocation"
293
+ rbp|q fixed "[rbp|q]" rbp|q -1 [0, 2[ "NoSpillStore"
294
+ v0|q QWORD "[rbp|q]" v0|q rbp|q [2, 6[2 MustHaveRegister 6 ShouldHaveRegister "NoSpillStore"
295
+ end_intervals
296
+ begin_cfg
297
+ name "After LinearScanRegisterAllocation"
298
+ begin_block
299
+ name "B0"
300
+ from_bci -1
301
+ to_bci -1
302
+ predecessors
303
+ successors
304
+ xhandlers
305
+ flags
306
+ probability 4607182418800017408
307
+ begin_IR
308
+ LIR
309
+ nr 0 <|@ instruction [rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
310
+ nr 2 <|@ instruction v0|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
311
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d45bc58 slotKind: QWORD <|@ <|@
312
+ nr 6 <|@ instruction RETURN (savedRbp: v0|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
313
+ end_IR
314
+ end_block
315
+ end_cfg
316
+ begin_bytecodes
317
+ 0: getstatic #57 // RUNTIME_EXCEPTION:java.lang.RuntimeException
318
+ 3: athrow
319
+ 4: astore_0
320
+ 5: return
321
+ <|@
322
+ end_bytecodes
323
+ begin_intervals
324
+ name "After optimize spill position"
325
+ rbp|q fixed "[rbp|q]" rbp|q -1 [0, 2[ "NoSpillStore"
326
+ v0|q QWORD "[rbp|q]" v0|q rbp|q [2, 6[2 MustHaveRegister 6 ShouldHaveRegister "NoSpillStore"
327
+ end_intervals
328
+ begin_cfg
329
+ name "After LinearScanOptimizeSpillPosition"
330
+ begin_block
331
+ name "B0"
332
+ from_bci -1
333
+ to_bci -1
334
+ predecessors
335
+ successors
336
+ xhandlers
337
+ flags
338
+ probability 4607182418800017408
339
+ begin_IR
340
+ LIR
341
+ nr 0 <|@ instruction [rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
342
+ nr 2 <|@ instruction v0|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
343
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d45bc58 slotKind: QWORD <|@ <|@
344
+ nr 6 <|@ instruction RETURN (savedRbp: v0|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
345
+ end_IR
346
+ end_block
347
+ end_cfg
348
+ begin_bytecodes
349
+ 0: getstatic #57 // RUNTIME_EXCEPTION:java.lang.RuntimeException
350
+ 3: athrow
351
+ 4: astore_0
352
+ 5: return
353
+ <|@
354
+ end_bytecodes
355
+ begin_intervals
356
+ name "After resolve data flow"
357
+ rbp|q fixed "[rbp|q]" rbp|q -1 [0, 2[ "NoSpillStore"
358
+ v0|q QWORD "[rbp|q]" v0|q rbp|q [2, 6[2 MustHaveRegister 6 ShouldHaveRegister "NoSpillStore"
359
+ end_intervals
360
+ begin_cfg
361
+ name "After SSALinearScanResolveDataFlow"
362
+ begin_block
363
+ name "B0"
364
+ from_bci -1
365
+ to_bci -1
366
+ predecessors
367
+ successors
368
+ xhandlers
369
+ flags
370
+ probability 4607182418800017408
371
+ begin_IR
372
+ LIR
373
+ nr 0 <|@ instruction [rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
374
+ nr 2 <|@ instruction v0|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
375
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d45bc58 slotKind: QWORD <|@ <|@
376
+ nr 6 <|@ instruction RETURN (savedRbp: v0|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
377
+ end_IR
378
+ end_block
379
+ end_cfg
380
+ begin_bytecodes
381
+ 0: getstatic #57 // RUNTIME_EXCEPTION:java.lang.RuntimeException
382
+ 3: athrow
383
+ 4: astore_0
384
+ 5: return
385
+ <|@
386
+ end_bytecodes
387
+ begin_cfg
388
+ name "After SSALinearScanEliminateSpillMove"
389
+ begin_block
390
+ name "B0"
391
+ from_bci -1
392
+ to_bci -1
393
+ predecessors
394
+ successors
395
+ xhandlers
396
+ flags
397
+ probability 4607182418800017408
398
+ begin_IR
399
+ LIR
400
+ nr 0 <|@ instruction [rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
401
+ nr 2 <|@ instruction v0|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
402
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d45bc58 slotKind: QWORD <|@ <|@
403
+ nr 6 <|@ instruction RETURN (savedRbp: v0|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
404
+ end_IR
405
+ end_block
406
+ end_cfg
407
+ begin_bytecodes
408
+ 0: getstatic #57 // RUNTIME_EXCEPTION:java.lang.RuntimeException
409
+ 3: athrow
410
+ 4: astore_0
411
+ 5: return
412
+ <|@
413
+ end_bytecodes
414
+ begin_cfg
415
+ name "After LinearScanAssignLocations"
416
+ begin_block
417
+ name "B0"
418
+ from_bci -1
419
+ to_bci -1
420
+ predecessors
421
+ successors
422
+ xhandlers
423
+ flags
424
+ probability 4607182418800017408
425
+ begin_IR
426
+ LIR
427
+ nr 0 <|@ instruction [rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
428
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d45bc58 slotKind: QWORD <|@ <|@
429
+ nr 6 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
430
+ end_IR
431
+ end_block
432
+ end_cfg
433
+ begin_bytecodes
434
+ 0: getstatic #57 // RUNTIME_EXCEPTION:java.lang.RuntimeException
435
+ 3: athrow
436
+ 4: astore_0
437
+ 5: return
438
+ <|@
439
+ end_bytecodes
440
+ begin_cfg
441
+ name "After LinearScan"
442
+ begin_block
443
+ name "B0"
444
+ from_bci -1
445
+ to_bci -1
446
+ predecessors
447
+ successors
448
+ xhandlers
449
+ flags
450
+ probability 4607182418800017408
451
+ begin_IR
452
+ LIR
453
+ nr 0 <|@ instruction [rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
454
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d45bc58 slotKind: QWORD <|@ <|@
455
+ nr 6 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
456
+ end_IR
457
+ end_block
458
+ end_cfg
459
+ begin_bytecodes
460
+ 0: getstatic #57 // RUNTIME_EXCEPTION:java.lang.RuntimeException
461
+ 3: athrow
462
+ 4: astore_0
463
+ 5: return
464
+ <|@
465
+ end_bytecodes
466
+ begin_cfg
467
+ name "After LSStackSlotAllocator"
468
+ begin_block
469
+ name "B0"
470
+ from_bci -1
471
+ to_bci -1
472
+ predecessors
473
+ successors
474
+ xhandlers
475
+ flags
476
+ probability 4607182418800017408
477
+ begin_IR
478
+ LIR
479
+ nr 0 <|@ instruction [rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
480
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d45bc58 slotKind: QWORD <|@ <|@
481
+ nr 6 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
482
+ end_IR
483
+ end_block
484
+ end_cfg
485
+ begin_bytecodes
486
+ 0: getstatic #57 // RUNTIME_EXCEPTION:java.lang.RuntimeException
487
+ 3: athrow
488
+ 4: astore_0
489
+ 5: return
490
+ <|@
491
+ end_bytecodes
492
+ begin_cfg
493
+ name "After LocationMarker"
494
+ begin_block
495
+ name "B0"
496
+ from_bci -1
497
+ to_bci -1
498
+ predecessors
499
+ successors
500
+ xhandlers
501
+ flags
502
+ probability 4607182418800017408
503
+ begin_IR
504
+ LIR
505
+ nr 0 <|@ instruction [rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
506
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d45bc58 slotKind: QWORD <|@ <|@
507
+ nr 6 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
508
+ end_IR
509
+ end_block
510
+ end_cfg
511
+ begin_bytecodes
512
+ 0: getstatic #57 // RUNTIME_EXCEPTION:java.lang.RuntimeException
513
+ 3: athrow
514
+ 4: astore_0
515
+ 5: return
516
+ <|@
517
+ end_bytecodes
518
+ begin_cfg
519
+ name "After AllocationStage"
520
+ begin_block
521
+ name "B0"
522
+ from_bci -1
523
+ to_bci -1
524
+ predecessors
525
+ successors
526
+ xhandlers
527
+ flags
528
+ probability 4607182418800017408
529
+ begin_IR
530
+ LIR
531
+ nr 0 <|@ instruction [rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
532
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d45bc58 slotKind: QWORD <|@ <|@
533
+ nr 6 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
534
+ end_IR
535
+ end_block
536
+ end_cfg
537
+ begin_bytecodes
538
+ 0: getstatic #57 // RUNTIME_EXCEPTION:java.lang.RuntimeException
539
+ 3: athrow
540
+ 4: astore_0
541
+ 5: return
542
+ <|@
543
+ end_bytecodes
544
+ begin_cfg
545
+ name "After EdgeMoveOptimizer"
546
+ begin_block
547
+ name "B0"
548
+ from_bci -1
549
+ to_bci -1
550
+ predecessors
551
+ successors
552
+ xhandlers
553
+ flags
554
+ probability 4607182418800017408
555
+ begin_IR
556
+ LIR
557
+ nr 0 <|@ instruction [rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
558
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d45bc58 slotKind: QWORD <|@ <|@
559
+ nr 6 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
560
+ end_IR
561
+ end_block
562
+ end_cfg
563
+ begin_bytecodes
564
+ 0: getstatic #57 // RUNTIME_EXCEPTION:java.lang.RuntimeException
565
+ 3: athrow
566
+ 4: astore_0
567
+ 5: return
568
+ <|@
569
+ end_bytecodes
570
+ begin_cfg
571
+ name "After ControlFlowOptimizer"
572
+ begin_block
573
+ name "B0"
574
+ from_bci -1
575
+ to_bci -1
576
+ predecessors
577
+ successors
578
+ xhandlers
579
+ flags
580
+ probability 4607182418800017408
581
+ begin_IR
582
+ LIR
583
+ nr 0 <|@ instruction [rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
584
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d45bc58 slotKind: QWORD <|@ <|@
585
+ nr 6 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
586
+ end_IR
587
+ end_block
588
+ end_cfg
589
+ begin_bytecodes
590
+ 0: getstatic #57 // RUNTIME_EXCEPTION:java.lang.RuntimeException
591
+ 3: athrow
592
+ 4: astore_0
593
+ 5: return
594
+ <|@
595
+ end_bytecodes
596
+ begin_cfg
597
+ name "After RedundantMoveElimination"
598
+ begin_block
599
+ name "B0"
600
+ from_bci -1
601
+ to_bci -1
602
+ predecessors
603
+ successors
604
+ xhandlers
605
+ flags
606
+ probability 4607182418800017408
607
+ begin_IR
608
+ LIR
609
+ nr 0 <|@ instruction [rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
610
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d45bc58 slotKind: QWORD <|@ <|@
611
+ nr 6 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
612
+ end_IR
613
+ end_block
614
+ end_cfg
615
+ begin_bytecodes
616
+ 0: getstatic #57 // RUNTIME_EXCEPTION:java.lang.RuntimeException
617
+ 3: athrow
618
+ 4: astore_0
619
+ 5: return
620
+ <|@
621
+ end_bytecodes
622
+ begin_cfg
623
+ name "After NullCheckOptimizer"
624
+ begin_block
625
+ name "B0"
626
+ from_bci -1
627
+ to_bci -1
628
+ predecessors
629
+ successors
630
+ xhandlers
631
+ flags
632
+ probability 4607182418800017408
633
+ begin_IR
634
+ LIR
635
+ nr 0 <|@ instruction [rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
636
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d45bc58 slotKind: QWORD <|@ <|@
637
+ nr 6 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
638
+ end_IR
639
+ end_block
640
+ end_cfg
641
+ begin_bytecodes
642
+ 0: getstatic #57 // RUNTIME_EXCEPTION:java.lang.RuntimeException
643
+ 3: athrow
644
+ 4: astore_0
645
+ 5: return
646
+ <|@
647
+ end_bytecodes
648
+ begin_cfg
649
+ name "After StackMoveOptimization"
650
+ begin_block
651
+ name "B0"
652
+ from_bci -1
653
+ to_bci -1
654
+ predecessors
655
+ successors
656
+ xhandlers
657
+ flags
658
+ probability 4607182418800017408
659
+ begin_IR
660
+ LIR
661
+ nr 0 <|@ instruction [rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
662
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d45bc58 slotKind: QWORD <|@ <|@
663
+ nr 6 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
664
+ end_IR
665
+ end_block
666
+ end_cfg
667
+ begin_bytecodes
668
+ 0: getstatic #57 // RUNTIME_EXCEPTION:java.lang.RuntimeException
669
+ 3: athrow
670
+ 4: astore_0
671
+ 5: return
672
+ <|@
673
+ end_bytecodes
674
+ begin_cfg
675
+ name "After PostAllocationOptimizationStage"
676
+ begin_block
677
+ name "B0"
678
+ from_bci -1
679
+ to_bci -1
680
+ predecessors
681
+ successors
682
+ xhandlers
683
+ flags
684
+ probability 4607182418800017408
685
+ begin_IR
686
+ LIR
687
+ nr 0 <|@ instruction [rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
688
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d45bc58 slotKind: QWORD <|@ <|@
689
+ nr 6 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
690
+ end_IR
691
+ end_block
692
+ end_cfg
693
+ begin_bytecodes
694
+ 0: getstatic #57 // RUNTIME_EXCEPTION:java.lang.RuntimeException
695
+ 3: athrow
696
+ 4: astore_0
697
+ 5: return
698
+ <|@
699
+ end_bytecodes
700
+ begin_cfg
701
+ name "After code generation"
702
+ end_cfg
703
+ begin_nmethod
704
+ <<<HexCodeFile
705
+ Platform AMD64 64 <||@
706
+ HexCode 0 0f1f440000850500000000c5f877c3e80000000090e80000000090 <||@
707
+ Comment 0 3 <||@
708
+ Comment 0 1 <||@
709
+ Comment 5 block B0 null <||@
710
+ Comment 5 0 [rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <||@
711
+ Comment 5 4 [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d45bc58 slotKind: QWORD <||@
712
+ Comment 5 6 RETURN (savedRbp: rbp|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <||@
713
+ Comment 5 12 <||@
714
+ Comment 15 {Stub<ExceptionHandlerStub.exceptionHandler>@0x112e24320:CallingConvention[rax|QWORD[.], rdx|QWORD]:CallingConvention[rax|QWORD[.], rdx|QWORD]; temps=rdi|ILLEGAL,xmm14|ILLEGAL,xmm15|ILLEGAL,xmm12|ILLEGAL,xmm13|ILLEGAL,xmm10|ILLEGAL,xmm11|ILLEGAL,xmm7|ILLEGAL,xmm8|ILLEGAL,xmm9|ILLEGAL,xmm0|ILLEGAL,xmm1|ILLEGAL,xmm2|ILLEGAL,xmm3|ILLEGAL,xmm4|ILLEGAL,xmm5|ILLEGAL,xmm6|ILLEGAL,rax|ILLEGAL,rcx|ILLEGAL,rdx|ILLEGAL,rsi|ILLEGAL,r8|ILLEGAL,r9|ILLEGAL,r10|ILLEGAL,r11|ILLEGAL} <||@
715
+ Comment 15 4 <||@
716
+ Comment 21 {Field[name=CompilerToVM::Data::SharedRuntime_deopt_blob_unpack, type=address, offset=0, address=0x1108bc128, value=4610474560]:0x112ce4240} <||@
717
+ Comment 21 5 <||@
718
+ HexCodeFile>>> <|@
719
+ end_nmethod
720
+ begin_compilation
721
+ name " HotSpotCompilation-126[JavaExamples.exampleThrowCatch()]"
722
+ method "HotSpotCompilation-126[JavaExamples.exampleThrowCatch()]"
723
+ date 1583364091780
724
+ end_compilation
725
+ begin_cfg
726
+ name "After code installation"
727
+ end_cfg
728
+ begin_nmethod
729
+ <<<HexCodeFile
730
+ Platform AMD64 64 <||@
731
+ HexCode 112e33ba0 0f1f44000085055b7493fbc5f877c3e86c07ffff90e88606ebff90f4f4f4f4f4 <||@
732
+ Comment 0 3 <||@
733
+ Comment 0 1 <||@
734
+ Comment 5 block B0 null <||@
735
+ Comment 5 0 [rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <||@
736
+ Comment 5 4 [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d45bc58 slotKind: QWORD <||@
737
+ Comment 5 6 RETURN (savedRbp: rbp|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <||@
738
+ Comment 5 12 <||@
739
+ Comment 15 {Stub<ExceptionHandlerStub.exceptionHandler>@0x112e24320:CallingConvention[rax|QWORD[.], rdx|QWORD]:CallingConvention[rax|QWORD[.], rdx|QWORD]; temps=rdi|ILLEGAL,xmm14|ILLEGAL,xmm15|ILLEGAL,xmm12|ILLEGAL,xmm13|ILLEGAL,xmm10|ILLEGAL,xmm11|ILLEGAL,xmm7|ILLEGAL,xmm8|ILLEGAL,xmm9|ILLEGAL,xmm0|ILLEGAL,xmm1|ILLEGAL,xmm2|ILLEGAL,xmm3|ILLEGAL,xmm4|ILLEGAL,xmm5|ILLEGAL,xmm6|ILLEGAL,rax|ILLEGAL,rcx|ILLEGAL,rdx|ILLEGAL,rsi|ILLEGAL,r8|ILLEGAL,r9|ILLEGAL,r10|ILLEGAL,r11|ILLEGAL} <||@
740
+ Comment 15 4 <||@
741
+ Comment 21 {Field[name=CompilerToVM::Data::SharedRuntime_deopt_blob_unpack, type=address, offset=0, address=0x1108bc128, value=4610474560]:0x112ce4240} <||@
742
+ Comment 21 5 <||@
743
+ HexCodeFile>>> <|@
744
+ end_nmethod