seafoam 0.3 → 0.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (137) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/workflows.yml +40 -0
  3. data/.gitignore +0 -1
  4. data/.rubocop.yml +1 -1
  5. data/.ruby-version +1 -1
  6. data/Gemfile.lock +59 -0
  7. data/README.md +76 -3
  8. data/bin/bgv2isabelle +16 -45
  9. data/bin/bgv2json +18 -36
  10. data/bin/cfg2asm +24 -0
  11. data/bin/seafoam +1 -1
  12. data/demos/box-unbox-stats +65 -0
  13. data/docs/bgv.md +2 -1
  14. data/docs/getting-graphs.md +8 -0
  15. data/examples/Fib.java +1 -1
  16. data/examples/fib-java.bgv.gz +0 -0
  17. data/examples/fib.js +1 -1
  18. data/examples/java/JavaExamples.java +1 -1
  19. data/examples/ruby/clamps.rb +20 -0
  20. data/examples/ruby/graal.patch +15 -0
  21. data/examples/ruby/ruby_examples.rb +278 -0
  22. data/lib/seafoam.rb +5 -1
  23. data/lib/seafoam/annotators/graal.rb +1 -1
  24. data/lib/seafoam/bgv/bgv_parser.rb +10 -2
  25. data/lib/seafoam/cfg/cfg_parser.rb +93 -0
  26. data/lib/seafoam/cfg/disassembler.rb +70 -0
  27. data/lib/seafoam/commands.rb +190 -30
  28. data/lib/seafoam/graal/source.rb +23 -0
  29. data/lib/seafoam/graph.rb +25 -1
  30. data/lib/seafoam/graphviz_writer.rb +21 -2
  31. data/lib/seafoam/isabelle_writer.rb +46 -0
  32. data/lib/seafoam/json_writer.rb +58 -0
  33. data/lib/seafoam/version.rb +1 -1
  34. data/seafoam.gemspec +4 -2
  35. data/spec/seafoam/annotators/graal_spec.rb +7 -7
  36. data/spec/seafoam/bgv/bgv_parser_spec.rb +13 -3
  37. data/spec/seafoam/cfg/cfg_parser_spec.rb +21 -0
  38. data/spec/seafoam/cfg/disassembler_spec.rb +32 -0
  39. data/spec/seafoam/command_spec.rb +86 -40
  40. data/spec/seafoam/json_writer_spec.rb +14 -0
  41. data/spec/seafoam/spec_helpers.rb +4 -0
  42. data/spec/seafoam/spotlight_spec.rb +1 -1
  43. data/tools/render-all +2 -2
  44. metadata +33 -96
  45. data/.github/workflows/rubocop.yml +0 -10
  46. data/.github/workflows/specs.yml +0 -19
  47. data/examples/fib-java.bgv +0 -0
  48. data/examples/fib-js.bgv +0 -0
  49. data/examples/fib-ruby.bgv +0 -0
  50. data/examples/identity.bgv +0 -0
  51. data/examples/java/exampleArithOperator.bgv +0 -0
  52. data/examples/java/exampleArithOperator.cfg +0 -925
  53. data/examples/java/exampleArrayAllocation.bgv +0 -0
  54. data/examples/java/exampleArrayAllocation.cfg +0 -5268
  55. data/examples/java/exampleArrayRead.bgv +0 -0
  56. data/examples/java/exampleArrayRead.cfg +0 -2263
  57. data/examples/java/exampleArrayWrite.bgv +0 -0
  58. data/examples/java/exampleArrayWrite.cfg +0 -2315
  59. data/examples/java/exampleCatch.bgv +0 -0
  60. data/examples/java/exampleCatch.cfg +0 -4150
  61. data/examples/java/exampleCompareOperator.bgv +0 -0
  62. data/examples/java/exampleCompareOperator.cfg +0 -1109
  63. data/examples/java/exampleDoubleSynchronized.bgv +0 -0
  64. data/examples/java/exampleDoubleSynchronized.cfg +0 -26497
  65. data/examples/java/exampleExactArith.bgv +0 -0
  66. data/examples/java/exampleExactArith.cfg +0 -1888
  67. data/examples/java/exampleFieldRead.bgv +0 -0
  68. data/examples/java/exampleFieldRead.cfg +0 -1228
  69. data/examples/java/exampleFieldWrite.bgv +0 -0
  70. data/examples/java/exampleFieldWrite.cfg +0 -1102
  71. data/examples/java/exampleFor.bgv +0 -0
  72. data/examples/java/exampleFor.cfg +0 -3936
  73. data/examples/java/exampleFullEscape.bgv +0 -0
  74. data/examples/java/exampleFullEscape.cfg +0 -5893
  75. data/examples/java/exampleIf.bgv +0 -0
  76. data/examples/java/exampleIf.cfg +0 -2462
  77. data/examples/java/exampleIfNeverTaken.bgv +0 -0
  78. data/examples/java/exampleIfNeverTaken.cfg +0 -2476
  79. data/examples/java/exampleInstanceOfManyImpls.bgv +0 -0
  80. data/examples/java/exampleInstanceOfManyImpls.cfg +0 -6391
  81. data/examples/java/exampleInstanceOfOneImpl.bgv +0 -0
  82. data/examples/java/exampleInstanceOfOneImpl.cfg +0 -2604
  83. data/examples/java/exampleIntSwitch.bgv +0 -0
  84. data/examples/java/exampleIntSwitch.cfg +0 -3121
  85. data/examples/java/exampleInterfaceCallManyImpls.bgv +0 -0
  86. data/examples/java/exampleInterfaceCallManyImpls.cfg +0 -1358
  87. data/examples/java/exampleInterfaceCallOneImpl.bgv +0 -0
  88. data/examples/java/exampleInterfaceCallOneImpl.cfg +0 -3859
  89. data/examples/java/exampleLocalInstanceOf.bgv +0 -0
  90. data/examples/java/exampleLocalInstanceOf.cfg +0 -5276
  91. data/examples/java/exampleLocalSynchronized.bgv +0 -0
  92. data/examples/java/exampleLocalSynchronized.cfg +0 -1364
  93. data/examples/java/exampleLocalVariables.bgv +0 -0
  94. data/examples/java/exampleLocalVariables.cfg +0 -1195
  95. data/examples/java/exampleLocalVariablesState.bgv +0 -0
  96. data/examples/java/exampleLocalVariablesState.cfg +0 -1673
  97. data/examples/java/exampleNestedWhile.bgv +0 -0
  98. data/examples/java/exampleNestedWhile.cfg +0 -15499
  99. data/examples/java/exampleNestedWhileBreak.bgv +0 -0
  100. data/examples/java/exampleNestedWhileBreak.cfg +0 -11162
  101. data/examples/java/exampleNoEscape.bgv +0 -0
  102. data/examples/java/exampleNoEscape.cfg +0 -974
  103. data/examples/java/exampleObjectAllocation.bgv +0 -0
  104. data/examples/java/exampleObjectAllocation.cfg +0 -5287
  105. data/examples/java/examplePartialEscape.bgv +0 -0
  106. data/examples/java/examplePartialEscape.cfg +0 -7042
  107. data/examples/java/examplePhi.bgv +0 -0
  108. data/examples/java/examplePhi.cfg +0 -3227
  109. data/examples/java/exampleReducible.bgv +0 -0
  110. data/examples/java/exampleReducible.cfg +0 -5578
  111. data/examples/java/exampleSimpleCall.bgv +0 -0
  112. data/examples/java/exampleSimpleCall.cfg +0 -1435
  113. data/examples/java/exampleStamp.bgv +0 -0
  114. data/examples/java/exampleStamp.cfg +0 -913
  115. data/examples/java/exampleStaticCall.bgv +0 -0
  116. data/examples/java/exampleStaticCall.cfg +0 -1154
  117. data/examples/java/exampleStringSwitch.bgv +0 -0
  118. data/examples/java/exampleStringSwitch.cfg +0 -15377
  119. data/examples/java/exampleSynchronized.bgv +0 -0
  120. data/examples/java/exampleSynchronized.cfg +0 -26027
  121. data/examples/java/exampleThrow.bgv +0 -0
  122. data/examples/java/exampleThrow.cfg +0 -780
  123. data/examples/java/exampleThrowCatch.bgv +0 -0
  124. data/examples/java/exampleThrowCatch.cfg +0 -744
  125. data/examples/java/exampleUnsafeRead.bgv +0 -0
  126. data/examples/java/exampleUnsafeRead.cfg +0 -912
  127. data/examples/java/exampleUnsafeWrite.bgv +0 -0
  128. data/examples/java/exampleUnsafeWrite.cfg +0 -962
  129. data/examples/java/exampleWhile.bgv +0 -0
  130. data/examples/java/exampleWhile.cfg +0 -3936
  131. data/examples/java/exampleWhileBreak.bgv +0 -0
  132. data/examples/java/exampleWhileBreak.cfg +0 -5963
  133. data/examples/matmult-java.bgv +0 -0
  134. data/examples/matmult-ruby.bgv +0 -0
  135. data/examples/overflow.bgv +0 -0
  136. data/spec/seafoam/bgv/fixtures/not.bgv +0 -1
  137. data/spec/seafoam/bgv/fixtures/unsupported.bgv +0 -1
@@ -1,1195 +0,0 @@
1
- begin_compilation
2
- name " HotSpotCompilation-112[JavaExamples.exampleLocalVariables(int, int)]"
3
- method "HotSpotCompilation-112[JavaExamples.exampleLocalVariables(int, int)]"
4
- date 1583713938477
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: v9
28
- === Usages ===
29
- === Predecessor ===
30
- - >@ <|@
31
- instruction <@StartNode|@org.graalvm.compiler.nodes.StartNode>@ stateAfter: - #next: v9 <|@ <|@
32
- f <@~|@floating>@ <|@
33
- tid i1 <|@
34
- d <@d|@=== Debug Properties ===
35
- index: 0
36
- stamp: i32
37
- uncheckedStamp: [null]
38
- === Inputs ===
39
- === Succesors ===
40
- === Usages ===
41
- i4
42
- === Predecessor ===
43
- - >@ <|@
44
- instruction <@Parameter|@org.graalvm.compiler.nodes.ParameterNode>@ <|@ <|@
45
- f <@~|@floating>@ <|@
46
- tid i2 <|@
47
- d <@d|@=== Debug Properties ===
48
- index: 1
49
- stamp: i32
50
- uncheckedStamp: [null]
51
- === Inputs ===
52
- === Succesors ===
53
- === Usages ===
54
- i4
55
- === Predecessor ===
56
- - >@ <|@
57
- instruction <@Parameter|@org.graalvm.compiler.nodes.ParameterNode>@ <|@ <|@
58
- f <@~|@floating>@ <|@
59
- tid i4 <|@
60
- d <@d|@=== Debug Properties ===
61
- nodeSourcePosition: at JavaExamples.exampleLocalVariables(JavaExamples.java:69) [bci: 2]
62
- stamp: i32
63
- === Inputs ===
64
- x: i1
65
- y: i2
66
- === Succesors ===
67
- === Usages ===
68
- i7 i8
69
- === Predecessor ===
70
- - >@ <|@
71
- instruction <@+|@org.graalvm.compiler.nodes.calc.AddNode>@ x: i1 y: i2 <|@ <|@
72
- f <@~|@floating>@ <|@
73
- tid i6 <|@
74
- d <@d|@=== Debug Properties ===
75
- isDefaultStable: false
76
- nodeSourcePosition: at JavaExamples.exampleLocalVariables(JavaExamples.java:70) [bci: 6]
77
- rawvalue: 1
78
- stableDimension: 0
79
- stamp: i32 [1] ⇊0000000000000001 ⇈0000000000000001
80
- stampKind: i32
81
- value: int[1|0x1]
82
- === Inputs ===
83
- === Succesors ===
84
- === Usages ===
85
- i7
86
- === Predecessor ===
87
- - >@ <|@
88
- instruction <@Constant|@org.graalvm.compiler.nodes.ConstantNode>@ <|@ <|@
89
- f <@~|@floating>@ <|@
90
- tid i7 <|@
91
- d <@d|@=== Debug Properties ===
92
- nodeSourcePosition: at JavaExamples.exampleLocalVariables(JavaExamples.java:70) [bci: 6]
93
- stamp: i32 [-2147483648 - 2147483646] ⇈00000000fffffffe
94
- === Inputs ===
95
- x: i4
96
- y: i6
97
- === Succesors ===
98
- === Usages ===
99
- i8
100
- === Predecessor ===
101
- - >@ <|@
102
- instruction <@<<|@org.graalvm.compiler.nodes.calc.LeftShiftNode>@ x: i4 y: i6 <|@ <|@
103
- f <@~|@floating>@ <|@
104
- tid i8 <|@
105
- d <@d|@=== Debug Properties ===
106
- nodeSourcePosition: at JavaExamples.exampleLocalVariables(JavaExamples.java:70) [bci: 8]
107
- stamp: i32
108
- === Inputs ===
109
- x: i4
110
- y: i7
111
- === Succesors ===
112
- === Usages ===
113
- v9
114
- === Predecessor ===
115
- - >@ <|@
116
- instruction <@+|@org.graalvm.compiler.nodes.calc.AddNode>@ x: i4 y: i7 <|@ <|@
117
- f <@*|@fixed>@ <|@
118
- tid v9 <|@
119
- d <@d|@=== Debug Properties ===
120
- nodeSourcePosition: at JavaExamples.exampleLocalVariables(JavaExamples.java:70) [bci: 9]
121
- stamp: void
122
- === Inputs ===
123
- result: i8
124
- memoryMap: -
125
- === Succesors ===
126
- === Usages ===
127
- === Predecessor ===
128
- v0 >@ <|@
129
- instruction <@Return|@org.graalvm.compiler.nodes.ReturnNode>@ result: i8 memoryMap: - <|@ <|@
130
- end_IR
131
- end_block
132
- end_cfg
133
- begin_cfg
134
- name "After LIRGeneration"
135
- begin_block
136
- name "B0"
137
- from_bci -1
138
- to_bci -1
139
- predecessors
140
- successors
141
- xhandlers
142
- flags
143
- probability 4607182418800017408
144
- begin_IR
145
- LIR
146
- nr -1 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
147
- nr -1 <|@ instruction v5|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
148
- nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13cec59f0 slotKind: QWORD <|@ <|@
149
- nr -1 <|@ instruction v0|DWORD = MOVE rsi|DWORD moveKind: DWORD <|@ <|@
150
- nr -1 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
151
- nr -1 <|@ instruction v2|DWORD = ADD (x: v0|DWORD, y: v1|DWORD) size: DWORD <|@ <|@
152
- nr -1 <|@ instruction v3|DWORD = SHL v2|DWORD size: DWORD <|@ <|@
153
- nr -1 <|@ instruction v4|DWORD = ADD (x: v3|DWORD, y: v2|DWORD) size: DWORD <|@ <|@
154
- nr -1 <|@ instruction rax|DWORD = MOVE v4|DWORD moveKind: DWORD <|@ <|@
155
- nr -1 <|@ instruction RETURN (savedRbp: v5|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@113b187d8 <|@ <|@
156
- end_IR
157
- end_block
158
- end_cfg
159
- begin_bytecodes
160
- 0: iload_0
161
- 1: iload_1
162
- 2: iadd
163
- 3: istore_2
164
- 4: iload_2
165
- 5: iconst_2
166
- 6: imul
167
- 7: iload_2
168
- 8: iadd
169
- 9: ireturn
170
- <|@
171
- end_bytecodes
172
- begin_cfg
173
- name "After LIR generation"
174
- begin_block
175
- name "B0"
176
- from_bci -1
177
- to_bci -1
178
- predecessors
179
- successors
180
- xhandlers
181
- flags
182
- probability 4607182418800017408
183
- begin_IR
184
- HIR
185
- f <@#|@fixed with next>@ <|@
186
- tid v0 <|@
187
- d <@d|@=== Debug Properties ===
188
- stamp: void
189
- withSpeculationFence: false
190
- === Inputs ===
191
- stateAfter: -
192
- === Succesors ===
193
- next: v9
194
- === Usages ===
195
- === Predecessor ===
196
- - >@ <|@
197
- instruction <@StartNode|@org.graalvm.compiler.nodes.StartNode>@ stateAfter: - #next: v9 <|@ <|@
198
- f <@~|@floating>@ <|@
199
- tid i1 <|@
200
- result v0|DWORD <|@
201
- d <@d|@=== Debug Properties ===
202
- index: 0
203
- stamp: i32
204
- uncheckedStamp: [null]
205
- === Inputs ===
206
- === Succesors ===
207
- === Usages ===
208
- i4
209
- === Predecessor ===
210
- - >@ <|@
211
- instruction <@Parameter|@org.graalvm.compiler.nodes.ParameterNode>@ <|@ <|@
212
- f <@~|@floating>@ <|@
213
- tid i2 <|@
214
- result v1|DWORD <|@
215
- d <@d|@=== Debug Properties ===
216
- index: 1
217
- stamp: i32
218
- uncheckedStamp: [null]
219
- === Inputs ===
220
- === Succesors ===
221
- === Usages ===
222
- i4
223
- === Predecessor ===
224
- - >@ <|@
225
- instruction <@Parameter|@org.graalvm.compiler.nodes.ParameterNode>@ <|@ <|@
226
- f <@~|@floating>@ <|@
227
- tid i4 <|@
228
- result v2|DWORD <|@
229
- d <@d|@=== Debug Properties ===
230
- nodeSourcePosition: at JavaExamples.exampleLocalVariables(JavaExamples.java:69) [bci: 2]
231
- stamp: i32
232
- === Inputs ===
233
- x: i1
234
- y: i2
235
- === Succesors ===
236
- === Usages ===
237
- i7 i8
238
- === Predecessor ===
239
- - >@ <|@
240
- instruction <@+|@org.graalvm.compiler.nodes.calc.AddNode>@ x: i1 y: i2 <|@ <|@
241
- f <@~|@floating>@ <|@
242
- tid i6 <|@
243
- result int[1|0x1] <|@
244
- d <@d|@=== Debug Properties ===
245
- isDefaultStable: false
246
- nodeSourcePosition: at JavaExamples.exampleLocalVariables(JavaExamples.java:70) [bci: 6]
247
- rawvalue: 1
248
- stableDimension: 0
249
- stamp: i32 [1] ⇊0000000000000001 ⇈0000000000000001
250
- stampKind: i32
251
- value: int[1|0x1]
252
- === Inputs ===
253
- === Succesors ===
254
- === Usages ===
255
- i7
256
- === Predecessor ===
257
- - >@ <|@
258
- instruction <@Constant|@org.graalvm.compiler.nodes.ConstantNode>@ <|@ <|@
259
- f <@~|@floating>@ <|@
260
- tid i7 <|@
261
- result v3|DWORD <|@
262
- d <@d|@=== Debug Properties ===
263
- nodeSourcePosition: at JavaExamples.exampleLocalVariables(JavaExamples.java:70) [bci: 6]
264
- stamp: i32 [-2147483648 - 2147483646] ⇈00000000fffffffe
265
- === Inputs ===
266
- x: i4
267
- y: i6
268
- === Succesors ===
269
- === Usages ===
270
- i8
271
- === Predecessor ===
272
- - >@ <|@
273
- instruction <@<<|@org.graalvm.compiler.nodes.calc.LeftShiftNode>@ x: i4 y: i6 <|@ <|@
274
- f <@~|@floating>@ <|@
275
- tid i8 <|@
276
- result v4|DWORD <|@
277
- d <@d|@=== Debug Properties ===
278
- nodeSourcePosition: at JavaExamples.exampleLocalVariables(JavaExamples.java:70) [bci: 8]
279
- stamp: i32
280
- === Inputs ===
281
- x: i4
282
- y: i7
283
- === Succesors ===
284
- === Usages ===
285
- v9
286
- === Predecessor ===
287
- - >@ <|@
288
- instruction <@+|@org.graalvm.compiler.nodes.calc.AddNode>@ x: i4 y: i7 <|@ <|@
289
- f <@*|@fixed>@ <|@
290
- tid v9 <|@
291
- d <@d|@=== Debug Properties ===
292
- nodeSourcePosition: at JavaExamples.exampleLocalVariables(JavaExamples.java:70) [bci: 9]
293
- stamp: void
294
- === Inputs ===
295
- result: i8
296
- memoryMap: -
297
- === Succesors ===
298
- === Usages ===
299
- === Predecessor ===
300
- v0 >@ <|@
301
- instruction <@Return|@org.graalvm.compiler.nodes.ReturnNode>@ result: i8 memoryMap: - <|@ <|@
302
- end_IR
303
- begin_IR
304
- LIR
305
- nr -1 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
306
- nr -1 <|@ instruction v5|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
307
- nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13cec59f0 slotKind: QWORD <|@ <|@
308
- nr -1 <|@ instruction v0|DWORD = MOVE rsi|DWORD moveKind: DWORD <|@ <|@
309
- nr -1 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
310
- nr -1 <|@ instruction v2|DWORD = ADD (x: v0|DWORD, y: v1|DWORD) size: DWORD <|@ <|@
311
- nr -1 <|@ instruction v3|DWORD = SHL v2|DWORD size: DWORD <|@ <|@
312
- nr -1 <|@ instruction v4|DWORD = ADD (x: v3|DWORD, y: v2|DWORD) size: DWORD <|@ <|@
313
- nr -1 <|@ instruction rax|DWORD = MOVE v4|DWORD moveKind: DWORD <|@ <|@
314
- nr -1 <|@ instruction RETURN (savedRbp: v5|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@113b187d8 <|@ <|@
315
- end_IR
316
- end_block
317
- end_cfg
318
- begin_cfg
319
- name "After ConstantLoadOptimization"
320
- begin_block
321
- name "B0"
322
- from_bci -1
323
- to_bci -1
324
- predecessors
325
- successors
326
- xhandlers
327
- flags
328
- probability 4607182418800017408
329
- begin_IR
330
- LIR
331
- nr -1 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
332
- nr -1 <|@ instruction v5|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
333
- nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13cec59f0 slotKind: QWORD <|@ <|@
334
- nr -1 <|@ instruction v0|DWORD = MOVE rsi|DWORD moveKind: DWORD <|@ <|@
335
- nr -1 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
336
- nr -1 <|@ instruction v2|DWORD = ADD (x: v0|DWORD, y: v1|DWORD) size: DWORD <|@ <|@
337
- nr -1 <|@ instruction v3|DWORD = SHL v2|DWORD size: DWORD <|@ <|@
338
- nr -1 <|@ instruction v4|DWORD = ADD (x: v3|DWORD, y: v2|DWORD) size: DWORD <|@ <|@
339
- nr -1 <|@ instruction rax|DWORD = MOVE v4|DWORD moveKind: DWORD <|@ <|@
340
- nr -1 <|@ instruction RETURN (savedRbp: v5|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@113b187d8 <|@ <|@
341
- end_IR
342
- end_block
343
- end_cfg
344
- begin_bytecodes
345
- 0: iload_0
346
- 1: iload_1
347
- 2: iadd
348
- 3: istore_2
349
- 4: iload_2
350
- 5: iconst_2
351
- 6: imul
352
- 7: iload_2
353
- 8: iadd
354
- 9: ireturn
355
- <|@
356
- end_bytecodes
357
- begin_cfg
358
- name "After SaveCalleeSaveRegisters"
359
- begin_block
360
- name "B0"
361
- from_bci -1
362
- to_bci -1
363
- predecessors
364
- successors
365
- xhandlers
366
- flags
367
- probability 4607182418800017408
368
- begin_IR
369
- LIR
370
- nr -1 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
371
- nr -1 <|@ instruction v5|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
372
- nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13cec59f0 slotKind: QWORD <|@ <|@
373
- nr -1 <|@ instruction v0|DWORD = MOVE rsi|DWORD moveKind: DWORD <|@ <|@
374
- nr -1 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
375
- nr -1 <|@ instruction v2|DWORD = ADD (x: v0|DWORD, y: v1|DWORD) size: DWORD <|@ <|@
376
- nr -1 <|@ instruction v3|DWORD = SHL v2|DWORD size: DWORD <|@ <|@
377
- nr -1 <|@ instruction v4|DWORD = ADD (x: v3|DWORD, y: v2|DWORD) size: DWORD <|@ <|@
378
- nr -1 <|@ instruction rax|DWORD = MOVE v4|DWORD moveKind: DWORD <|@ <|@
379
- nr -1 <|@ instruction RETURN (savedRbp: v5|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@113b187d8 <|@ <|@
380
- end_IR
381
- end_block
382
- end_cfg
383
- begin_bytecodes
384
- 0: iload_0
385
- 1: iload_1
386
- 2: iadd
387
- 3: istore_2
388
- 4: iload_2
389
- 5: iconst_2
390
- 6: imul
391
- 7: iload_2
392
- 8: iadd
393
- 9: 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 v5|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
411
- nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13cec59f0 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 v2|DWORD = ADD (x: v0|DWORD, y: v1|DWORD) size: DWORD <|@ <|@
415
- nr -1 <|@ instruction v3|DWORD = SHL v2|DWORD size: DWORD <|@ <|@
416
- nr -1 <|@ instruction v4|DWORD = ADD (x: v3|DWORD, y: v2|DWORD) size: DWORD <|@ <|@
417
- nr -1 <|@ instruction rax|DWORD = MOVE v4|DWORD moveKind: DWORD <|@ <|@
418
- nr -1 <|@ instruction RETURN (savedRbp: v5|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@113b187d8 <|@ <|@
419
- end_IR
420
- end_block
421
- end_cfg
422
- begin_bytecodes
423
- 0: iload_0
424
- 1: iload_1
425
- 2: iadd
426
- 3: istore_2
427
- 4: iload_2
428
- 5: iconst_2
429
- 6: imul
430
- 7: iload_2
431
- 8: iadd
432
- 9: ireturn
433
- <|@
434
- end_bytecodes
435
- begin_cfg
436
- name "After MarkBasePointers"
437
- begin_block
438
- name "B0"
439
- from_bci -1
440
- to_bci -1
441
- predecessors
442
- successors
443
- xhandlers
444
- flags
445
- probability 4607182418800017408
446
- begin_IR
447
- LIR
448
- nr -1 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
449
- nr -1 <|@ instruction v5|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
450
- nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13cec59f0 slotKind: QWORD <|@ <|@
451
- nr -1 <|@ instruction v0|DWORD = MOVE rsi|DWORD moveKind: DWORD <|@ <|@
452
- nr -1 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
453
- nr -1 <|@ instruction v2|DWORD = ADD (x: v0|DWORD, y: v1|DWORD) size: DWORD <|@ <|@
454
- nr -1 <|@ instruction v3|DWORD = SHL v2|DWORD size: DWORD <|@ <|@
455
- nr -1 <|@ instruction v4|DWORD = ADD (x: v3|DWORD, y: v2|DWORD) size: DWORD <|@ <|@
456
- nr -1 <|@ instruction rax|DWORD = MOVE v4|DWORD moveKind: DWORD <|@ <|@
457
- nr -1 <|@ instruction RETURN (savedRbp: v5|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@113b187d8 <|@ <|@
458
- end_IR
459
- end_block
460
- end_cfg
461
- begin_bytecodes
462
- 0: iload_0
463
- 1: iload_1
464
- 2: iadd
465
- 3: istore_2
466
- 4: iload_2
467
- 5: iconst_2
468
- 6: imul
469
- 7: iload_2
470
- 8: iadd
471
- 9: ireturn
472
- <|@
473
- end_bytecodes
474
- begin_cfg
475
- name "Before register allocation"
476
- begin_block
477
- name "B0"
478
- from_bci -1
479
- to_bci -1
480
- predecessors
481
- successors
482
- xhandlers
483
- flags
484
- probability 4607182418800017408
485
- begin_IR
486
- LIR
487
- nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
488
- nr 2 <|@ instruction v5|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
489
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13cec59f0 slotKind: QWORD <|@ <|@
490
- nr 6 <|@ instruction v0|DWORD = MOVE rsi|DWORD moveKind: DWORD <|@ <|@
491
- nr 8 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
492
- nr 10 <|@ instruction v2|DWORD = ADD (x: v0|DWORD, y: v1|DWORD) size: DWORD <|@ <|@
493
- nr 12 <|@ instruction v3|DWORD = SHL v2|DWORD size: DWORD <|@ <|@
494
- nr 14 <|@ instruction v4|DWORD = ADD (x: v3|DWORD, y: v2|DWORD) size: DWORD <|@ <|@
495
- nr 16 <|@ instruction rax|DWORD = MOVE v4|DWORD moveKind: DWORD <|@ <|@
496
- nr 18 <|@ instruction RETURN (savedRbp: v5|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@113b187d8 <|@ <|@
497
- end_IR
498
- end_block
499
- end_cfg
500
- begin_bytecodes
501
- 0: iload_0
502
- 1: iload_1
503
- 2: iadd
504
- 3: istore_2
505
- 4: iload_2
506
- 5: iconst_2
507
- 6: imul
508
- 7: iload_2
509
- 8: iadd
510
- 9: ireturn
511
- <|@
512
- end_bytecodes
513
- begin_cfg
514
- name "After SSALinearScanLifetimeAnalysis"
515
- begin_block
516
- name "B0"
517
- from_bci -1
518
- to_bci -1
519
- predecessors
520
- successors
521
- xhandlers
522
- flags
523
- probability 4607182418800017408
524
- begin_IR
525
- LIR
526
- nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
527
- nr 2 <|@ instruction v5|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
528
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13cec59f0 slotKind: QWORD <|@ <|@
529
- nr 6 <|@ instruction v0|DWORD = MOVE rsi|DWORD moveKind: DWORD <|@ <|@
530
- nr 8 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
531
- nr 10 <|@ instruction v2|DWORD = ADD (x: v0|DWORD, y: v1|DWORD) size: DWORD <|@ <|@
532
- nr 12 <|@ instruction v3|DWORD = SHL v2|DWORD size: DWORD <|@ <|@
533
- nr 14 <|@ instruction v4|DWORD = ADD (x: v3|DWORD, y: v2|DWORD) size: DWORD <|@ <|@
534
- nr 16 <|@ instruction rax|DWORD = MOVE v4|DWORD moveKind: DWORD <|@ <|@
535
- nr 18 <|@ instruction RETURN (savedRbp: v5|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@113b187d8 <|@ <|@
536
- end_IR
537
- end_block
538
- end_cfg
539
- begin_bytecodes
540
- 0: iload_0
541
- 1: iload_1
542
- 2: iadd
543
- 3: istore_2
544
- 4: iload_2
545
- 5: iconst_2
546
- 6: imul
547
- 7: iload_2
548
- 8: iadd
549
- 9: ireturn
550
- <|@
551
- end_bytecodes
552
- begin_intervals
553
- name "Before register allocation"
554
- rax|d fixed "[rax|d]" rax|d v4|d [0, 1[[16, 18[ "NoSpillStore"
555
- rdx|d fixed "[rdx|d]" rdx|d -1 [0, 8[ "NoSpillStore"
556
- rbp|q fixed "[rbp|q]" rbp|q -1 [0, 2[ "NoSpillStore"
557
- rsi|d fixed "[rsi|d]" rsi|d -1 [0, 6[ "NoSpillStore"
558
- v0|d DWORD "[v0|d]" v0|d rsi|d [6, 10[6 MustHaveRegister 10 ShouldHaveRegister "NoSpillStore"
559
- v1|d DWORD "[v1|d]" v1|d rdx|d [8, 10[8 MustHaveRegister 10 ShouldHaveRegister "NoSpillStore"
560
- v2|d DWORD "[v2|d]" v2|d v0|d [10, 14[10 MustHaveRegister 12 ShouldHaveRegister 14 ShouldHaveRegister "NoSpillStore"
561
- v3|d DWORD "[v3|d]" v3|d v2|d [12, 14[12 MustHaveRegister 14 ShouldHaveRegister "NoSpillStore"
562
- v4|d DWORD "[v4|d]" v4|d v3|d [14, 16[14 MustHaveRegister 16 ShouldHaveRegister "NoSpillStore"
563
- v5|q QWORD "[v5|q]" v5|q rbp|q [2, 18[2 MustHaveRegister 18 ShouldHaveRegister "NoSpillStore"
564
- end_intervals
565
- begin_intervals
566
- name "After register allocation"
567
- rax|d fixed "[rax|d]" rax|d v4|d [0, 1[[16, 18[ "NoSpillStore"
568
- rdx|d fixed "[rdx|d]" rdx|d -1 [0, 8[ "NoSpillStore"
569
- rbp|q fixed "[rbp|q]" rbp|q -1 [0, 2[ "NoSpillStore"
570
- rsi|d fixed "[rsi|d]" rsi|d -1 [0, 6[ "NoSpillStore"
571
- v0|d DWORD "[rsi|d]" v0|d rsi|d [6, 10[6 MustHaveRegister 10 ShouldHaveRegister "NoSpillStore"
572
- v1|d DWORD "[rdx|d]" v1|d rdx|d [8, 10[8 MustHaveRegister 10 ShouldHaveRegister "NoSpillStore"
573
- v2|d DWORD "[rsi|d]" v2|d v0|d [10, 14[10 MustHaveRegister 12 ShouldHaveRegister 14 ShouldHaveRegister "NoSpillStore"
574
- v3|d DWORD "[rax|d]" v3|d v2|d [12, 14[12 MustHaveRegister 14 ShouldHaveRegister "NoSpillStore"
575
- v4|d DWORD "[rax|d]" v4|d v3|d [14, 16[14 MustHaveRegister 16 ShouldHaveRegister "NoSpillStore"
576
- v5|q QWORD "[rbp|q]" v5|q rbp|q [2, 18[2 MustHaveRegister 18 ShouldHaveRegister "NoSpillStore"
577
- end_intervals
578
- begin_cfg
579
- name "After LinearScanRegisterAllocation"
580
- begin_block
581
- name "B0"
582
- from_bci -1
583
- to_bci -1
584
- predecessors
585
- successors
586
- xhandlers
587
- flags
588
- probability 4607182418800017408
589
- begin_IR
590
- LIR
591
- nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
592
- nr 2 <|@ instruction v5|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
593
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13cec59f0 slotKind: QWORD <|@ <|@
594
- nr 6 <|@ instruction v0|DWORD = MOVE rsi|DWORD moveKind: DWORD <|@ <|@
595
- nr 8 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
596
- nr 10 <|@ instruction v2|DWORD = ADD (x: v0|DWORD, y: v1|DWORD) size: DWORD <|@ <|@
597
- nr 12 <|@ instruction v3|DWORD = SHL v2|DWORD size: DWORD <|@ <|@
598
- nr 14 <|@ instruction v4|DWORD = ADD (x: v3|DWORD, y: v2|DWORD) size: DWORD <|@ <|@
599
- nr 16 <|@ instruction rax|DWORD = MOVE v4|DWORD moveKind: DWORD <|@ <|@
600
- nr 18 <|@ instruction RETURN (savedRbp: v5|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@113b187d8 <|@ <|@
601
- end_IR
602
- end_block
603
- end_cfg
604
- begin_bytecodes
605
- 0: iload_0
606
- 1: iload_1
607
- 2: iadd
608
- 3: istore_2
609
- 4: iload_2
610
- 5: iconst_2
611
- 6: imul
612
- 7: iload_2
613
- 8: iadd
614
- 9: ireturn
615
- <|@
616
- end_bytecodes
617
- begin_intervals
618
- name "After optimize spill position"
619
- rax|d fixed "[rax|d]" rax|d v4|d [0, 1[[16, 18[ "NoSpillStore"
620
- rdx|d fixed "[rdx|d]" rdx|d -1 [0, 8[ "NoSpillStore"
621
- rbp|q fixed "[rbp|q]" rbp|q -1 [0, 2[ "NoSpillStore"
622
- rsi|d fixed "[rsi|d]" rsi|d -1 [0, 6[ "NoSpillStore"
623
- v0|d DWORD "[rsi|d]" v0|d rsi|d [6, 10[6 MustHaveRegister 10 ShouldHaveRegister "NoSpillStore"
624
- v1|d DWORD "[rdx|d]" v1|d rdx|d [8, 10[8 MustHaveRegister 10 ShouldHaveRegister "NoSpillStore"
625
- v2|d DWORD "[rsi|d]" v2|d v0|d [10, 14[10 MustHaveRegister 12 ShouldHaveRegister 14 ShouldHaveRegister "NoSpillStore"
626
- v3|d DWORD "[rax|d]" v3|d v2|d [12, 14[12 MustHaveRegister 14 ShouldHaveRegister "NoSpillStore"
627
- v4|d DWORD "[rax|d]" v4|d v3|d [14, 16[14 MustHaveRegister 16 ShouldHaveRegister "NoSpillStore"
628
- v5|q QWORD "[rbp|q]" v5|q rbp|q [2, 18[2 MustHaveRegister 18 ShouldHaveRegister "NoSpillStore"
629
- end_intervals
630
- begin_cfg
631
- name "After LinearScanOptimizeSpillPosition"
632
- begin_block
633
- name "B0"
634
- from_bci -1
635
- to_bci -1
636
- predecessors
637
- successors
638
- xhandlers
639
- flags
640
- probability 4607182418800017408
641
- begin_IR
642
- LIR
643
- nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
644
- nr 2 <|@ instruction v5|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
645
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13cec59f0 slotKind: QWORD <|@ <|@
646
- nr 6 <|@ instruction v0|DWORD = MOVE rsi|DWORD moveKind: DWORD <|@ <|@
647
- nr 8 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
648
- nr 10 <|@ instruction v2|DWORD = ADD (x: v0|DWORD, y: v1|DWORD) size: DWORD <|@ <|@
649
- nr 12 <|@ instruction v3|DWORD = SHL v2|DWORD size: DWORD <|@ <|@
650
- nr 14 <|@ instruction v4|DWORD = ADD (x: v3|DWORD, y: v2|DWORD) size: DWORD <|@ <|@
651
- nr 16 <|@ instruction rax|DWORD = MOVE v4|DWORD moveKind: DWORD <|@ <|@
652
- nr 18 <|@ instruction RETURN (savedRbp: v5|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@113b187d8 <|@ <|@
653
- end_IR
654
- end_block
655
- end_cfg
656
- begin_bytecodes
657
- 0: iload_0
658
- 1: iload_1
659
- 2: iadd
660
- 3: istore_2
661
- 4: iload_2
662
- 5: iconst_2
663
- 6: imul
664
- 7: iload_2
665
- 8: iadd
666
- 9: ireturn
667
- <|@
668
- end_bytecodes
669
- begin_intervals
670
- name "After resolve data flow"
671
- rax|d fixed "[rax|d]" rax|d v4|d [0, 1[[16, 18[ "NoSpillStore"
672
- rdx|d fixed "[rdx|d]" rdx|d -1 [0, 8[ "NoSpillStore"
673
- rbp|q fixed "[rbp|q]" rbp|q -1 [0, 2[ "NoSpillStore"
674
- rsi|d fixed "[rsi|d]" rsi|d -1 [0, 6[ "NoSpillStore"
675
- v0|d DWORD "[rsi|d]" v0|d rsi|d [6, 10[6 MustHaveRegister 10 ShouldHaveRegister "NoSpillStore"
676
- v1|d DWORD "[rdx|d]" v1|d rdx|d [8, 10[8 MustHaveRegister 10 ShouldHaveRegister "NoSpillStore"
677
- v2|d DWORD "[rsi|d]" v2|d v0|d [10, 14[10 MustHaveRegister 12 ShouldHaveRegister 14 ShouldHaveRegister "NoSpillStore"
678
- v3|d DWORD "[rax|d]" v3|d v2|d [12, 14[12 MustHaveRegister 14 ShouldHaveRegister "NoSpillStore"
679
- v4|d DWORD "[rax|d]" v4|d v3|d [14, 16[14 MustHaveRegister 16 ShouldHaveRegister "NoSpillStore"
680
- v5|q QWORD "[rbp|q]" v5|q rbp|q [2, 18[2 MustHaveRegister 18 ShouldHaveRegister "NoSpillStore"
681
- end_intervals
682
- begin_cfg
683
- name "After SSALinearScanResolveDataFlow"
684
- begin_block
685
- name "B0"
686
- from_bci -1
687
- to_bci -1
688
- predecessors
689
- successors
690
- xhandlers
691
- flags
692
- probability 4607182418800017408
693
- begin_IR
694
- LIR
695
- nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
696
- nr 2 <|@ instruction v5|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
697
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13cec59f0 slotKind: QWORD <|@ <|@
698
- nr 6 <|@ instruction v0|DWORD = MOVE rsi|DWORD moveKind: DWORD <|@ <|@
699
- nr 8 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
700
- nr 10 <|@ instruction v2|DWORD = ADD (x: v0|DWORD, y: v1|DWORD) size: DWORD <|@ <|@
701
- nr 12 <|@ instruction v3|DWORD = SHL v2|DWORD size: DWORD <|@ <|@
702
- nr 14 <|@ instruction v4|DWORD = ADD (x: v3|DWORD, y: v2|DWORD) size: DWORD <|@ <|@
703
- nr 16 <|@ instruction rax|DWORD = MOVE v4|DWORD moveKind: DWORD <|@ <|@
704
- nr 18 <|@ instruction RETURN (savedRbp: v5|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@113b187d8 <|@ <|@
705
- end_IR
706
- end_block
707
- end_cfg
708
- begin_bytecodes
709
- 0: iload_0
710
- 1: iload_1
711
- 2: iadd
712
- 3: istore_2
713
- 4: iload_2
714
- 5: iconst_2
715
- 6: imul
716
- 7: iload_2
717
- 8: iadd
718
- 9: ireturn
719
- <|@
720
- end_bytecodes
721
- begin_cfg
722
- name "After SSALinearScanEliminateSpillMove"
723
- begin_block
724
- name "B0"
725
- from_bci -1
726
- to_bci -1
727
- predecessors
728
- successors
729
- xhandlers
730
- flags
731
- probability 4607182418800017408
732
- begin_IR
733
- LIR
734
- nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
735
- nr 2 <|@ instruction v5|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
736
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13cec59f0 slotKind: QWORD <|@ <|@
737
- nr 6 <|@ instruction v0|DWORD = MOVE rsi|DWORD moveKind: DWORD <|@ <|@
738
- nr 8 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
739
- nr 10 <|@ instruction v2|DWORD = ADD (x: v0|DWORD, y: v1|DWORD) size: DWORD <|@ <|@
740
- nr 12 <|@ instruction v3|DWORD = SHL v2|DWORD size: DWORD <|@ <|@
741
- nr 14 <|@ instruction v4|DWORD = ADD (x: v3|DWORD, y: v2|DWORD) size: DWORD <|@ <|@
742
- nr 16 <|@ instruction rax|DWORD = MOVE v4|DWORD moveKind: DWORD <|@ <|@
743
- nr 18 <|@ instruction RETURN (savedRbp: v5|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@113b187d8 <|@ <|@
744
- end_IR
745
- end_block
746
- end_cfg
747
- begin_bytecodes
748
- 0: iload_0
749
- 1: iload_1
750
- 2: iadd
751
- 3: istore_2
752
- 4: iload_2
753
- 5: iconst_2
754
- 6: imul
755
- 7: iload_2
756
- 8: iadd
757
- 9: ireturn
758
- <|@
759
- end_bytecodes
760
- begin_cfg
761
- name "After LinearScanAssignLocations"
762
- begin_block
763
- name "B0"
764
- from_bci -1
765
- to_bci -1
766
- predecessors
767
- successors
768
- xhandlers
769
- flags
770
- probability 4607182418800017408
771
- begin_IR
772
- LIR
773
- nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
774
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13cec59f0 slotKind: QWORD <|@ <|@
775
- nr 10 <|@ instruction rsi|DWORD = ADD (x: rsi|DWORD, y: rdx|DWORD) size: DWORD <|@ <|@
776
- nr 12 <|@ instruction rax|DWORD = SHL rsi|DWORD size: DWORD <|@ <|@
777
- nr 14 <|@ instruction rax|DWORD = ADD (x: rax|DWORD, y: rsi|DWORD) size: DWORD <|@ <|@
778
- nr 18 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@113b187d8 <|@ <|@
779
- end_IR
780
- end_block
781
- end_cfg
782
- begin_bytecodes
783
- 0: iload_0
784
- 1: iload_1
785
- 2: iadd
786
- 3: istore_2
787
- 4: iload_2
788
- 5: iconst_2
789
- 6: imul
790
- 7: iload_2
791
- 8: iadd
792
- 9: ireturn
793
- <|@
794
- end_bytecodes
795
- begin_cfg
796
- name "After LinearScan"
797
- begin_block
798
- name "B0"
799
- from_bci -1
800
- to_bci -1
801
- predecessors
802
- successors
803
- xhandlers
804
- flags
805
- probability 4607182418800017408
806
- begin_IR
807
- LIR
808
- nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
809
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13cec59f0 slotKind: QWORD <|@ <|@
810
- nr 10 <|@ instruction rsi|DWORD = ADD (x: rsi|DWORD, y: rdx|DWORD) size: DWORD <|@ <|@
811
- nr 12 <|@ instruction rax|DWORD = SHL rsi|DWORD size: DWORD <|@ <|@
812
- nr 14 <|@ instruction rax|DWORD = ADD (x: rax|DWORD, y: rsi|DWORD) size: DWORD <|@ <|@
813
- nr 18 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@113b187d8 <|@ <|@
814
- end_IR
815
- end_block
816
- end_cfg
817
- begin_bytecodes
818
- 0: iload_0
819
- 1: iload_1
820
- 2: iadd
821
- 3: istore_2
822
- 4: iload_2
823
- 5: iconst_2
824
- 6: imul
825
- 7: iload_2
826
- 8: iadd
827
- 9: ireturn
828
- <|@
829
- end_bytecodes
830
- begin_cfg
831
- name "After LSStackSlotAllocator"
832
- begin_block
833
- name "B0"
834
- from_bci -1
835
- to_bci -1
836
- predecessors
837
- successors
838
- xhandlers
839
- flags
840
- probability 4607182418800017408
841
- begin_IR
842
- LIR
843
- nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
844
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13cec59f0 slotKind: QWORD <|@ <|@
845
- nr 10 <|@ instruction rsi|DWORD = ADD (x: rsi|DWORD, y: rdx|DWORD) size: DWORD <|@ <|@
846
- nr 12 <|@ instruction rax|DWORD = SHL rsi|DWORD size: DWORD <|@ <|@
847
- nr 14 <|@ instruction rax|DWORD = ADD (x: rax|DWORD, y: rsi|DWORD) size: DWORD <|@ <|@
848
- nr 18 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@113b187d8 <|@ <|@
849
- end_IR
850
- end_block
851
- end_cfg
852
- begin_bytecodes
853
- 0: iload_0
854
- 1: iload_1
855
- 2: iadd
856
- 3: istore_2
857
- 4: iload_2
858
- 5: iconst_2
859
- 6: imul
860
- 7: iload_2
861
- 8: iadd
862
- 9: ireturn
863
- <|@
864
- end_bytecodes
865
- begin_cfg
866
- name "After LocationMarker"
867
- begin_block
868
- name "B0"
869
- from_bci -1
870
- to_bci -1
871
- predecessors
872
- successors
873
- xhandlers
874
- flags
875
- probability 4607182418800017408
876
- begin_IR
877
- LIR
878
- nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
879
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13cec59f0 slotKind: QWORD <|@ <|@
880
- nr 10 <|@ instruction rsi|DWORD = ADD (x: rsi|DWORD, y: rdx|DWORD) size: DWORD <|@ <|@
881
- nr 12 <|@ instruction rax|DWORD = SHL rsi|DWORD size: DWORD <|@ <|@
882
- nr 14 <|@ instruction rax|DWORD = ADD (x: rax|DWORD, y: rsi|DWORD) size: DWORD <|@ <|@
883
- nr 18 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@113b187d8 <|@ <|@
884
- end_IR
885
- end_block
886
- end_cfg
887
- begin_bytecodes
888
- 0: iload_0
889
- 1: iload_1
890
- 2: iadd
891
- 3: istore_2
892
- 4: iload_2
893
- 5: iconst_2
894
- 6: imul
895
- 7: iload_2
896
- 8: iadd
897
- 9: ireturn
898
- <|@
899
- end_bytecodes
900
- begin_cfg
901
- name "After AllocationStage"
902
- begin_block
903
- name "B0"
904
- from_bci -1
905
- to_bci -1
906
- predecessors
907
- successors
908
- xhandlers
909
- flags
910
- probability 4607182418800017408
911
- begin_IR
912
- LIR
913
- nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
914
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13cec59f0 slotKind: QWORD <|@ <|@
915
- nr 10 <|@ instruction rsi|DWORD = ADD (x: rsi|DWORD, y: rdx|DWORD) size: DWORD <|@ <|@
916
- nr 12 <|@ instruction rax|DWORD = SHL rsi|DWORD size: DWORD <|@ <|@
917
- nr 14 <|@ instruction rax|DWORD = ADD (x: rax|DWORD, y: rsi|DWORD) size: DWORD <|@ <|@
918
- nr 18 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@113b187d8 <|@ <|@
919
- end_IR
920
- end_block
921
- end_cfg
922
- begin_bytecodes
923
- 0: iload_0
924
- 1: iload_1
925
- 2: iadd
926
- 3: istore_2
927
- 4: iload_2
928
- 5: iconst_2
929
- 6: imul
930
- 7: iload_2
931
- 8: iadd
932
- 9: ireturn
933
- <|@
934
- end_bytecodes
935
- begin_cfg
936
- name "After EdgeMoveOptimizer"
937
- begin_block
938
- name "B0"
939
- from_bci -1
940
- to_bci -1
941
- predecessors
942
- successors
943
- xhandlers
944
- flags
945
- probability 4607182418800017408
946
- begin_IR
947
- LIR
948
- nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
949
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13cec59f0 slotKind: QWORD <|@ <|@
950
- nr 10 <|@ instruction rsi|DWORD = ADD (x: rsi|DWORD, y: rdx|DWORD) size: DWORD <|@ <|@
951
- nr 12 <|@ instruction rax|DWORD = SHL rsi|DWORD size: DWORD <|@ <|@
952
- nr 14 <|@ instruction rax|DWORD = ADD (x: rax|DWORD, y: rsi|DWORD) size: DWORD <|@ <|@
953
- nr 18 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@113b187d8 <|@ <|@
954
- end_IR
955
- end_block
956
- end_cfg
957
- begin_bytecodes
958
- 0: iload_0
959
- 1: iload_1
960
- 2: iadd
961
- 3: istore_2
962
- 4: iload_2
963
- 5: iconst_2
964
- 6: imul
965
- 7: iload_2
966
- 8: iadd
967
- 9: ireturn
968
- <|@
969
- end_bytecodes
970
- begin_cfg
971
- name "After ControlFlowOptimizer"
972
- begin_block
973
- name "B0"
974
- from_bci -1
975
- to_bci -1
976
- predecessors
977
- successors
978
- xhandlers
979
- flags
980
- probability 4607182418800017408
981
- begin_IR
982
- LIR
983
- nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
984
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13cec59f0 slotKind: QWORD <|@ <|@
985
- nr 10 <|@ instruction rsi|DWORD = ADD (x: rsi|DWORD, y: rdx|DWORD) size: DWORD <|@ <|@
986
- nr 12 <|@ instruction rax|DWORD = SHL rsi|DWORD size: DWORD <|@ <|@
987
- nr 14 <|@ instruction rax|DWORD = ADD (x: rax|DWORD, y: rsi|DWORD) size: DWORD <|@ <|@
988
- nr 18 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@113b187d8 <|@ <|@
989
- end_IR
990
- end_block
991
- end_cfg
992
- begin_bytecodes
993
- 0: iload_0
994
- 1: iload_1
995
- 2: iadd
996
- 3: istore_2
997
- 4: iload_2
998
- 5: iconst_2
999
- 6: imul
1000
- 7: iload_2
1001
- 8: iadd
1002
- 9: ireturn
1003
- <|@
1004
- end_bytecodes
1005
- begin_cfg
1006
- name "After RedundantMoveElimination"
1007
- begin_block
1008
- name "B0"
1009
- from_bci -1
1010
- to_bci -1
1011
- predecessors
1012
- successors
1013
- xhandlers
1014
- flags
1015
- probability 4607182418800017408
1016
- begin_IR
1017
- LIR
1018
- nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
1019
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13cec59f0 slotKind: QWORD <|@ <|@
1020
- nr 10 <|@ instruction rsi|DWORD = ADD (x: rsi|DWORD, y: rdx|DWORD) size: DWORD <|@ <|@
1021
- nr 12 <|@ instruction rax|DWORD = SHL rsi|DWORD size: DWORD <|@ <|@
1022
- nr 14 <|@ instruction rax|DWORD = ADD (x: rax|DWORD, y: rsi|DWORD) size: DWORD <|@ <|@
1023
- nr 18 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@113b187d8 <|@ <|@
1024
- end_IR
1025
- end_block
1026
- end_cfg
1027
- begin_bytecodes
1028
- 0: iload_0
1029
- 1: iload_1
1030
- 2: iadd
1031
- 3: istore_2
1032
- 4: iload_2
1033
- 5: iconst_2
1034
- 6: imul
1035
- 7: iload_2
1036
- 8: iadd
1037
- 9: ireturn
1038
- <|@
1039
- end_bytecodes
1040
- begin_cfg
1041
- name "After NullCheckOptimizer"
1042
- begin_block
1043
- name "B0"
1044
- from_bci -1
1045
- to_bci -1
1046
- predecessors
1047
- successors
1048
- xhandlers
1049
- flags
1050
- probability 4607182418800017408
1051
- begin_IR
1052
- LIR
1053
- nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
1054
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13cec59f0 slotKind: QWORD <|@ <|@
1055
- nr 10 <|@ instruction rsi|DWORD = ADD (x: rsi|DWORD, y: rdx|DWORD) size: DWORD <|@ <|@
1056
- nr 12 <|@ instruction rax|DWORD = SHL rsi|DWORD size: DWORD <|@ <|@
1057
- nr 14 <|@ instruction rax|DWORD = ADD (x: rax|DWORD, y: rsi|DWORD) size: DWORD <|@ <|@
1058
- nr 18 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@113b187d8 <|@ <|@
1059
- end_IR
1060
- end_block
1061
- end_cfg
1062
- begin_bytecodes
1063
- 0: iload_0
1064
- 1: iload_1
1065
- 2: iadd
1066
- 3: istore_2
1067
- 4: iload_2
1068
- 5: iconst_2
1069
- 6: imul
1070
- 7: iload_2
1071
- 8: iadd
1072
- 9: ireturn
1073
- <|@
1074
- end_bytecodes
1075
- begin_cfg
1076
- name "After StackMoveOptimization"
1077
- begin_block
1078
- name "B0"
1079
- from_bci -1
1080
- to_bci -1
1081
- predecessors
1082
- successors
1083
- xhandlers
1084
- flags
1085
- probability 4607182418800017408
1086
- begin_IR
1087
- LIR
1088
- nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
1089
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13cec59f0 slotKind: QWORD <|@ <|@
1090
- nr 10 <|@ instruction rsi|DWORD = ADD (x: rsi|DWORD, y: rdx|DWORD) size: DWORD <|@ <|@
1091
- nr 12 <|@ instruction rax|DWORD = SHL rsi|DWORD size: DWORD <|@ <|@
1092
- nr 14 <|@ instruction rax|DWORD = ADD (x: rax|DWORD, y: rsi|DWORD) size: DWORD <|@ <|@
1093
- nr 18 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@113b187d8 <|@ <|@
1094
- end_IR
1095
- end_block
1096
- end_cfg
1097
- begin_bytecodes
1098
- 0: iload_0
1099
- 1: iload_1
1100
- 2: iadd
1101
- 3: istore_2
1102
- 4: iload_2
1103
- 5: iconst_2
1104
- 6: imul
1105
- 7: iload_2
1106
- 8: iadd
1107
- 9: ireturn
1108
- <|@
1109
- end_bytecodes
1110
- begin_cfg
1111
- name "After PostAllocationOptimizationStage"
1112
- begin_block
1113
- name "B0"
1114
- from_bci -1
1115
- to_bci -1
1116
- predecessors
1117
- successors
1118
- xhandlers
1119
- flags
1120
- probability 4607182418800017408
1121
- begin_IR
1122
- LIR
1123
- nr 0 <|@ instruction [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
1124
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13cec59f0 slotKind: QWORD <|@ <|@
1125
- nr 10 <|@ instruction rsi|DWORD = ADD (x: rsi|DWORD, y: rdx|DWORD) size: DWORD <|@ <|@
1126
- nr 12 <|@ instruction rax|DWORD = SHL rsi|DWORD size: DWORD <|@ <|@
1127
- nr 14 <|@ instruction rax|DWORD = ADD (x: rax|DWORD, y: rsi|DWORD) size: DWORD <|@ <|@
1128
- nr 18 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@113b187d8 <|@ <|@
1129
- end_IR
1130
- end_block
1131
- end_cfg
1132
- begin_bytecodes
1133
- 0: iload_0
1134
- 1: iload_1
1135
- 2: iadd
1136
- 3: istore_2
1137
- 4: iload_2
1138
- 5: iconst_2
1139
- 6: imul
1140
- 7: iload_2
1141
- 8: iadd
1142
- 9: ireturn
1143
- <|@
1144
- end_bytecodes
1145
- begin_cfg
1146
- name "After code generation"
1147
- end_cfg
1148
- begin_nmethod
1149
- <<<HexCodeFile
1150
- Platform AMD64 64 <||@
1151
- HexCode 0 0f1f44000003f28bc6d1e003c6850500000000c5f877c3e80000000090e80000000090 <||@
1152
- Comment 0 3 <||@
1153
- Comment 0 1 <||@
1154
- Comment 5 block B0 null <||@
1155
- Comment 5 0 [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <||@
1156
- Comment 5 4 [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13cec59f0 slotKind: QWORD <||@
1157
- Comment 5 10 rsi|DWORD = ADD (x: rsi|DWORD, y: rdx|DWORD) size: DWORD <||@
1158
- Comment 7 12 rax|DWORD = SHL rsi|DWORD size: DWORD <||@
1159
- Comment 11 14 rax|DWORD = ADD (x: rax|DWORD, y: rsi|DWORD) size: DWORD <||@
1160
- Comment 13 18 RETURN (savedRbp: rbp|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@113b187d8 <||@
1161
- Comment 13 12 <||@
1162
- Comment 23 {Stub<ExceptionHandlerStub.exceptionHandler>@0x118dc28e0: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} <||@
1163
- Comment 23 4 <||@
1164
- Comment 29 {Field[name=CompilerToVM::Data::SharedRuntime_deopt_blob_unpack, type=address, offset=0, address=0x10b6bc128, value=4710744640]:0x118c84240} <||@
1165
- Comment 29 5 <||@
1166
- HexCodeFile>>> <|@
1167
- end_nmethod
1168
- begin_compilation
1169
- name " HotSpotCompilation-112[JavaExamples.exampleLocalVariables(int, int)]"
1170
- method "HotSpotCompilation-112[JavaExamples.exampleLocalVariables(int, int)]"
1171
- date 1583713938494
1172
- end_compilation
1173
- begin_cfg
1174
- name "After code installation"
1175
- end_cfg
1176
- begin_nmethod
1177
- <<<HexCodeFile
1178
- Platform AMD64 64 <||@
1179
- HexCode 118dcc6a0 0f1f44000003f28bc6d1e003c6850553f982f0c5f877c3e82462ffff90e87e7bebff90f4f4f4f4f4 <||@
1180
- Comment 0 3 <||@
1181
- Comment 0 1 <||@
1182
- Comment 5 block B0 null <||@
1183
- Comment 5 0 [rsi|DWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <||@
1184
- Comment 5 4 [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13cec59f0 slotKind: QWORD <||@
1185
- Comment 5 10 rsi|DWORD = ADD (x: rsi|DWORD, y: rdx|DWORD) size: DWORD <||@
1186
- Comment 7 12 rax|DWORD = SHL rsi|DWORD size: DWORD <||@
1187
- Comment 11 14 rax|DWORD = ADD (x: rax|DWORD, y: rsi|DWORD) size: DWORD <||@
1188
- Comment 13 18 RETURN (savedRbp: rbp|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@113b187d8 <||@
1189
- Comment 13 12 <||@
1190
- Comment 23 {Stub<ExceptionHandlerStub.exceptionHandler>@0x118dc28e0: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} <||@
1191
- Comment 23 4 <||@
1192
- Comment 29 {Field[name=CompilerToVM::Data::SharedRuntime_deopt_blob_unpack, type=address, offset=0, address=0x10b6bc128, value=4710744640]:0x118c84240} <||@
1193
- Comment 29 5 <||@
1194
- HexCodeFile>>> <|@
1195
- end_nmethod