seafoam 0.2

Sign up to get free protection for your applications and to get access to all the features.
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,1109 @@
1
+ begin_compilation
2
+ name " HotSpotCompilation-345[JavaExamples.exampleCompareOperator(int, int)]"
3
+ method "HotSpotCompilation-345[JavaExamples.exampleCompareOperator(int, int)]"
4
+ date 1583364091398
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: v8
28
+ === Usages ===
29
+ === Predecessor ===
30
+ - >@ <|@
31
+ instruction <@StartNode|@org.graalvm.compiler.nodes.StartNode>@ stateAfter: - #next: v8 <|@ <|@
32
+ f <@~|@floating>@ <|@
33
+ tid i2 <|@
34
+ d <@d|@=== Debug Properties ===
35
+ index: 1
36
+ stamp: i32
37
+ uncheckedStamp: [null]
38
+ === Inputs ===
39
+ === Succesors ===
40
+ === Usages ===
41
+ v4
42
+ === Predecessor ===
43
+ - >@ <|@
44
+ instruction <@Parameter|@org.graalvm.compiler.nodes.ParameterNode>@ <|@ <|@
45
+ f <@~|@floating>@ <|@
46
+ tid i1 <|@
47
+ d <@d|@=== Debug Properties ===
48
+ index: 0
49
+ stamp: i32
50
+ uncheckedStamp: [null]
51
+ === Inputs ===
52
+ === Succesors ===
53
+ === Usages ===
54
+ v4
55
+ === Predecessor ===
56
+ - >@ <|@
57
+ instruction <@Parameter|@org.graalvm.compiler.nodes.ParameterNode>@ <|@ <|@
58
+ f <@~|@floating>@ <|@
59
+ tid v4 <|@
60
+ d <@d|@=== Debug Properties ===
61
+ condition: LT
62
+ nodeSourcePosition: at JavaExamples.exampleCompareOperator(JavaExamples.java:86) [bci: 2]
63
+ op: org.graalvm.compiler.nodes.calc.IntegerLessThanNode$LessThanOp@136e38370
64
+ stamp: void
65
+ unorderedIsTrue: false
66
+ === Inputs ===
67
+ x: i2
68
+ y: i1
69
+ === Succesors ===
70
+ === Usages ===
71
+ i7
72
+ === Predecessor ===
73
+ - >@ <|@
74
+ instruction <@<|@org.graalvm.compiler.nodes.calc.IntegerLessThanNode>@ x: i2 y: i1 <|@ <|@
75
+ f <@~|@floating>@ <|@
76
+ tid i5 <|@
77
+ d <@d|@=== Debug Properties ===
78
+ isDefaultStable: false
79
+ nodeSourcePosition: at JavaExamples.exampleCompareOperator(JavaExamples.java:86) [bci: 2]
80
+ rawvalue: 0
81
+ stableDimension: 0
82
+ stamp: i32 [0] ⇈0000000000000000
83
+ stampKind: i32
84
+ value: int[0|0x0]
85
+ === Inputs ===
86
+ === Succesors ===
87
+ === Usages ===
88
+ i7
89
+ === Predecessor ===
90
+ - >@ <|@
91
+ instruction <@Constant|@org.graalvm.compiler.nodes.ConstantNode>@ <|@ <|@
92
+ f <@~|@floating>@ <|@
93
+ tid i6 <|@
94
+ d <@d|@=== Debug Properties ===
95
+ isDefaultStable: false
96
+ nodeSourcePosition: at JavaExamples.exampleCompareOperator(JavaExamples.java:86) [bci: 2]
97
+ rawvalue: 1
98
+ stableDimension: 0
99
+ stamp: i32 [1] ⇊0000000000000001 ⇈0000000000000001
100
+ stampKind: i32
101
+ value: int[1|0x1]
102
+ === Inputs ===
103
+ === Succesors ===
104
+ === Usages ===
105
+ i7
106
+ === Predecessor ===
107
+ - >@ <|@
108
+ instruction <@Constant|@org.graalvm.compiler.nodes.ConstantNode>@ <|@ <|@
109
+ f <@~|@floating>@ <|@
110
+ tid i7 <|@
111
+ d <@d|@=== Debug Properties ===
112
+ nodeSourcePosition: at JavaExamples.exampleCompareOperator(JavaExamples.java:86) [bci: 2]
113
+ stamp: i32 [0 - 1] ⇈0000000000000001
114
+ === Inputs ===
115
+ condition: v4
116
+ trueValue: i5
117
+ falseValue: i6
118
+ === Succesors ===
119
+ === Usages ===
120
+ v8
121
+ === Predecessor ===
122
+ - >@ <|@
123
+ instruction <@Conditional|@org.graalvm.compiler.nodes.calc.ConditionalNode>@ condition: v4 trueValue: i5 falseValue: i6 <|@ <|@
124
+ f <@*|@fixed>@ <|@
125
+ tid v8 <|@
126
+ d <@d|@=== Debug Properties ===
127
+ nodeSourcePosition: at JavaExamples.exampleCompareOperator(JavaExamples.java:86) [bci: 10]
128
+ stamp: void
129
+ === Inputs ===
130
+ result: i7
131
+ memoryMap: -
132
+ === Succesors ===
133
+ === Usages ===
134
+ === Predecessor ===
135
+ v0 >@ <|@
136
+ instruction <@Return|@org.graalvm.compiler.nodes.ReturnNode>@ result: i7 memoryMap: - <|@ <|@
137
+ end_IR
138
+ end_block
139
+ end_cfg
140
+ begin_cfg
141
+ name "After LIRGeneration"
142
+ begin_block
143
+ name "B0"
144
+ from_bci -1
145
+ to_bci -1
146
+ predecessors
147
+ successors
148
+ xhandlers
149
+ flags
150
+ probability 4607182418800017408
151
+ begin_IR
152
+ LIR
153
+ nr -1 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
154
+ nr -1 <|@ instruction v3|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
155
+ nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@1442d4da8 slotKind: QWORD <|@ <|@
156
+ nr -1 <|@ instruction v0|DWORD = MOVE rsi|DWORD moveKind: DWORD <|@ <|@
157
+ nr -1 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
158
+ nr -1 <|@ instruction CMP (x: v0|DWORD, y: v1|DWORD) size: DWORD <|@ <|@
159
+ nr -1 <|@ instruction v2|DWORD = SETCC condition: <= <|@ <|@
160
+ nr -1 <|@ instruction rax|DWORD = MOVE v2|DWORD moveKind: DWORD <|@ <|@
161
+ nr -1 <|@ instruction RETURN (savedRbp: v3|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@137f187d8 <|@ <|@
162
+ end_IR
163
+ end_block
164
+ end_cfg
165
+ begin_bytecodes
166
+ 0: iload_0
167
+ 1: iload_1
168
+ 2: if_icmpgt 9
169
+ 5: iconst_1
170
+ 6: goto 10
171
+ 9: iconst_0
172
+ 10: ireturn
173
+ <|@
174
+ end_bytecodes
175
+ begin_cfg
176
+ name "After LIR generation"
177
+ begin_block
178
+ name "B0"
179
+ from_bci -1
180
+ to_bci -1
181
+ predecessors
182
+ successors
183
+ xhandlers
184
+ flags
185
+ probability 4607182418800017408
186
+ begin_IR
187
+ HIR
188
+ f <@#|@fixed with next>@ <|@
189
+ tid v0 <|@
190
+ d <@d|@=== Debug Properties ===
191
+ stamp: void
192
+ withSpeculationFence: false
193
+ === Inputs ===
194
+ stateAfter: -
195
+ === Succesors ===
196
+ next: v8
197
+ === Usages ===
198
+ === Predecessor ===
199
+ - >@ <|@
200
+ instruction <@StartNode|@org.graalvm.compiler.nodes.StartNode>@ stateAfter: - #next: v8 <|@ <|@
201
+ f <@~|@floating>@ <|@
202
+ tid i2 <|@
203
+ result v1|DWORD <|@
204
+ d <@d|@=== Debug Properties ===
205
+ index: 1
206
+ stamp: i32
207
+ uncheckedStamp: [null]
208
+ === Inputs ===
209
+ === Succesors ===
210
+ === Usages ===
211
+ v4
212
+ === Predecessor ===
213
+ - >@ <|@
214
+ instruction <@Parameter|@org.graalvm.compiler.nodes.ParameterNode>@ <|@ <|@
215
+ f <@~|@floating>@ <|@
216
+ tid i1 <|@
217
+ result v0|DWORD <|@
218
+ d <@d|@=== Debug Properties ===
219
+ index: 0
220
+ stamp: i32
221
+ uncheckedStamp: [null]
222
+ === Inputs ===
223
+ === Succesors ===
224
+ === Usages ===
225
+ v4
226
+ === Predecessor ===
227
+ - >@ <|@
228
+ instruction <@Parameter|@org.graalvm.compiler.nodes.ParameterNode>@ <|@ <|@
229
+ f <@~|@floating>@ <|@
230
+ tid v4 <|@
231
+ d <@d|@=== Debug Properties ===
232
+ condition: LT
233
+ nodeSourcePosition: at JavaExamples.exampleCompareOperator(JavaExamples.java:86) [bci: 2]
234
+ op: org.graalvm.compiler.nodes.calc.IntegerLessThanNode$LessThanOp@136e38370
235
+ stamp: void
236
+ unorderedIsTrue: false
237
+ === Inputs ===
238
+ x: i2
239
+ y: i1
240
+ === Succesors ===
241
+ === Usages ===
242
+ i7
243
+ === Predecessor ===
244
+ - >@ <|@
245
+ instruction <@<|@org.graalvm.compiler.nodes.calc.IntegerLessThanNode>@ x: i2 y: i1 <|@ <|@
246
+ f <@~|@floating>@ <|@
247
+ tid i5 <|@
248
+ result int[0|0x0] <|@
249
+ d <@d|@=== Debug Properties ===
250
+ isDefaultStable: false
251
+ nodeSourcePosition: at JavaExamples.exampleCompareOperator(JavaExamples.java:86) [bci: 2]
252
+ rawvalue: 0
253
+ stableDimension: 0
254
+ stamp: i32 [0] ⇈0000000000000000
255
+ stampKind: i32
256
+ value: int[0|0x0]
257
+ === Inputs ===
258
+ === Succesors ===
259
+ === Usages ===
260
+ i7
261
+ === Predecessor ===
262
+ - >@ <|@
263
+ instruction <@Constant|@org.graalvm.compiler.nodes.ConstantNode>@ <|@ <|@
264
+ f <@~|@floating>@ <|@
265
+ tid i6 <|@
266
+ result int[1|0x1] <|@
267
+ d <@d|@=== Debug Properties ===
268
+ isDefaultStable: false
269
+ nodeSourcePosition: at JavaExamples.exampleCompareOperator(JavaExamples.java:86) [bci: 2]
270
+ rawvalue: 1
271
+ stableDimension: 0
272
+ stamp: i32 [1] ⇊0000000000000001 ⇈0000000000000001
273
+ stampKind: i32
274
+ value: int[1|0x1]
275
+ === Inputs ===
276
+ === Succesors ===
277
+ === Usages ===
278
+ i7
279
+ === Predecessor ===
280
+ - >@ <|@
281
+ instruction <@Constant|@org.graalvm.compiler.nodes.ConstantNode>@ <|@ <|@
282
+ f <@~|@floating>@ <|@
283
+ tid i7 <|@
284
+ result v2|DWORD <|@
285
+ d <@d|@=== Debug Properties ===
286
+ nodeSourcePosition: at JavaExamples.exampleCompareOperator(JavaExamples.java:86) [bci: 2]
287
+ stamp: i32 [0 - 1] ⇈0000000000000001
288
+ === Inputs ===
289
+ condition: v4
290
+ trueValue: i5
291
+ falseValue: i6
292
+ === Succesors ===
293
+ === Usages ===
294
+ v8
295
+ === Predecessor ===
296
+ - >@ <|@
297
+ instruction <@Conditional|@org.graalvm.compiler.nodes.calc.ConditionalNode>@ condition: v4 trueValue: i5 falseValue: i6 <|@ <|@
298
+ f <@*|@fixed>@ <|@
299
+ tid v8 <|@
300
+ d <@d|@=== Debug Properties ===
301
+ nodeSourcePosition: at JavaExamples.exampleCompareOperator(JavaExamples.java:86) [bci: 10]
302
+ stamp: void
303
+ === Inputs ===
304
+ result: i7
305
+ memoryMap: -
306
+ === Succesors ===
307
+ === Usages ===
308
+ === Predecessor ===
309
+ v0 >@ <|@
310
+ instruction <@Return|@org.graalvm.compiler.nodes.ReturnNode>@ result: i7 memoryMap: - <|@ <|@
311
+ end_IR
312
+ begin_IR
313
+ LIR
314
+ nr -1 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
315
+ nr -1 <|@ instruction v3|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
316
+ nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@1442d4da8 slotKind: QWORD <|@ <|@
317
+ nr -1 <|@ instruction v0|DWORD = MOVE rsi|DWORD moveKind: DWORD <|@ <|@
318
+ nr -1 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
319
+ nr -1 <|@ instruction CMP (x: v0|DWORD, y: v1|DWORD) size: DWORD <|@ <|@
320
+ nr -1 <|@ instruction v2|DWORD = SETCC condition: <= <|@ <|@
321
+ nr -1 <|@ instruction rax|DWORD = MOVE v2|DWORD moveKind: DWORD <|@ <|@
322
+ nr -1 <|@ instruction RETURN (savedRbp: v3|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@137f187d8 <|@ <|@
323
+ end_IR
324
+ end_block
325
+ end_cfg
326
+ begin_cfg
327
+ name "After ConstantLoadOptimization"
328
+ begin_block
329
+ name "B0"
330
+ from_bci -1
331
+ to_bci -1
332
+ predecessors
333
+ successors
334
+ xhandlers
335
+ flags
336
+ probability 4607182418800017408
337
+ begin_IR
338
+ LIR
339
+ nr -1 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
340
+ nr -1 <|@ instruction v3|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
341
+ nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@1442d4da8 slotKind: QWORD <|@ <|@
342
+ nr -1 <|@ instruction v0|DWORD = MOVE rsi|DWORD moveKind: DWORD <|@ <|@
343
+ nr -1 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
344
+ nr -1 <|@ instruction CMP (x: v0|DWORD, y: v1|DWORD) size: DWORD <|@ <|@
345
+ nr -1 <|@ instruction v2|DWORD = SETCC condition: <= <|@ <|@
346
+ nr -1 <|@ instruction rax|DWORD = MOVE v2|DWORD moveKind: DWORD <|@ <|@
347
+ nr -1 <|@ instruction RETURN (savedRbp: v3|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@137f187d8 <|@ <|@
348
+ end_IR
349
+ end_block
350
+ end_cfg
351
+ begin_bytecodes
352
+ 0: iload_0
353
+ 1: iload_1
354
+ 2: if_icmpgt 9
355
+ 5: iconst_1
356
+ 6: goto 10
357
+ 9: iconst_0
358
+ 10: ireturn
359
+ <|@
360
+ end_bytecodes
361
+ begin_cfg
362
+ name "After SaveCalleeSaveRegisters"
363
+ begin_block
364
+ name "B0"
365
+ from_bci -1
366
+ to_bci -1
367
+ predecessors
368
+ successors
369
+ xhandlers
370
+ flags
371
+ probability 4607182418800017408
372
+ begin_IR
373
+ LIR
374
+ nr -1 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
375
+ nr -1 <|@ instruction v3|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
376
+ nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@1442d4da8 slotKind: QWORD <|@ <|@
377
+ nr -1 <|@ instruction v0|DWORD = MOVE rsi|DWORD moveKind: DWORD <|@ <|@
378
+ nr -1 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
379
+ nr -1 <|@ instruction CMP (x: v0|DWORD, y: v1|DWORD) size: DWORD <|@ <|@
380
+ nr -1 <|@ instruction v2|DWORD = SETCC condition: <= <|@ <|@
381
+ nr -1 <|@ instruction rax|DWORD = MOVE v2|DWORD moveKind: DWORD <|@ <|@
382
+ nr -1 <|@ instruction RETURN (savedRbp: v3|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@137f187d8 <|@ <|@
383
+ end_IR
384
+ end_block
385
+ end_cfg
386
+ begin_bytecodes
387
+ 0: iload_0
388
+ 1: iload_1
389
+ 2: if_icmpgt 9
390
+ 5: iconst_1
391
+ 6: goto 10
392
+ 9: iconst_0
393
+ 10: ireturn
394
+ <|@
395
+ end_bytecodes
396
+ begin_cfg
397
+ name "After PreAllocationOptimizationStage"
398
+ begin_block
399
+ name "B0"
400
+ from_bci -1
401
+ to_bci -1
402
+ predecessors
403
+ successors
404
+ xhandlers
405
+ flags
406
+ probability 4607182418800017408
407
+ begin_IR
408
+ LIR
409
+ nr -1 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
410
+ nr -1 <|@ instruction v3|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
411
+ nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@1442d4da8 slotKind: QWORD <|@ <|@
412
+ nr -1 <|@ instruction v0|DWORD = MOVE rsi|DWORD moveKind: DWORD <|@ <|@
413
+ nr -1 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
414
+ nr -1 <|@ instruction CMP (x: v0|DWORD, y: v1|DWORD) size: DWORD <|@ <|@
415
+ nr -1 <|@ instruction v2|DWORD = SETCC condition: <= <|@ <|@
416
+ nr -1 <|@ instruction rax|DWORD = MOVE v2|DWORD moveKind: DWORD <|@ <|@
417
+ nr -1 <|@ instruction RETURN (savedRbp: v3|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@137f187d8 <|@ <|@
418
+ end_IR
419
+ end_block
420
+ end_cfg
421
+ begin_bytecodes
422
+ 0: iload_0
423
+ 1: iload_1
424
+ 2: if_icmpgt 9
425
+ 5: iconst_1
426
+ 6: goto 10
427
+ 9: iconst_0
428
+ 10: ireturn
429
+ <|@
430
+ end_bytecodes
431
+ begin_cfg
432
+ name "After MarkBasePointers"
433
+ begin_block
434
+ name "B0"
435
+ from_bci -1
436
+ to_bci -1
437
+ predecessors
438
+ successors
439
+ xhandlers
440
+ flags
441
+ probability 4607182418800017408
442
+ begin_IR
443
+ LIR
444
+ nr -1 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
445
+ nr -1 <|@ instruction v3|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
446
+ nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@1442d4da8 slotKind: QWORD <|@ <|@
447
+ nr -1 <|@ instruction v0|DWORD = MOVE rsi|DWORD moveKind: DWORD <|@ <|@
448
+ nr -1 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
449
+ nr -1 <|@ instruction CMP (x: v0|DWORD, y: v1|DWORD) size: DWORD <|@ <|@
450
+ nr -1 <|@ instruction v2|DWORD = SETCC condition: <= <|@ <|@
451
+ nr -1 <|@ instruction rax|DWORD = MOVE v2|DWORD moveKind: DWORD <|@ <|@
452
+ nr -1 <|@ instruction RETURN (savedRbp: v3|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@137f187d8 <|@ <|@
453
+ end_IR
454
+ end_block
455
+ end_cfg
456
+ begin_bytecodes
457
+ 0: iload_0
458
+ 1: iload_1
459
+ 2: if_icmpgt 9
460
+ 5: iconst_1
461
+ 6: goto 10
462
+ 9: iconst_0
463
+ 10: ireturn
464
+ <|@
465
+ end_bytecodes
466
+ begin_cfg
467
+ name "Before register allocation"
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 [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
480
+ nr 2 <|@ instruction v3|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
481
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@1442d4da8 slotKind: QWORD <|@ <|@
482
+ nr 6 <|@ instruction v0|DWORD = MOVE rsi|DWORD moveKind: DWORD <|@ <|@
483
+ nr 8 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
484
+ nr 10 <|@ instruction CMP (x: v0|DWORD, y: v1|DWORD) size: DWORD <|@ <|@
485
+ nr 12 <|@ instruction v2|DWORD = SETCC condition: <= <|@ <|@
486
+ nr 14 <|@ instruction rax|DWORD = MOVE v2|DWORD moveKind: DWORD <|@ <|@
487
+ nr 16 <|@ instruction RETURN (savedRbp: v3|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@137f187d8 <|@ <|@
488
+ end_IR
489
+ end_block
490
+ end_cfg
491
+ begin_bytecodes
492
+ 0: iload_0
493
+ 1: iload_1
494
+ 2: if_icmpgt 9
495
+ 5: iconst_1
496
+ 6: goto 10
497
+ 9: iconst_0
498
+ 10: ireturn
499
+ <|@
500
+ end_bytecodes
501
+ begin_cfg
502
+ name "After SSALinearScanLifetimeAnalysis"
503
+ begin_block
504
+ name "B0"
505
+ from_bci -1
506
+ to_bci -1
507
+ predecessors
508
+ successors
509
+ xhandlers
510
+ flags
511
+ probability 4607182418800017408
512
+ begin_IR
513
+ LIR
514
+ nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
515
+ nr 2 <|@ instruction v3|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
516
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@1442d4da8 slotKind: QWORD <|@ <|@
517
+ nr 6 <|@ instruction v0|DWORD = MOVE rsi|DWORD moveKind: DWORD <|@ <|@
518
+ nr 8 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
519
+ nr 10 <|@ instruction CMP (x: v0|DWORD, y: v1|DWORD) size: DWORD <|@ <|@
520
+ nr 12 <|@ instruction v2|DWORD = SETCC condition: <= <|@ <|@
521
+ nr 14 <|@ instruction rax|DWORD = MOVE v2|DWORD moveKind: DWORD <|@ <|@
522
+ nr 16 <|@ instruction RETURN (savedRbp: v3|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@137f187d8 <|@ <|@
523
+ end_IR
524
+ end_block
525
+ end_cfg
526
+ begin_bytecodes
527
+ 0: iload_0
528
+ 1: iload_1
529
+ 2: if_icmpgt 9
530
+ 5: iconst_1
531
+ 6: goto 10
532
+ 9: iconst_0
533
+ 10: ireturn
534
+ <|@
535
+ end_bytecodes
536
+ begin_intervals
537
+ name "Before register allocation"
538
+ rax|d fixed "[rax|d]" rax|d v2|d [0, 1[[14, 16[ "NoSpillStore"
539
+ rdx|d fixed "[rdx|d]" rdx|d -1 [0, 8[ "NoSpillStore"
540
+ rbp|q fixed "[rbp|q]" rbp|q -1 [0, 2[ "NoSpillStore"
541
+ rsi|d fixed "[rsi|d]" rsi|d -1 [0, 6[ "NoSpillStore"
542
+ v0|d DWORD "[v0|d]" v0|d rsi|d [6, 10[6 MustHaveRegister 10 MustHaveRegister "NoSpillStore"
543
+ v1|d DWORD "[v1|d]" v1|d rdx|d [8, 10[8 MustHaveRegister 10 ShouldHaveRegister "NoSpillStore"
544
+ v2|d DWORD "[v2|d]" v2|d -1 [12, 14[12 MustHaveRegister 14 ShouldHaveRegister "NoSpillStore"
545
+ v3|q QWORD "[v3|q]" v3|q rbp|q [2, 16[2 MustHaveRegister 16 ShouldHaveRegister "NoSpillStore"
546
+ end_intervals
547
+ begin_intervals
548
+ name "After register allocation"
549
+ rax|d fixed "[rax|d]" rax|d v2|d [0, 1[[14, 16[ "NoSpillStore"
550
+ rdx|d fixed "[rdx|d]" rdx|d -1 [0, 8[ "NoSpillStore"
551
+ rbp|q fixed "[rbp|q]" rbp|q -1 [0, 2[ "NoSpillStore"
552
+ rsi|d fixed "[rsi|d]" rsi|d -1 [0, 6[ "NoSpillStore"
553
+ v0|d DWORD "[rsi|d]" v0|d rsi|d [6, 10[6 MustHaveRegister 10 MustHaveRegister "NoSpillStore"
554
+ v1|d DWORD "[rdx|d]" v1|d rdx|d [8, 10[8 MustHaveRegister 10 ShouldHaveRegister "NoSpillStore"
555
+ v2|d DWORD "[rax|d]" v2|d -1 [12, 14[12 MustHaveRegister 14 ShouldHaveRegister "NoSpillStore"
556
+ v3|q QWORD "[rbp|q]" v3|q rbp|q [2, 16[2 MustHaveRegister 16 ShouldHaveRegister "NoSpillStore"
557
+ end_intervals
558
+ begin_cfg
559
+ name "After LinearScanRegisterAllocation"
560
+ begin_block
561
+ name "B0"
562
+ from_bci -1
563
+ to_bci -1
564
+ predecessors
565
+ successors
566
+ xhandlers
567
+ flags
568
+ probability 4607182418800017408
569
+ begin_IR
570
+ LIR
571
+ nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
572
+ nr 2 <|@ instruction v3|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
573
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@1442d4da8 slotKind: QWORD <|@ <|@
574
+ nr 6 <|@ instruction v0|DWORD = MOVE rsi|DWORD moveKind: DWORD <|@ <|@
575
+ nr 8 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
576
+ nr 10 <|@ instruction CMP (x: v0|DWORD, y: v1|DWORD) size: DWORD <|@ <|@
577
+ nr 12 <|@ instruction v2|DWORD = SETCC condition: <= <|@ <|@
578
+ nr 14 <|@ instruction rax|DWORD = MOVE v2|DWORD moveKind: DWORD <|@ <|@
579
+ nr 16 <|@ instruction RETURN (savedRbp: v3|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@137f187d8 <|@ <|@
580
+ end_IR
581
+ end_block
582
+ end_cfg
583
+ begin_bytecodes
584
+ 0: iload_0
585
+ 1: iload_1
586
+ 2: if_icmpgt 9
587
+ 5: iconst_1
588
+ 6: goto 10
589
+ 9: iconst_0
590
+ 10: ireturn
591
+ <|@
592
+ end_bytecodes
593
+ begin_intervals
594
+ name "After optimize spill position"
595
+ rax|d fixed "[rax|d]" rax|d v2|d [0, 1[[14, 16[ "NoSpillStore"
596
+ rdx|d fixed "[rdx|d]" rdx|d -1 [0, 8[ "NoSpillStore"
597
+ rbp|q fixed "[rbp|q]" rbp|q -1 [0, 2[ "NoSpillStore"
598
+ rsi|d fixed "[rsi|d]" rsi|d -1 [0, 6[ "NoSpillStore"
599
+ v0|d DWORD "[rsi|d]" v0|d rsi|d [6, 10[6 MustHaveRegister 10 MustHaveRegister "NoSpillStore"
600
+ v1|d DWORD "[rdx|d]" v1|d rdx|d [8, 10[8 MustHaveRegister 10 ShouldHaveRegister "NoSpillStore"
601
+ v2|d DWORD "[rax|d]" v2|d -1 [12, 14[12 MustHaveRegister 14 ShouldHaveRegister "NoSpillStore"
602
+ v3|q QWORD "[rbp|q]" v3|q rbp|q [2, 16[2 MustHaveRegister 16 ShouldHaveRegister "NoSpillStore"
603
+ end_intervals
604
+ begin_cfg
605
+ name "After LinearScanOptimizeSpillPosition"
606
+ begin_block
607
+ name "B0"
608
+ from_bci -1
609
+ to_bci -1
610
+ predecessors
611
+ successors
612
+ xhandlers
613
+ flags
614
+ probability 4607182418800017408
615
+ begin_IR
616
+ LIR
617
+ nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
618
+ nr 2 <|@ instruction v3|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
619
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@1442d4da8 slotKind: QWORD <|@ <|@
620
+ nr 6 <|@ instruction v0|DWORD = MOVE rsi|DWORD moveKind: DWORD <|@ <|@
621
+ nr 8 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
622
+ nr 10 <|@ instruction CMP (x: v0|DWORD, y: v1|DWORD) size: DWORD <|@ <|@
623
+ nr 12 <|@ instruction v2|DWORD = SETCC condition: <= <|@ <|@
624
+ nr 14 <|@ instruction rax|DWORD = MOVE v2|DWORD moveKind: DWORD <|@ <|@
625
+ nr 16 <|@ instruction RETURN (savedRbp: v3|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@137f187d8 <|@ <|@
626
+ end_IR
627
+ end_block
628
+ end_cfg
629
+ begin_bytecodes
630
+ 0: iload_0
631
+ 1: iload_1
632
+ 2: if_icmpgt 9
633
+ 5: iconst_1
634
+ 6: goto 10
635
+ 9: iconst_0
636
+ 10: ireturn
637
+ <|@
638
+ end_bytecodes
639
+ begin_intervals
640
+ name "After resolve data flow"
641
+ rax|d fixed "[rax|d]" rax|d v2|d [0, 1[[14, 16[ "NoSpillStore"
642
+ rdx|d fixed "[rdx|d]" rdx|d -1 [0, 8[ "NoSpillStore"
643
+ rbp|q fixed "[rbp|q]" rbp|q -1 [0, 2[ "NoSpillStore"
644
+ rsi|d fixed "[rsi|d]" rsi|d -1 [0, 6[ "NoSpillStore"
645
+ v0|d DWORD "[rsi|d]" v0|d rsi|d [6, 10[6 MustHaveRegister 10 MustHaveRegister "NoSpillStore"
646
+ v1|d DWORD "[rdx|d]" v1|d rdx|d [8, 10[8 MustHaveRegister 10 ShouldHaveRegister "NoSpillStore"
647
+ v2|d DWORD "[rax|d]" v2|d -1 [12, 14[12 MustHaveRegister 14 ShouldHaveRegister "NoSpillStore"
648
+ v3|q QWORD "[rbp|q]" v3|q rbp|q [2, 16[2 MustHaveRegister 16 ShouldHaveRegister "NoSpillStore"
649
+ end_intervals
650
+ begin_cfg
651
+ name "After SSALinearScanResolveDataFlow"
652
+ begin_block
653
+ name "B0"
654
+ from_bci -1
655
+ to_bci -1
656
+ predecessors
657
+ successors
658
+ xhandlers
659
+ flags
660
+ probability 4607182418800017408
661
+ begin_IR
662
+ LIR
663
+ nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
664
+ nr 2 <|@ instruction v3|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
665
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@1442d4da8 slotKind: QWORD <|@ <|@
666
+ nr 6 <|@ instruction v0|DWORD = MOVE rsi|DWORD moveKind: DWORD <|@ <|@
667
+ nr 8 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
668
+ nr 10 <|@ instruction CMP (x: v0|DWORD, y: v1|DWORD) size: DWORD <|@ <|@
669
+ nr 12 <|@ instruction v2|DWORD = SETCC condition: <= <|@ <|@
670
+ nr 14 <|@ instruction rax|DWORD = MOVE v2|DWORD moveKind: DWORD <|@ <|@
671
+ nr 16 <|@ instruction RETURN (savedRbp: v3|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@137f187d8 <|@ <|@
672
+ end_IR
673
+ end_block
674
+ end_cfg
675
+ begin_bytecodes
676
+ 0: iload_0
677
+ 1: iload_1
678
+ 2: if_icmpgt 9
679
+ 5: iconst_1
680
+ 6: goto 10
681
+ 9: iconst_0
682
+ 10: ireturn
683
+ <|@
684
+ end_bytecodes
685
+ begin_cfg
686
+ name "After SSALinearScanEliminateSpillMove"
687
+ begin_block
688
+ name "B0"
689
+ from_bci -1
690
+ to_bci -1
691
+ predecessors
692
+ successors
693
+ xhandlers
694
+ flags
695
+ probability 4607182418800017408
696
+ begin_IR
697
+ LIR
698
+ nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
699
+ nr 2 <|@ instruction v3|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
700
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@1442d4da8 slotKind: QWORD <|@ <|@
701
+ nr 6 <|@ instruction v0|DWORD = MOVE rsi|DWORD moveKind: DWORD <|@ <|@
702
+ nr 8 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
703
+ nr 10 <|@ instruction CMP (x: v0|DWORD, y: v1|DWORD) size: DWORD <|@ <|@
704
+ nr 12 <|@ instruction v2|DWORD = SETCC condition: <= <|@ <|@
705
+ nr 14 <|@ instruction rax|DWORD = MOVE v2|DWORD moveKind: DWORD <|@ <|@
706
+ nr 16 <|@ instruction RETURN (savedRbp: v3|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@137f187d8 <|@ <|@
707
+ end_IR
708
+ end_block
709
+ end_cfg
710
+ begin_bytecodes
711
+ 0: iload_0
712
+ 1: iload_1
713
+ 2: if_icmpgt 9
714
+ 5: iconst_1
715
+ 6: goto 10
716
+ 9: iconst_0
717
+ 10: ireturn
718
+ <|@
719
+ end_bytecodes
720
+ begin_cfg
721
+ name "After LinearScanAssignLocations"
722
+ begin_block
723
+ name "B0"
724
+ from_bci -1
725
+ to_bci -1
726
+ predecessors
727
+ successors
728
+ xhandlers
729
+ flags
730
+ probability 4607182418800017408
731
+ begin_IR
732
+ LIR
733
+ nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
734
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@1442d4da8 slotKind: QWORD <|@ <|@
735
+ nr 10 <|@ instruction CMP (x: rsi|DWORD, y: rdx|DWORD) size: DWORD <|@ <|@
736
+ nr 12 <|@ instruction rax|DWORD = SETCC condition: <= <|@ <|@
737
+ nr 16 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@137f187d8 <|@ <|@
738
+ end_IR
739
+ end_block
740
+ end_cfg
741
+ begin_bytecodes
742
+ 0: iload_0
743
+ 1: iload_1
744
+ 2: if_icmpgt 9
745
+ 5: iconst_1
746
+ 6: goto 10
747
+ 9: iconst_0
748
+ 10: ireturn
749
+ <|@
750
+ end_bytecodes
751
+ begin_cfg
752
+ name "After LinearScan"
753
+ begin_block
754
+ name "B0"
755
+ from_bci -1
756
+ to_bci -1
757
+ predecessors
758
+ successors
759
+ xhandlers
760
+ flags
761
+ probability 4607182418800017408
762
+ begin_IR
763
+ LIR
764
+ nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
765
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@1442d4da8 slotKind: QWORD <|@ <|@
766
+ nr 10 <|@ instruction CMP (x: rsi|DWORD, y: rdx|DWORD) size: DWORD <|@ <|@
767
+ nr 12 <|@ instruction rax|DWORD = SETCC condition: <= <|@ <|@
768
+ nr 16 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@137f187d8 <|@ <|@
769
+ end_IR
770
+ end_block
771
+ end_cfg
772
+ begin_bytecodes
773
+ 0: iload_0
774
+ 1: iload_1
775
+ 2: if_icmpgt 9
776
+ 5: iconst_1
777
+ 6: goto 10
778
+ 9: iconst_0
779
+ 10: ireturn
780
+ <|@
781
+ end_bytecodes
782
+ begin_cfg
783
+ name "After LSStackSlotAllocator"
784
+ begin_block
785
+ name "B0"
786
+ from_bci -1
787
+ to_bci -1
788
+ predecessors
789
+ successors
790
+ xhandlers
791
+ flags
792
+ probability 4607182418800017408
793
+ begin_IR
794
+ LIR
795
+ nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
796
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@1442d4da8 slotKind: QWORD <|@ <|@
797
+ nr 10 <|@ instruction CMP (x: rsi|DWORD, y: rdx|DWORD) size: DWORD <|@ <|@
798
+ nr 12 <|@ instruction rax|DWORD = SETCC condition: <= <|@ <|@
799
+ nr 16 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@137f187d8 <|@ <|@
800
+ end_IR
801
+ end_block
802
+ end_cfg
803
+ begin_bytecodes
804
+ 0: iload_0
805
+ 1: iload_1
806
+ 2: if_icmpgt 9
807
+ 5: iconst_1
808
+ 6: goto 10
809
+ 9: iconst_0
810
+ 10: ireturn
811
+ <|@
812
+ end_bytecodes
813
+ begin_cfg
814
+ name "After LocationMarker"
815
+ begin_block
816
+ name "B0"
817
+ from_bci -1
818
+ to_bci -1
819
+ predecessors
820
+ successors
821
+ xhandlers
822
+ flags
823
+ probability 4607182418800017408
824
+ begin_IR
825
+ LIR
826
+ nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
827
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@1442d4da8 slotKind: QWORD <|@ <|@
828
+ nr 10 <|@ instruction CMP (x: rsi|DWORD, y: rdx|DWORD) size: DWORD <|@ <|@
829
+ nr 12 <|@ instruction rax|DWORD = SETCC condition: <= <|@ <|@
830
+ nr 16 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@137f187d8 <|@ <|@
831
+ end_IR
832
+ end_block
833
+ end_cfg
834
+ begin_bytecodes
835
+ 0: iload_0
836
+ 1: iload_1
837
+ 2: if_icmpgt 9
838
+ 5: iconst_1
839
+ 6: goto 10
840
+ 9: iconst_0
841
+ 10: ireturn
842
+ <|@
843
+ end_bytecodes
844
+ begin_cfg
845
+ name "After AllocationStage"
846
+ begin_block
847
+ name "B0"
848
+ from_bci -1
849
+ to_bci -1
850
+ predecessors
851
+ successors
852
+ xhandlers
853
+ flags
854
+ probability 4607182418800017408
855
+ begin_IR
856
+ LIR
857
+ nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
858
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@1442d4da8 slotKind: QWORD <|@ <|@
859
+ nr 10 <|@ instruction CMP (x: rsi|DWORD, y: rdx|DWORD) size: DWORD <|@ <|@
860
+ nr 12 <|@ instruction rax|DWORD = SETCC condition: <= <|@ <|@
861
+ nr 16 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@137f187d8 <|@ <|@
862
+ end_IR
863
+ end_block
864
+ end_cfg
865
+ begin_bytecodes
866
+ 0: iload_0
867
+ 1: iload_1
868
+ 2: if_icmpgt 9
869
+ 5: iconst_1
870
+ 6: goto 10
871
+ 9: iconst_0
872
+ 10: ireturn
873
+ <|@
874
+ end_bytecodes
875
+ begin_cfg
876
+ name "After EdgeMoveOptimizer"
877
+ begin_block
878
+ name "B0"
879
+ from_bci -1
880
+ to_bci -1
881
+ predecessors
882
+ successors
883
+ xhandlers
884
+ flags
885
+ probability 4607182418800017408
886
+ begin_IR
887
+ LIR
888
+ nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
889
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@1442d4da8 slotKind: QWORD <|@ <|@
890
+ nr 10 <|@ instruction CMP (x: rsi|DWORD, y: rdx|DWORD) size: DWORD <|@ <|@
891
+ nr 12 <|@ instruction rax|DWORD = SETCC condition: <= <|@ <|@
892
+ nr 16 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@137f187d8 <|@ <|@
893
+ end_IR
894
+ end_block
895
+ end_cfg
896
+ begin_bytecodes
897
+ 0: iload_0
898
+ 1: iload_1
899
+ 2: if_icmpgt 9
900
+ 5: iconst_1
901
+ 6: goto 10
902
+ 9: iconst_0
903
+ 10: ireturn
904
+ <|@
905
+ end_bytecodes
906
+ begin_cfg
907
+ name "After ControlFlowOptimizer"
908
+ begin_block
909
+ name "B0"
910
+ from_bci -1
911
+ to_bci -1
912
+ predecessors
913
+ successors
914
+ xhandlers
915
+ flags
916
+ probability 4607182418800017408
917
+ begin_IR
918
+ LIR
919
+ nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
920
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@1442d4da8 slotKind: QWORD <|@ <|@
921
+ nr 10 <|@ instruction CMP (x: rsi|DWORD, y: rdx|DWORD) size: DWORD <|@ <|@
922
+ nr 12 <|@ instruction rax|DWORD = SETCC condition: <= <|@ <|@
923
+ nr 16 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@137f187d8 <|@ <|@
924
+ end_IR
925
+ end_block
926
+ end_cfg
927
+ begin_bytecodes
928
+ 0: iload_0
929
+ 1: iload_1
930
+ 2: if_icmpgt 9
931
+ 5: iconst_1
932
+ 6: goto 10
933
+ 9: iconst_0
934
+ 10: ireturn
935
+ <|@
936
+ end_bytecodes
937
+ begin_cfg
938
+ name "After RedundantMoveElimination"
939
+ begin_block
940
+ name "B0"
941
+ from_bci -1
942
+ to_bci -1
943
+ predecessors
944
+ successors
945
+ xhandlers
946
+ flags
947
+ probability 4607182418800017408
948
+ begin_IR
949
+ LIR
950
+ nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
951
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@1442d4da8 slotKind: QWORD <|@ <|@
952
+ nr 10 <|@ instruction CMP (x: rsi|DWORD, y: rdx|DWORD) size: DWORD <|@ <|@
953
+ nr 12 <|@ instruction rax|DWORD = SETCC condition: <= <|@ <|@
954
+ nr 16 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@137f187d8 <|@ <|@
955
+ end_IR
956
+ end_block
957
+ end_cfg
958
+ begin_bytecodes
959
+ 0: iload_0
960
+ 1: iload_1
961
+ 2: if_icmpgt 9
962
+ 5: iconst_1
963
+ 6: goto 10
964
+ 9: iconst_0
965
+ 10: ireturn
966
+ <|@
967
+ end_bytecodes
968
+ begin_cfg
969
+ name "After NullCheckOptimizer"
970
+ begin_block
971
+ name "B0"
972
+ from_bci -1
973
+ to_bci -1
974
+ predecessors
975
+ successors
976
+ xhandlers
977
+ flags
978
+ probability 4607182418800017408
979
+ begin_IR
980
+ LIR
981
+ nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
982
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@1442d4da8 slotKind: QWORD <|@ <|@
983
+ nr 10 <|@ instruction CMP (x: rsi|DWORD, y: rdx|DWORD) size: DWORD <|@ <|@
984
+ nr 12 <|@ instruction rax|DWORD = SETCC condition: <= <|@ <|@
985
+ nr 16 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@137f187d8 <|@ <|@
986
+ end_IR
987
+ end_block
988
+ end_cfg
989
+ begin_bytecodes
990
+ 0: iload_0
991
+ 1: iload_1
992
+ 2: if_icmpgt 9
993
+ 5: iconst_1
994
+ 6: goto 10
995
+ 9: iconst_0
996
+ 10: ireturn
997
+ <|@
998
+ end_bytecodes
999
+ begin_cfg
1000
+ name "After StackMoveOptimization"
1001
+ begin_block
1002
+ name "B0"
1003
+ from_bci -1
1004
+ to_bci -1
1005
+ predecessors
1006
+ successors
1007
+ xhandlers
1008
+ flags
1009
+ probability 4607182418800017408
1010
+ begin_IR
1011
+ LIR
1012
+ nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
1013
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@1442d4da8 slotKind: QWORD <|@ <|@
1014
+ nr 10 <|@ instruction CMP (x: rsi|DWORD, y: rdx|DWORD) size: DWORD <|@ <|@
1015
+ nr 12 <|@ instruction rax|DWORD = SETCC condition: <= <|@ <|@
1016
+ nr 16 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@137f187d8 <|@ <|@
1017
+ end_IR
1018
+ end_block
1019
+ end_cfg
1020
+ begin_bytecodes
1021
+ 0: iload_0
1022
+ 1: iload_1
1023
+ 2: if_icmpgt 9
1024
+ 5: iconst_1
1025
+ 6: goto 10
1026
+ 9: iconst_0
1027
+ 10: ireturn
1028
+ <|@
1029
+ end_bytecodes
1030
+ begin_cfg
1031
+ name "After PostAllocationOptimizationStage"
1032
+ begin_block
1033
+ name "B0"
1034
+ from_bci -1
1035
+ to_bci -1
1036
+ predecessors
1037
+ successors
1038
+ xhandlers
1039
+ flags
1040
+ probability 4607182418800017408
1041
+ begin_IR
1042
+ LIR
1043
+ nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
1044
+ nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@1442d4da8 slotKind: QWORD <|@ <|@
1045
+ nr 10 <|@ instruction CMP (x: rsi|DWORD, y: rdx|DWORD) size: DWORD <|@ <|@
1046
+ nr 12 <|@ instruction rax|DWORD = SETCC condition: <= <|@ <|@
1047
+ nr 16 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@137f187d8 <|@ <|@
1048
+ end_IR
1049
+ end_block
1050
+ end_cfg
1051
+ begin_bytecodes
1052
+ 0: iload_0
1053
+ 1: iload_1
1054
+ 2: if_icmpgt 9
1055
+ 5: iconst_1
1056
+ 6: goto 10
1057
+ 9: iconst_0
1058
+ 10: ireturn
1059
+ <|@
1060
+ end_bytecodes
1061
+ begin_cfg
1062
+ name "After code generation"
1063
+ end_cfg
1064
+ begin_nmethod
1065
+ <<<HexCodeFile
1066
+ Platform AMD64 64 <||@
1067
+ HexCode 0 0f1f4400003bf20f9ec00fb6c0850500000000c5f877c3e80000000090e80000000090 <||@
1068
+ Comment 0 3 <||@
1069
+ Comment 0 1 <||@
1070
+ Comment 5 block B0 null <||@
1071
+ Comment 5 0 [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <||@
1072
+ Comment 5 4 [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@1442d4da8 slotKind: QWORD <||@
1073
+ Comment 5 10 CMP (x: rsi|DWORD, y: rdx|DWORD) size: DWORD <||@
1074
+ Comment 7 12 rax|DWORD = SETCC condition: <= <||@
1075
+ Comment 13 16 RETURN (savedRbp: rbp|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@137f187d8 <||@
1076
+ Comment 13 12 <||@
1077
+ Comment 23 {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} <||@
1078
+ Comment 23 4 <||@
1079
+ Comment 29 {Field[name=CompilerToVM::Data::SharedRuntime_deopt_blob_unpack, type=address, offset=0, address=0x1108bc128, value=4610474560]:0x112ce4240} <||@
1080
+ Comment 29 5 <||@
1081
+ HexCodeFile>>> <|@
1082
+ end_nmethod
1083
+ begin_compilation
1084
+ name " HotSpotCompilation-345[JavaExamples.exampleCompareOperator(int, int)]"
1085
+ method "HotSpotCompilation-345[JavaExamples.exampleCompareOperator(int, int)]"
1086
+ date 1583364091413
1087
+ end_compilation
1088
+ begin_cfg
1089
+ name "After code installation"
1090
+ end_cfg
1091
+ begin_nmethod
1092
+ <<<HexCodeFile
1093
+ Platform AMD64 64 <||@
1094
+ HexCode 112e30220 0f1f4400003bf20f9ec00fb6c08505d3ad93fbc5f877c3e8e440ffff90e8fe3febff90f4f4f4f4f4 <||@
1095
+ Comment 0 3 <||@
1096
+ Comment 0 1 <||@
1097
+ Comment 5 block B0 null <||@
1098
+ Comment 5 0 [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <||@
1099
+ Comment 5 4 [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@1442d4da8 slotKind: QWORD <||@
1100
+ Comment 5 10 CMP (x: rsi|DWORD, y: rdx|DWORD) size: DWORD <||@
1101
+ Comment 7 12 rax|DWORD = SETCC condition: <= <||@
1102
+ Comment 13 16 RETURN (savedRbp: rbp|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@137f187d8 <||@
1103
+ Comment 13 12 <||@
1104
+ Comment 23 {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} <||@
1105
+ Comment 23 4 <||@
1106
+ Comment 29 {Field[name=CompilerToVM::Data::SharedRuntime_deopt_blob_unpack, type=address, offset=0, address=0x1108bc128, value=4610474560]:0x112ce4240} <||@
1107
+ Comment 29 5 <||@
1108
+ HexCodeFile>>> <|@
1109
+ end_nmethod