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
Binary file
@@ -1,1435 +0,0 @@
1
- begin_compilation
2
- name " HotSpotCompilation-349[JavaExamples.exampleSimpleCall(JavaExamples$ExampleObject, int)]"
3
- method "HotSpotCompilation-349[JavaExamples.exampleSimpleCall(JavaExamples$ExampleObject, int)]"
4
- date 1583364091813
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: v18
28
- === Usages ===
29
- === Predecessor ===
30
- - >@ <|@
31
- instruction <@StartNode|@org.graalvm.compiler.nodes.StartNode>@ stateAfter: - #next: v18 <|@ <|@
32
- f <@~|@floating>@ <|@
33
- tid a17 <|@
34
- d <@d|@=== Debug Properties ===
35
- isDefaultStable: false
36
- rawvalue: null
37
- stableDimension: 0
38
- stamp: a - NULL
39
- stampKind: a -
40
- value: Object[null]
41
- === Inputs ===
42
- === Succesors ===
43
- === Usages ===
44
- ?3
45
- === Predecessor ===
46
- - >@ <|@
47
- instruction <@Constant|@org.graalvm.compiler.nodes.ConstantNode>@ <|@ <|@
48
- f <@~|@floating>@ <|@
49
- tid i2 <|@
50
- d <@d|@=== Debug Properties ===
51
- index: 1
52
- stamp: i32
53
- uncheckedStamp: [null]
54
- === Inputs ===
55
- === Succesors ===
56
- === Usages ===
57
- ?3 v11
58
- === Predecessor ===
59
- - >@ <|@
60
- instruction <@Parameter|@org.graalvm.compiler.nodes.ParameterNode>@ <|@ <|@
61
- tid ?3 <|@
62
- d <@d|@=== Debug Properties ===
63
- bci: 0
64
- code: ResolvedJavaMethodBytecode<JavaExamples.exampleSimpleCall(JavaExamples$ExampleObject, int)>
65
- duringCall: false
66
- localsSize: 2
67
- locksSize: 0
68
- rethrowException: false
69
- sourceFile: JavaExamples.java
70
- sourceLine: 104
71
- stackSize: 0
72
- === Inputs ===
73
- outerFrameState: -
74
- values: a17 i2
75
- === Succesors ===
76
- === Usages ===
77
- v18
78
- === Predecessor ===
79
- - >@ <|@
80
- instruction <@FrameState|@org.graalvm.compiler.nodes.FrameState>@ outerFrameState: - values: a17 i2 <|@ <|@
81
- f <@~|@floating>@ <|@
82
- tid a1 <|@
83
- d <@d|@=== Debug Properties ===
84
- index: 0
85
- stamp: a# LJavaExamples$ExampleObject;
86
- uncheckedStamp: [null]
87
- === Inputs ===
88
- === Succesors ===
89
- === Usages ===
90
- v18 v11
91
- === Predecessor ===
92
- - >@ <|@
93
- instruction <@Parameter|@org.graalvm.compiler.nodes.ParameterNode>@ <|@ <|@
94
- f <@#|@fixed with next>@ <|@
95
- tid v18 <|@
96
- d <@d|@=== Debug Properties ===
97
- stamp: void
98
- === Inputs ===
99
- stateBefore: ?3
100
- object: a1
101
- === Succesors ===
102
- next: i5
103
- === Usages ===
104
- === Predecessor ===
105
- v0 >@ <|@
106
- instruction <@NullCheck|@org.graalvm.compiler.nodes.extended.NullCheckNode>@ stateBefore: ?3 object: a1 #next: i5 <|@ <|@
107
- tid v11 <|@
108
- d <@d|@=== Debug Properties ===
109
- callType: JavaCall
110
- invokeKind: Special
111
- nodeSourcePosition: at JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2]
112
- returnStamp: i32
113
- signature: [Ljdk.vm.ci.meta.JavaType;@13e6c9308
114
- stamp: void
115
- targetMethod: HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)>
116
- === Inputs ===
117
- arguments: a1 i2
118
- === Succesors ===
119
- === Usages ===
120
- i5
121
- === Predecessor ===
122
- - >@ <|@
123
- instruction <@HotSpotDirectCallTarget|@org.graalvm.compiler.hotspot.nodes.HotSpotDirectCallTargetNode>@ arguments: a1 i2 <|@ <|@
124
- tid ?16 <|@
125
- d <@d|@=== Debug Properties ===
126
- bci: 2
127
- code: ResolvedJavaMethodBytecode<JavaExamples.exampleSimpleCall(JavaExamples$ExampleObject, int)>
128
- duringCall: true
129
- localsSize: 2
130
- locksSize: 0
131
- rethrowException: false
132
- sourceFile: JavaExamples.java
133
- sourceLine: 104
134
- stackSize: 0
135
- === Inputs ===
136
- outerFrameState: -
137
- values: - -
138
- === Succesors ===
139
- === Usages ===
140
- i5
141
- === Predecessor ===
142
- - >@ <|@
143
- instruction <@FrameState|@org.graalvm.compiler.nodes.FrameState>@ outerFrameState: - values: - - <|@ <|@
144
- f <@#|@fixed with next>@ <|@
145
- tid i5 <|@
146
- d <@d|@=== Debug Properties ===
147
- bci: 2
148
- identity: ANY_LOCATION
149
- nodeSourcePosition: at JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2]
150
- polymorphic: false
151
- stamp: i32
152
- targetMethod: Direct#JavaExamples$ExampleObject.instanceCall
153
- useForInlining: true
154
- === Inputs ===
155
- stateAfter: -
156
- classInit: -
157
- callTarget: v11
158
- stateDuring: ?16
159
- === Succesors ===
160
- next: v7
161
- === Usages ===
162
- v7
163
- === Predecessor ===
164
- v18 >@ <|@
165
- instruction <@Invoke|@org.graalvm.compiler.nodes.InvokeNode>@ stateAfter: - classInit: - callTarget: v11 stateDuring: ?16 #next: v7 <|@ <|@
166
- f <@*|@fixed>@ <|@
167
- tid v7 <|@
168
- d <@d|@=== Debug Properties ===
169
- nodeSourcePosition: at JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 5]
170
- stamp: void
171
- === Inputs ===
172
- result: i5
173
- memoryMap: -
174
- === Succesors ===
175
- === Usages ===
176
- === Predecessor ===
177
- i5 >@ <|@
178
- instruction <@Return|@org.graalvm.compiler.nodes.ReturnNode>@ result: i5 memoryMap: - <|@ <|@
179
- end_IR
180
- end_block
181
- end_cfg
182
- begin_cfg
183
- name "After LIRGeneration"
184
- begin_block
185
- name "B0"
186
- from_bci -1
187
- to_bci -1
188
- predecessors
189
- successors
190
- xhandlers
191
- flags
192
- probability 4607182418800017408
193
- begin_IR
194
- LIR
195
- nr -1 <|@ instruction [rsi|QWORD[.], rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
196
- nr -1 <|@ instruction stack:16|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
197
- nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13f368da8 slotKind: QWORD <|@ <|@
198
- nr -1 <|@ instruction v0|QWORD[.] = MOVE rsi|QWORD[.] moveKind: QWORD <|@ <|@
199
- nr -1 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
200
- nr -1 <|@ st <@st|@JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 0]
201
- locals: Object[null] v1|DWORD
202
- >@ <|@ instruction NULLCHECK [v0|QWORD[.]] state [bci:0] <|@ <|@
203
- nr -1 <|@ instruction rsi|QWORD[.] = MOVE v0|QWORD[.] moveKind: QWORD <|@ <|@
204
- nr -1 <|@ instruction rdx|DWORD = MOVE v1|DWORD moveKind: DWORD <|@ <|@
205
- nr -1 <|@ st <@st|@JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2]
206
- locals: - -
207
- >@ <|@ instruction rax|DWORD = CALL_DIRECT [rsi|QWORD[.], rdx|DWORD] [] callTarget: HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)> invokeKind: Special config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 state [bci:2] <|@ <|@
208
- nr -1 <|@ instruction v2|DWORD = MOVE rax|DWORD moveKind: DWORD <|@ <|@
209
- nr -1 <|@ instruction rax|DWORD = MOVE v2|DWORD moveKind: DWORD <|@ <|@
210
- nr -1 <|@ instruction RETURN (savedRbp: stack:16|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
211
- end_IR
212
- end_block
213
- end_cfg
214
- begin_bytecodes
215
- 0: aload_0
216
- 1: iload_1
217
- 2: invokevirtual #50 // JavaExamples$ExampleObject.instanceCall:(int)int
218
- 5: ireturn
219
- <|@
220
- end_bytecodes
221
- begin_cfg
222
- name "After LIR generation"
223
- begin_block
224
- name "B0"
225
- from_bci -1
226
- to_bci -1
227
- predecessors
228
- successors
229
- xhandlers
230
- flags
231
- probability 4607182418800017408
232
- begin_IR
233
- HIR
234
- f <@#|@fixed with next>@ <|@
235
- tid v0 <|@
236
- d <@d|@=== Debug Properties ===
237
- stamp: void
238
- withSpeculationFence: false
239
- === Inputs ===
240
- stateAfter: -
241
- === Succesors ===
242
- next: v18
243
- === Usages ===
244
- === Predecessor ===
245
- - >@ <|@
246
- instruction <@StartNode|@org.graalvm.compiler.nodes.StartNode>@ stateAfter: - #next: v18 <|@ <|@
247
- f <@~|@floating>@ <|@
248
- tid a17 <|@
249
- result Object[null] <|@
250
- d <@d|@=== Debug Properties ===
251
- isDefaultStable: false
252
- rawvalue: null
253
- stableDimension: 0
254
- stamp: a - NULL
255
- stampKind: a -
256
- value: Object[null]
257
- === Inputs ===
258
- === Succesors ===
259
- === Usages ===
260
- ?3
261
- === Predecessor ===
262
- - >@ <|@
263
- instruction <@Constant|@org.graalvm.compiler.nodes.ConstantNode>@ <|@ <|@
264
- f <@~|@floating>@ <|@
265
- tid i2 <|@
266
- result v1|DWORD <|@
267
- d <@d|@=== Debug Properties ===
268
- index: 1
269
- stamp: i32
270
- uncheckedStamp: [null]
271
- === Inputs ===
272
- === Succesors ===
273
- === Usages ===
274
- ?3 v11
275
- === Predecessor ===
276
- - >@ <|@
277
- instruction <@Parameter|@org.graalvm.compiler.nodes.ParameterNode>@ <|@ <|@
278
- tid ?3 <|@
279
- d <@d|@=== Debug Properties ===
280
- bci: 0
281
- code: ResolvedJavaMethodBytecode<JavaExamples.exampleSimpleCall(JavaExamples$ExampleObject, int)>
282
- duringCall: false
283
- localsSize: 2
284
- locksSize: 0
285
- rethrowException: false
286
- sourceFile: JavaExamples.java
287
- sourceLine: 104
288
- stackSize: 0
289
- === Inputs ===
290
- outerFrameState: -
291
- values: a17 i2
292
- === Succesors ===
293
- === Usages ===
294
- v18
295
- === Predecessor ===
296
- - >@ <|@
297
- instruction <@FrameState|@org.graalvm.compiler.nodes.FrameState>@ outerFrameState: - values: a17 i2 <|@ <|@
298
- f <@~|@floating>@ <|@
299
- tid a1 <|@
300
- result v0|QWORD[.] <|@
301
- d <@d|@=== Debug Properties ===
302
- index: 0
303
- stamp: a# LJavaExamples$ExampleObject;
304
- uncheckedStamp: [null]
305
- === Inputs ===
306
- === Succesors ===
307
- === Usages ===
308
- v18 v11
309
- === Predecessor ===
310
- - >@ <|@
311
- instruction <@Parameter|@org.graalvm.compiler.nodes.ParameterNode>@ <|@ <|@
312
- f <@#|@fixed with next>@ <|@
313
- tid v18 <|@
314
- d <@d|@=== Debug Properties ===
315
- stamp: void
316
- === Inputs ===
317
- stateBefore: ?3
318
- object: a1
319
- === Succesors ===
320
- next: i5
321
- === Usages ===
322
- === Predecessor ===
323
- v0 >@ <|@
324
- instruction <@NullCheck|@org.graalvm.compiler.nodes.extended.NullCheckNode>@ stateBefore: ?3 object: a1 #next: i5 <|@ <|@
325
- tid v11 <|@
326
- d <@d|@=== Debug Properties ===
327
- callType: JavaCall
328
- invokeKind: Special
329
- nodeSourcePosition: at JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2]
330
- returnStamp: i32
331
- signature: [Ljdk.vm.ci.meta.JavaType;@13e6c9308
332
- stamp: void
333
- targetMethod: HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)>
334
- === Inputs ===
335
- arguments: a1 i2
336
- === Succesors ===
337
- === Usages ===
338
- i5
339
- === Predecessor ===
340
- - >@ <|@
341
- instruction <@HotSpotDirectCallTarget|@org.graalvm.compiler.hotspot.nodes.HotSpotDirectCallTargetNode>@ arguments: a1 i2 <|@ <|@
342
- tid ?16 <|@
343
- d <@d|@=== Debug Properties ===
344
- bci: 2
345
- code: ResolvedJavaMethodBytecode<JavaExamples.exampleSimpleCall(JavaExamples$ExampleObject, int)>
346
- duringCall: true
347
- localsSize: 2
348
- locksSize: 0
349
- rethrowException: false
350
- sourceFile: JavaExamples.java
351
- sourceLine: 104
352
- stackSize: 0
353
- === Inputs ===
354
- outerFrameState: -
355
- values: - -
356
- === Succesors ===
357
- === Usages ===
358
- i5
359
- === Predecessor ===
360
- - >@ <|@
361
- instruction <@FrameState|@org.graalvm.compiler.nodes.FrameState>@ outerFrameState: - values: - - <|@ <|@
362
- f <@#|@fixed with next>@ <|@
363
- tid i5 <|@
364
- result v2|DWORD <|@
365
- d <@d|@=== Debug Properties ===
366
- bci: 2
367
- identity: ANY_LOCATION
368
- nodeSourcePosition: at JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2]
369
- polymorphic: false
370
- stamp: i32
371
- targetMethod: Direct#JavaExamples$ExampleObject.instanceCall
372
- useForInlining: true
373
- === Inputs ===
374
- stateAfter: -
375
- classInit: -
376
- callTarget: v11
377
- stateDuring: ?16
378
- === Succesors ===
379
- next: v7
380
- === Usages ===
381
- v7
382
- === Predecessor ===
383
- v18 >@ <|@
384
- instruction <@Invoke|@org.graalvm.compiler.nodes.InvokeNode>@ stateAfter: - classInit: - callTarget: v11 stateDuring: ?16 #next: v7 <|@ <|@
385
- f <@*|@fixed>@ <|@
386
- tid v7 <|@
387
- d <@d|@=== Debug Properties ===
388
- nodeSourcePosition: at JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 5]
389
- stamp: void
390
- === Inputs ===
391
- result: i5
392
- memoryMap: -
393
- === Succesors ===
394
- === Usages ===
395
- === Predecessor ===
396
- i5 >@ <|@
397
- instruction <@Return|@org.graalvm.compiler.nodes.ReturnNode>@ result: i5 memoryMap: - <|@ <|@
398
- end_IR
399
- begin_IR
400
- LIR
401
- nr -1 <|@ instruction [rsi|QWORD[.], rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
402
- nr -1 <|@ instruction stack:16|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
403
- nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13f368da8 slotKind: QWORD <|@ <|@
404
- nr -1 <|@ instruction v0|QWORD[.] = MOVE rsi|QWORD[.] moveKind: QWORD <|@ <|@
405
- nr -1 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
406
- nr -1 <|@ st <@st|@JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 0]
407
- locals: Object[null] v1|DWORD
408
- >@ <|@ instruction NULLCHECK [v0|QWORD[.]] state [bci:0] <|@ <|@
409
- nr -1 <|@ instruction rsi|QWORD[.] = MOVE v0|QWORD[.] moveKind: QWORD <|@ <|@
410
- nr -1 <|@ instruction rdx|DWORD = MOVE v1|DWORD moveKind: DWORD <|@ <|@
411
- nr -1 <|@ st <@st|@JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2]
412
- locals: - -
413
- >@ <|@ instruction rax|DWORD = CALL_DIRECT [rsi|QWORD[.], rdx|DWORD] [] callTarget: HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)> invokeKind: Special config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 state [bci:2] <|@ <|@
414
- nr -1 <|@ instruction v2|DWORD = MOVE rax|DWORD moveKind: DWORD <|@ <|@
415
- nr -1 <|@ instruction rax|DWORD = MOVE v2|DWORD moveKind: DWORD <|@ <|@
416
- nr -1 <|@ instruction RETURN (savedRbp: stack:16|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
417
- end_IR
418
- end_block
419
- end_cfg
420
- begin_cfg
421
- name "After ConstantLoadOptimization"
422
- begin_block
423
- name "B0"
424
- from_bci -1
425
- to_bci -1
426
- predecessors
427
- successors
428
- xhandlers
429
- flags
430
- probability 4607182418800017408
431
- begin_IR
432
- LIR
433
- nr -1 <|@ instruction [rsi|QWORD[.], rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
434
- nr -1 <|@ instruction stack:16|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
435
- nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13f368da8 slotKind: QWORD <|@ <|@
436
- nr -1 <|@ instruction v0|QWORD[.] = MOVE rsi|QWORD[.] moveKind: QWORD <|@ <|@
437
- nr -1 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
438
- nr -1 <|@ st <@st|@JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 0]
439
- locals: Object[null] v1|DWORD
440
- >@ <|@ instruction NULLCHECK [v0|QWORD[.]] state [bci:0] <|@ <|@
441
- nr -1 <|@ instruction rsi|QWORD[.] = MOVE v0|QWORD[.] moveKind: QWORD <|@ <|@
442
- nr -1 <|@ instruction rdx|DWORD = MOVE v1|DWORD moveKind: DWORD <|@ <|@
443
- nr -1 <|@ st <@st|@JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2]
444
- locals: - -
445
- >@ <|@ instruction rax|DWORD = CALL_DIRECT [rsi|QWORD[.], rdx|DWORD] [] callTarget: HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)> invokeKind: Special config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 state [bci:2] <|@ <|@
446
- nr -1 <|@ instruction v2|DWORD = MOVE rax|DWORD moveKind: DWORD <|@ <|@
447
- nr -1 <|@ instruction rax|DWORD = MOVE v2|DWORD moveKind: DWORD <|@ <|@
448
- nr -1 <|@ instruction RETURN (savedRbp: stack:16|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
449
- end_IR
450
- end_block
451
- end_cfg
452
- begin_bytecodes
453
- 0: aload_0
454
- 1: iload_1
455
- 2: invokevirtual #50 // JavaExamples$ExampleObject.instanceCall:(int)int
456
- 5: ireturn
457
- <|@
458
- end_bytecodes
459
- begin_cfg
460
- name "After SaveCalleeSaveRegisters"
461
- begin_block
462
- name "B0"
463
- from_bci -1
464
- to_bci -1
465
- predecessors
466
- successors
467
- xhandlers
468
- flags
469
- probability 4607182418800017408
470
- begin_IR
471
- LIR
472
- nr -1 <|@ instruction [rsi|QWORD[.], rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
473
- nr -1 <|@ instruction stack:16|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
474
- nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13f368da8 slotKind: QWORD <|@ <|@
475
- nr -1 <|@ instruction v0|QWORD[.] = MOVE rsi|QWORD[.] moveKind: QWORD <|@ <|@
476
- nr -1 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
477
- nr -1 <|@ st <@st|@JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 0]
478
- locals: Object[null] v1|DWORD
479
- >@ <|@ instruction NULLCHECK [v0|QWORD[.]] state [bci:0] <|@ <|@
480
- nr -1 <|@ instruction rsi|QWORD[.] = MOVE v0|QWORD[.] moveKind: QWORD <|@ <|@
481
- nr -1 <|@ instruction rdx|DWORD = MOVE v1|DWORD moveKind: DWORD <|@ <|@
482
- nr -1 <|@ st <@st|@JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2]
483
- locals: - -
484
- >@ <|@ instruction rax|DWORD = CALL_DIRECT [rsi|QWORD[.], rdx|DWORD] [] callTarget: HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)> invokeKind: Special config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 state [bci:2] <|@ <|@
485
- nr -1 <|@ instruction v2|DWORD = MOVE rax|DWORD moveKind: DWORD <|@ <|@
486
- nr -1 <|@ instruction rax|DWORD = MOVE v2|DWORD moveKind: DWORD <|@ <|@
487
- nr -1 <|@ instruction RETURN (savedRbp: stack:16|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
488
- end_IR
489
- end_block
490
- end_cfg
491
- begin_bytecodes
492
- 0: aload_0
493
- 1: iload_1
494
- 2: invokevirtual #50 // JavaExamples$ExampleObject.instanceCall:(int)int
495
- 5: ireturn
496
- <|@
497
- end_bytecodes
498
- begin_cfg
499
- name "After PreAllocationOptimizationStage"
500
- begin_block
501
- name "B0"
502
- from_bci -1
503
- to_bci -1
504
- predecessors
505
- successors
506
- xhandlers
507
- flags
508
- probability 4607182418800017408
509
- begin_IR
510
- LIR
511
- nr -1 <|@ instruction [rsi|QWORD[.], rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
512
- nr -1 <|@ instruction stack:16|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
513
- nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13f368da8 slotKind: QWORD <|@ <|@
514
- nr -1 <|@ instruction v0|QWORD[.] = MOVE rsi|QWORD[.] moveKind: QWORD <|@ <|@
515
- nr -1 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
516
- nr -1 <|@ st <@st|@JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 0]
517
- locals: Object[null] v1|DWORD
518
- >@ <|@ instruction NULLCHECK [v0|QWORD[.]] state [bci:0] <|@ <|@
519
- nr -1 <|@ instruction rsi|QWORD[.] = MOVE v0|QWORD[.] moveKind: QWORD <|@ <|@
520
- nr -1 <|@ instruction rdx|DWORD = MOVE v1|DWORD moveKind: DWORD <|@ <|@
521
- nr -1 <|@ st <@st|@JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2]
522
- locals: - -
523
- >@ <|@ instruction rax|DWORD = CALL_DIRECT [rsi|QWORD[.], rdx|DWORD] [] callTarget: HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)> invokeKind: Special config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 state [bci:2] <|@ <|@
524
- nr -1 <|@ instruction v2|DWORD = MOVE rax|DWORD moveKind: DWORD <|@ <|@
525
- nr -1 <|@ instruction rax|DWORD = MOVE v2|DWORD moveKind: DWORD <|@ <|@
526
- nr -1 <|@ instruction RETURN (savedRbp: stack:16|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
527
- end_IR
528
- end_block
529
- end_cfg
530
- begin_bytecodes
531
- 0: aload_0
532
- 1: iload_1
533
- 2: invokevirtual #50 // JavaExamples$ExampleObject.instanceCall:(int)int
534
- 5: ireturn
535
- <|@
536
- end_bytecodes
537
- begin_cfg
538
- name "After MarkBasePointers"
539
- begin_block
540
- name "B0"
541
- from_bci -1
542
- to_bci -1
543
- predecessors
544
- successors
545
- xhandlers
546
- flags
547
- probability 4607182418800017408
548
- begin_IR
549
- LIR
550
- nr -1 <|@ instruction [rsi|QWORD[.], rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
551
- nr -1 <|@ instruction stack:16|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
552
- nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13f368da8 slotKind: QWORD <|@ <|@
553
- nr -1 <|@ instruction v0|QWORD[.] = MOVE rsi|QWORD[.] moveKind: QWORD <|@ <|@
554
- nr -1 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
555
- nr -1 <|@ st <@st|@live-base-pointers: []
556
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 0]
557
- locals: Object[null] v1|DWORD
558
- >@ <|@ instruction NULLCHECK [v0|QWORD[.]] state [bci:0] <|@ <|@
559
- nr -1 <|@ instruction rsi|QWORD[.] = MOVE v0|QWORD[.] moveKind: QWORD <|@ <|@
560
- nr -1 <|@ instruction rdx|DWORD = MOVE v1|DWORD moveKind: DWORD <|@ <|@
561
- nr -1 <|@ st <@st|@live-base-pointers: []
562
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2]
563
- locals: - -
564
- >@ <|@ instruction rax|DWORD = CALL_DIRECT [rsi|QWORD[.], rdx|DWORD] [] callTarget: HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)> invokeKind: Special config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 state [bci:2] <|@ <|@
565
- nr -1 <|@ instruction v2|DWORD = MOVE rax|DWORD moveKind: DWORD <|@ <|@
566
- nr -1 <|@ instruction rax|DWORD = MOVE v2|DWORD moveKind: DWORD <|@ <|@
567
- nr -1 <|@ instruction RETURN (savedRbp: stack:16|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
568
- end_IR
569
- end_block
570
- end_cfg
571
- begin_bytecodes
572
- 0: aload_0
573
- 1: iload_1
574
- 2: invokevirtual #50 // JavaExamples$ExampleObject.instanceCall:(int)int
575
- 5: ireturn
576
- <|@
577
- end_bytecodes
578
- begin_cfg
579
- name "Before register allocation"
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|QWORD[.], rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
592
- nr 2 <|@ instruction stack:16|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
593
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13f368da8 slotKind: QWORD <|@ <|@
594
- nr 6 <|@ instruction v0|QWORD[.] = MOVE rsi|QWORD[.] moveKind: QWORD <|@ <|@
595
- nr 8 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
596
- nr 10 <|@ st <@st|@live-base-pointers: []
597
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 0]
598
- locals: Object[null] v1|DWORD
599
- >@ <|@ instruction NULLCHECK [v0|QWORD[.]] state [bci:0] <|@ <|@
600
- nr 12 <|@ instruction rsi|QWORD[.] = MOVE v0|QWORD[.] moveKind: QWORD <|@ <|@
601
- nr 14 <|@ instruction rdx|DWORD = MOVE v1|DWORD moveKind: DWORD <|@ <|@
602
- nr 16 <|@ st <@st|@live-base-pointers: []
603
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2]
604
- locals: - -
605
- >@ <|@ instruction rax|DWORD = CALL_DIRECT [rsi|QWORD[.], rdx|DWORD] [] callTarget: HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)> invokeKind: Special config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 state [bci:2] <|@ <|@
606
- nr 18 <|@ instruction v2|DWORD = MOVE rax|DWORD moveKind: DWORD <|@ <|@
607
- nr 20 <|@ instruction rax|DWORD = MOVE v2|DWORD moveKind: DWORD <|@ <|@
608
- nr 22 <|@ instruction RETURN (savedRbp: stack:16|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
609
- end_IR
610
- end_block
611
- end_cfg
612
- begin_bytecodes
613
- 0: aload_0
614
- 1: iload_1
615
- 2: invokevirtual #50 // JavaExamples$ExampleObject.instanceCall:(int)int
616
- 5: ireturn
617
- <|@
618
- end_bytecodes
619
- begin_cfg
620
- name "After SSALinearScanLifetimeAnalysis"
621
- begin_block
622
- name "B0"
623
- from_bci -1
624
- to_bci -1
625
- predecessors
626
- successors
627
- xhandlers
628
- flags
629
- probability 4607182418800017408
630
- begin_IR
631
- LIR
632
- nr 0 <|@ instruction [rsi|QWORD[.], rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
633
- nr 2 <|@ instruction stack:16|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
634
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13f368da8 slotKind: QWORD <|@ <|@
635
- nr 6 <|@ instruction v0|QWORD[.] = MOVE rsi|QWORD[.] moveKind: QWORD <|@ <|@
636
- nr 8 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
637
- nr 10 <|@ st <@st|@live-base-pointers: []
638
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 0]
639
- locals: Object[null] v1|DWORD
640
- >@ <|@ instruction NULLCHECK [v0|QWORD[.]] state [bci:0] <|@ <|@
641
- nr 12 <|@ instruction rsi|QWORD[.] = MOVE v0|QWORD[.] moveKind: QWORD <|@ <|@
642
- nr 14 <|@ instruction rdx|DWORD = MOVE v1|DWORD moveKind: DWORD <|@ <|@
643
- nr 16 <|@ st <@st|@live-base-pointers: []
644
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2]
645
- locals: - -
646
- >@ <|@ instruction rax|DWORD = CALL_DIRECT [rsi|QWORD[.], rdx|DWORD] [] callTarget: HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)> invokeKind: Special config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 state [bci:2] <|@ <|@
647
- nr 18 <|@ instruction v2|DWORD = MOVE rax|DWORD moveKind: DWORD <|@ <|@
648
- nr 20 <|@ instruction rax|DWORD = MOVE v2|DWORD moveKind: DWORD <|@ <|@
649
- nr 22 <|@ instruction RETURN (savedRbp: stack:16|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
650
- end_IR
651
- end_block
652
- end_cfg
653
- begin_bytecodes
654
- 0: aload_0
655
- 1: iload_1
656
- 2: invokevirtual #50 // JavaExamples$ExampleObject.instanceCall:(int)int
657
- 5: ireturn
658
- <|@
659
- end_bytecodes
660
- begin_intervals
661
- name "Before register allocation"
662
- rax|d fixed "[rax|d]" rax|d v2|d [0, 1[[16, 18[[20, 22[ "NoOptimization"
663
- rcx|- fixed "[rcx|-]" rcx|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
664
- rdx|- fixed "[rdx|-]" rdx|- v1|d [0, 8[[14, 17[ "NoOptimization"
665
- rbx|- fixed "[rbx|-]" rbx|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
666
- rbp|- fixed "[rbp|-]" rbp|- -1 [0, 2[[16, 17[ "NoSpillStore"
667
- rsi|- fixed "[rsi|-]" rsi|- v0|q [0, 6[[12, 17[ "NoOptimization"
668
- rdi|- fixed "[rdi|-]" rdi|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
669
- r8|- fixed "[r8|-]" r8|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
670
- r9|- fixed "[r9|-]" r9|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
671
- r10|- fixed "[r10|-]" r10|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
672
- r11|- fixed "[r11|-]" r11|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
673
- r13|- fixed "[r13|-]" r13|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
674
- r14|- fixed "[r14|-]" r14|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
675
- xmm0|- fixed "[xmm0|-]" xmm0|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
676
- xmm1|- fixed "[xmm1|-]" xmm1|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
677
- xmm2|- fixed "[xmm2|-]" xmm2|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
678
- xmm3|- fixed "[xmm3|-]" xmm3|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
679
- xmm4|- fixed "[xmm4|-]" xmm4|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
680
- xmm5|- fixed "[xmm5|-]" xmm5|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
681
- xmm6|- fixed "[xmm6|-]" xmm6|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
682
- xmm7|- fixed "[xmm7|-]" xmm7|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
683
- xmm8|- fixed "[xmm8|-]" xmm8|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
684
- xmm9|- fixed "[xmm9|-]" xmm9|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
685
- xmm10|- fixed "[xmm10|-]" xmm10|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
686
- xmm11|- fixed "[xmm11|-]" xmm11|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
687
- xmm12|- fixed "[xmm12|-]" xmm12|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
688
- xmm13|- fixed "[xmm13|-]" xmm13|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
689
- xmm14|- fixed "[xmm14|-]" xmm14|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
690
- xmm15|- fixed "[xmm15|-]" xmm15|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
691
- v0|q QWORD "[v0|q]" v0|q rsi|- [6, 12[6 MustHaveRegister 10 MustHaveRegister 12 ShouldHaveRegister "NoSpillStore"
692
- v1|d DWORD "[v1|d]" v1|d rdx|- [8, 14[8 MustHaveRegister 14 ShouldHaveRegister "NoSpillStore"
693
- v2|d DWORD "[v2|d]" v2|d rax|d [18, 20[18 MustHaveRegister 20 ShouldHaveRegister "NoSpillStore"
694
- end_intervals
695
- begin_intervals
696
- name "After register allocation"
697
- rax|d fixed "[rax|d]" rax|d v2|d [0, 1[[16, 18[[20, 22[ "NoOptimization"
698
- rcx|- fixed "[rcx|-]" rcx|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
699
- rdx|- fixed "[rdx|-]" rdx|- v1|d [0, 8[[14, 17[ "NoOptimization"
700
- rbx|- fixed "[rbx|-]" rbx|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
701
- rbp|- fixed "[rbp|-]" rbp|- -1 [0, 2[[16, 17[ "NoSpillStore"
702
- rsi|- fixed "[rsi|-]" rsi|- v0|q [0, 6[[12, 17[ "NoOptimization"
703
- rdi|- fixed "[rdi|-]" rdi|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
704
- r8|- fixed "[r8|-]" r8|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
705
- r9|- fixed "[r9|-]" r9|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
706
- r10|- fixed "[r10|-]" r10|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
707
- r11|- fixed "[r11|-]" r11|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
708
- r13|- fixed "[r13|-]" r13|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
709
- r14|- fixed "[r14|-]" r14|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
710
- xmm0|- fixed "[xmm0|-]" xmm0|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
711
- xmm1|- fixed "[xmm1|-]" xmm1|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
712
- xmm2|- fixed "[xmm2|-]" xmm2|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
713
- xmm3|- fixed "[xmm3|-]" xmm3|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
714
- xmm4|- fixed "[xmm4|-]" xmm4|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
715
- xmm5|- fixed "[xmm5|-]" xmm5|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
716
- xmm6|- fixed "[xmm6|-]" xmm6|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
717
- xmm7|- fixed "[xmm7|-]" xmm7|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
718
- xmm8|- fixed "[xmm8|-]" xmm8|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
719
- xmm9|- fixed "[xmm9|-]" xmm9|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
720
- xmm10|- fixed "[xmm10|-]" xmm10|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
721
- xmm11|- fixed "[xmm11|-]" xmm11|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
722
- xmm12|- fixed "[xmm12|-]" xmm12|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
723
- xmm13|- fixed "[xmm13|-]" xmm13|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
724
- xmm14|- fixed "[xmm14|-]" xmm14|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
725
- xmm15|- fixed "[xmm15|-]" xmm15|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
726
- v0|q QWORD "[rsi|q]" v0|q rsi|- [6, 12[6 MustHaveRegister 10 MustHaveRegister 12 ShouldHaveRegister "NoSpillStore"
727
- v1|d DWORD "[rdx|d]" v1|d rdx|- [8, 14[8 MustHaveRegister 14 ShouldHaveRegister "NoSpillStore"
728
- v2|d DWORD "[rax|d]" v2|d rax|d [18, 20[18 MustHaveRegister 20 ShouldHaveRegister "NoSpillStore"
729
- end_intervals
730
- begin_cfg
731
- name "After LinearScanRegisterAllocation"
732
- begin_block
733
- name "B0"
734
- from_bci -1
735
- to_bci -1
736
- predecessors
737
- successors
738
- xhandlers
739
- flags
740
- probability 4607182418800017408
741
- begin_IR
742
- LIR
743
- nr 0 <|@ instruction [rsi|QWORD[.], rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
744
- nr 2 <|@ instruction stack:16|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
745
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13f368da8 slotKind: QWORD <|@ <|@
746
- nr 6 <|@ instruction v0|QWORD[.] = MOVE rsi|QWORD[.] moveKind: QWORD <|@ <|@
747
- nr 8 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
748
- nr 10 <|@ st <@st|@live-base-pointers: []
749
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 0]
750
- locals: Object[null] v1|DWORD
751
- >@ <|@ instruction NULLCHECK [v0|QWORD[.]] state [bci:0] <|@ <|@
752
- nr 12 <|@ instruction rsi|QWORD[.] = MOVE v0|QWORD[.] moveKind: QWORD <|@ <|@
753
- nr 14 <|@ instruction rdx|DWORD = MOVE v1|DWORD moveKind: DWORD <|@ <|@
754
- nr 16 <|@ st <@st|@live-base-pointers: []
755
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2]
756
- locals: - -
757
- >@ <|@ instruction rax|DWORD = CALL_DIRECT [rsi|QWORD[.], rdx|DWORD] [] callTarget: HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)> invokeKind: Special config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 state [bci:2] <|@ <|@
758
- nr 18 <|@ instruction v2|DWORD = MOVE rax|DWORD moveKind: DWORD <|@ <|@
759
- nr 20 <|@ instruction rax|DWORD = MOVE v2|DWORD moveKind: DWORD <|@ <|@
760
- nr 22 <|@ instruction RETURN (savedRbp: stack:16|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
761
- end_IR
762
- end_block
763
- end_cfg
764
- begin_bytecodes
765
- 0: aload_0
766
- 1: iload_1
767
- 2: invokevirtual #50 // JavaExamples$ExampleObject.instanceCall:(int)int
768
- 5: ireturn
769
- <|@
770
- end_bytecodes
771
- begin_intervals
772
- name "After optimize spill position"
773
- rax|d fixed "[rax|d]" rax|d v2|d [0, 1[[16, 18[[20, 22[ "NoOptimization"
774
- rcx|- fixed "[rcx|-]" rcx|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
775
- rdx|- fixed "[rdx|-]" rdx|- v1|d [0, 8[[14, 17[ "NoOptimization"
776
- rbx|- fixed "[rbx|-]" rbx|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
777
- rbp|- fixed "[rbp|-]" rbp|- -1 [0, 2[[16, 17[ "NoSpillStore"
778
- rsi|- fixed "[rsi|-]" rsi|- v0|q [0, 6[[12, 17[ "NoOptimization"
779
- rdi|- fixed "[rdi|-]" rdi|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
780
- r8|- fixed "[r8|-]" r8|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
781
- r9|- fixed "[r9|-]" r9|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
782
- r10|- fixed "[r10|-]" r10|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
783
- r11|- fixed "[r11|-]" r11|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
784
- r13|- fixed "[r13|-]" r13|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
785
- r14|- fixed "[r14|-]" r14|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
786
- xmm0|- fixed "[xmm0|-]" xmm0|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
787
- xmm1|- fixed "[xmm1|-]" xmm1|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
788
- xmm2|- fixed "[xmm2|-]" xmm2|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
789
- xmm3|- fixed "[xmm3|-]" xmm3|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
790
- xmm4|- fixed "[xmm4|-]" xmm4|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
791
- xmm5|- fixed "[xmm5|-]" xmm5|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
792
- xmm6|- fixed "[xmm6|-]" xmm6|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
793
- xmm7|- fixed "[xmm7|-]" xmm7|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
794
- xmm8|- fixed "[xmm8|-]" xmm8|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
795
- xmm9|- fixed "[xmm9|-]" xmm9|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
796
- xmm10|- fixed "[xmm10|-]" xmm10|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
797
- xmm11|- fixed "[xmm11|-]" xmm11|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
798
- xmm12|- fixed "[xmm12|-]" xmm12|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
799
- xmm13|- fixed "[xmm13|-]" xmm13|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
800
- xmm14|- fixed "[xmm14|-]" xmm14|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
801
- xmm15|- fixed "[xmm15|-]" xmm15|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
802
- v0|q QWORD "[rsi|q]" v0|q rsi|- [6, 12[6 MustHaveRegister 10 MustHaveRegister 12 ShouldHaveRegister "NoSpillStore"
803
- v1|d DWORD "[rdx|d]" v1|d rdx|- [8, 14[8 MustHaveRegister 14 ShouldHaveRegister "NoSpillStore"
804
- v2|d DWORD "[rax|d]" v2|d rax|d [18, 20[18 MustHaveRegister 20 ShouldHaveRegister "NoSpillStore"
805
- end_intervals
806
- begin_cfg
807
- name "After LinearScanOptimizeSpillPosition"
808
- begin_block
809
- name "B0"
810
- from_bci -1
811
- to_bci -1
812
- predecessors
813
- successors
814
- xhandlers
815
- flags
816
- probability 4607182418800017408
817
- begin_IR
818
- LIR
819
- nr 0 <|@ instruction [rsi|QWORD[.], rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
820
- nr 2 <|@ instruction stack:16|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
821
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13f368da8 slotKind: QWORD <|@ <|@
822
- nr 6 <|@ instruction v0|QWORD[.] = MOVE rsi|QWORD[.] moveKind: QWORD <|@ <|@
823
- nr 8 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
824
- nr 10 <|@ st <@st|@live-base-pointers: []
825
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 0]
826
- locals: Object[null] v1|DWORD
827
- >@ <|@ instruction NULLCHECK [v0|QWORD[.]] state [bci:0] <|@ <|@
828
- nr 12 <|@ instruction rsi|QWORD[.] = MOVE v0|QWORD[.] moveKind: QWORD <|@ <|@
829
- nr 14 <|@ instruction rdx|DWORD = MOVE v1|DWORD moveKind: DWORD <|@ <|@
830
- nr 16 <|@ st <@st|@live-base-pointers: []
831
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2]
832
- locals: - -
833
- >@ <|@ instruction rax|DWORD = CALL_DIRECT [rsi|QWORD[.], rdx|DWORD] [] callTarget: HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)> invokeKind: Special config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 state [bci:2] <|@ <|@
834
- nr 18 <|@ instruction v2|DWORD = MOVE rax|DWORD moveKind: DWORD <|@ <|@
835
- nr 20 <|@ instruction rax|DWORD = MOVE v2|DWORD moveKind: DWORD <|@ <|@
836
- nr 22 <|@ instruction RETURN (savedRbp: stack:16|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
837
- end_IR
838
- end_block
839
- end_cfg
840
- begin_bytecodes
841
- 0: aload_0
842
- 1: iload_1
843
- 2: invokevirtual #50 // JavaExamples$ExampleObject.instanceCall:(int)int
844
- 5: ireturn
845
- <|@
846
- end_bytecodes
847
- begin_intervals
848
- name "After resolve data flow"
849
- rax|d fixed "[rax|d]" rax|d v2|d [0, 1[[16, 18[[20, 22[ "NoOptimization"
850
- rcx|- fixed "[rcx|-]" rcx|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
851
- rdx|- fixed "[rdx|-]" rdx|- v1|d [0, 8[[14, 17[ "NoOptimization"
852
- rbx|- fixed "[rbx|-]" rbx|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
853
- rbp|- fixed "[rbp|-]" rbp|- -1 [0, 2[[16, 17[ "NoSpillStore"
854
- rsi|- fixed "[rsi|-]" rsi|- v0|q [0, 6[[12, 17[ "NoOptimization"
855
- rdi|- fixed "[rdi|-]" rdi|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
856
- r8|- fixed "[r8|-]" r8|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
857
- r9|- fixed "[r9|-]" r9|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
858
- r10|- fixed "[r10|-]" r10|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
859
- r11|- fixed "[r11|-]" r11|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
860
- r13|- fixed "[r13|-]" r13|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
861
- r14|- fixed "[r14|-]" r14|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
862
- xmm0|- fixed "[xmm0|-]" xmm0|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
863
- xmm1|- fixed "[xmm1|-]" xmm1|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
864
- xmm2|- fixed "[xmm2|-]" xmm2|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
865
- xmm3|- fixed "[xmm3|-]" xmm3|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
866
- xmm4|- fixed "[xmm4|-]" xmm4|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
867
- xmm5|- fixed "[xmm5|-]" xmm5|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
868
- xmm6|- fixed "[xmm6|-]" xmm6|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
869
- xmm7|- fixed "[xmm7|-]" xmm7|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
870
- xmm8|- fixed "[xmm8|-]" xmm8|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
871
- xmm9|- fixed "[xmm9|-]" xmm9|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
872
- xmm10|- fixed "[xmm10|-]" xmm10|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
873
- xmm11|- fixed "[xmm11|-]" xmm11|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
874
- xmm12|- fixed "[xmm12|-]" xmm12|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
875
- xmm13|- fixed "[xmm13|-]" xmm13|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
876
- xmm14|- fixed "[xmm14|-]" xmm14|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
877
- xmm15|- fixed "[xmm15|-]" xmm15|- -1 [0, 1[[16, 17[ "NoDefinitionFound"
878
- v0|q QWORD "[rsi|q]" v0|q rsi|- [6, 12[6 MustHaveRegister 10 MustHaveRegister 12 ShouldHaveRegister "NoSpillStore"
879
- v1|d DWORD "[rdx|d]" v1|d rdx|- [8, 14[8 MustHaveRegister 14 ShouldHaveRegister "NoSpillStore"
880
- v2|d DWORD "[rax|d]" v2|d rax|d [18, 20[18 MustHaveRegister 20 ShouldHaveRegister "NoSpillStore"
881
- end_intervals
882
- begin_cfg
883
- name "After SSALinearScanResolveDataFlow"
884
- begin_block
885
- name "B0"
886
- from_bci -1
887
- to_bci -1
888
- predecessors
889
- successors
890
- xhandlers
891
- flags
892
- probability 4607182418800017408
893
- begin_IR
894
- LIR
895
- nr 0 <|@ instruction [rsi|QWORD[.], rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
896
- nr 2 <|@ instruction stack:16|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
897
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13f368da8 slotKind: QWORD <|@ <|@
898
- nr 6 <|@ instruction v0|QWORD[.] = MOVE rsi|QWORD[.] moveKind: QWORD <|@ <|@
899
- nr 8 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
900
- nr 10 <|@ st <@st|@live-base-pointers: []
901
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 0]
902
- locals: Object[null] v1|DWORD
903
- >@ <|@ instruction NULLCHECK [v0|QWORD[.]] state [bci:0] <|@ <|@
904
- nr 12 <|@ instruction rsi|QWORD[.] = MOVE v0|QWORD[.] moveKind: QWORD <|@ <|@
905
- nr 14 <|@ instruction rdx|DWORD = MOVE v1|DWORD moveKind: DWORD <|@ <|@
906
- nr 16 <|@ st <@st|@live-base-pointers: []
907
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2]
908
- locals: - -
909
- >@ <|@ instruction rax|DWORD = CALL_DIRECT [rsi|QWORD[.], rdx|DWORD] [] callTarget: HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)> invokeKind: Special config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 state [bci:2] <|@ <|@
910
- nr 18 <|@ instruction v2|DWORD = MOVE rax|DWORD moveKind: DWORD <|@ <|@
911
- nr 20 <|@ instruction rax|DWORD = MOVE v2|DWORD moveKind: DWORD <|@ <|@
912
- nr 22 <|@ instruction RETURN (savedRbp: stack:16|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
913
- end_IR
914
- end_block
915
- end_cfg
916
- begin_bytecodes
917
- 0: aload_0
918
- 1: iload_1
919
- 2: invokevirtual #50 // JavaExamples$ExampleObject.instanceCall:(int)int
920
- 5: ireturn
921
- <|@
922
- end_bytecodes
923
- begin_cfg
924
- name "After SSALinearScanEliminateSpillMove"
925
- begin_block
926
- name "B0"
927
- from_bci -1
928
- to_bci -1
929
- predecessors
930
- successors
931
- xhandlers
932
- flags
933
- probability 4607182418800017408
934
- begin_IR
935
- LIR
936
- nr 0 <|@ instruction [rsi|QWORD[.], rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
937
- nr 2 <|@ instruction stack:16|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
938
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13f368da8 slotKind: QWORD <|@ <|@
939
- nr 6 <|@ instruction v0|QWORD[.] = MOVE rsi|QWORD[.] moveKind: QWORD <|@ <|@
940
- nr 8 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
941
- nr 10 <|@ st <@st|@live-base-pointers: []
942
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 0]
943
- locals: Object[null] v1|DWORD
944
- >@ <|@ instruction NULLCHECK [v0|QWORD[.]] state [bci:0] <|@ <|@
945
- nr 12 <|@ instruction rsi|QWORD[.] = MOVE v0|QWORD[.] moveKind: QWORD <|@ <|@
946
- nr 14 <|@ instruction rdx|DWORD = MOVE v1|DWORD moveKind: DWORD <|@ <|@
947
- nr 16 <|@ st <@st|@live-base-pointers: []
948
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2]
949
- locals: - -
950
- >@ <|@ instruction rax|DWORD = CALL_DIRECT [rsi|QWORD[.], rdx|DWORD] [] callTarget: HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)> invokeKind: Special config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 state [bci:2] <|@ <|@
951
- nr 18 <|@ instruction v2|DWORD = MOVE rax|DWORD moveKind: DWORD <|@ <|@
952
- nr 20 <|@ instruction rax|DWORD = MOVE v2|DWORD moveKind: DWORD <|@ <|@
953
- nr 22 <|@ instruction RETURN (savedRbp: stack:16|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
954
- end_IR
955
- end_block
956
- end_cfg
957
- begin_bytecodes
958
- 0: aload_0
959
- 1: iload_1
960
- 2: invokevirtual #50 // JavaExamples$ExampleObject.instanceCall:(int)int
961
- 5: ireturn
962
- <|@
963
- end_bytecodes
964
- begin_cfg
965
- name "After LinearScanAssignLocations"
966
- begin_block
967
- name "B0"
968
- from_bci -1
969
- to_bci -1
970
- predecessors
971
- successors
972
- xhandlers
973
- flags
974
- probability 4607182418800017408
975
- begin_IR
976
- LIR
977
- nr 0 <|@ instruction [rsi|QWORD[.], rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
978
- nr 2 <|@ instruction stack:16|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
979
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13f368da8 slotKind: QWORD <|@ <|@
980
- nr 10 <|@ st <@st|@live-base-pointers: []
981
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 0]
982
- locals: Object[null] rdx|DWORD
983
- >@ <|@ instruction NULLCHECK [rsi|QWORD[.]] state [bci:0] <|@ <|@
984
- nr 16 <|@ st <@st|@live-base-pointers: []
985
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2]
986
- locals: - -
987
- >@ <|@ instruction rax|DWORD = CALL_DIRECT [rsi|QWORD[.], rdx|DWORD] [] callTarget: HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)> invokeKind: Special config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 state [bci:2] <|@ <|@
988
- nr 22 <|@ instruction RETURN (savedRbp: stack:16|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
989
- end_IR
990
- end_block
991
- end_cfg
992
- begin_bytecodes
993
- 0: aload_0
994
- 1: iload_1
995
- 2: invokevirtual #50 // JavaExamples$ExampleObject.instanceCall:(int)int
996
- 5: ireturn
997
- <|@
998
- end_bytecodes
999
- begin_cfg
1000
- name "After LinearScan"
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|QWORD[.], rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
1013
- nr 2 <|@ instruction stack:16|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
1014
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13f368da8 slotKind: QWORD <|@ <|@
1015
- nr 10 <|@ st <@st|@live-base-pointers: []
1016
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 0]
1017
- locals: Object[null] rdx|DWORD
1018
- >@ <|@ instruction NULLCHECK [rsi|QWORD[.]] state [bci:0] <|@ <|@
1019
- nr 16 <|@ st <@st|@live-base-pointers: []
1020
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2]
1021
- locals: - -
1022
- >@ <|@ instruction rax|DWORD = CALL_DIRECT [rsi|QWORD[.], rdx|DWORD] [] callTarget: HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)> invokeKind: Special config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 state [bci:2] <|@ <|@
1023
- nr 22 <|@ instruction RETURN (savedRbp: stack:16|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
1024
- end_IR
1025
- end_block
1026
- end_cfg
1027
- begin_bytecodes
1028
- 0: aload_0
1029
- 1: iload_1
1030
- 2: invokevirtual #50 // JavaExamples$ExampleObject.instanceCall:(int)int
1031
- 5: ireturn
1032
- <|@
1033
- end_bytecodes
1034
- begin_cfg
1035
- name "After LSStackSlotAllocator"
1036
- begin_block
1037
- name "B0"
1038
- from_bci -1
1039
- to_bci -1
1040
- predecessors
1041
- successors
1042
- xhandlers
1043
- flags
1044
- probability 4607182418800017408
1045
- begin_IR
1046
- LIR
1047
- nr 0 <|@ instruction [rsi|QWORD[.], rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
1048
- nr 2 <|@ instruction stack:16|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
1049
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13f368da8 slotKind: QWORD <|@ <|@
1050
- nr 10 <|@ st <@st|@live-base-pointers: []
1051
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 0]
1052
- locals: Object[null] rdx|DWORD
1053
- >@ <|@ instruction NULLCHECK [rsi|QWORD[.]] state [bci:0] <|@ <|@
1054
- nr 16 <|@ st <@st|@live-base-pointers: []
1055
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2]
1056
- locals: - -
1057
- >@ <|@ instruction rax|DWORD = CALL_DIRECT [rsi|QWORD[.], rdx|DWORD] [] callTarget: HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)> invokeKind: Special config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 state [bci:2] <|@ <|@
1058
- nr 22 <|@ instruction RETURN (savedRbp: stack:16|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
1059
- end_IR
1060
- end_block
1061
- end_cfg
1062
- begin_bytecodes
1063
- 0: aload_0
1064
- 1: iload_1
1065
- 2: invokevirtual #50 // JavaExamples$ExampleObject.instanceCall:(int)int
1066
- 5: ireturn
1067
- <|@
1068
- end_bytecodes
1069
- begin_cfg
1070
- name "After LocationMarker"
1071
- begin_block
1072
- name "B0"
1073
- from_bci -1
1074
- to_bci -1
1075
- predecessors
1076
- successors
1077
- xhandlers
1078
- flags
1079
- probability 4607182418800017408
1080
- begin_IR
1081
- LIR
1082
- nr 0 <|@ instruction [rsi|QWORD[.], rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
1083
- nr 2 <|@ instruction stack:16|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
1084
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13f368da8 slotKind: QWORD <|@ <|@
1085
- nr 10 <|@ st <@st|@reference-map: [rsi:0]
1086
- live-base-pointers: []
1087
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 0]
1088
- locals: Object[null] rdx|DWORD
1089
- >@ <|@ instruction NULLCHECK [rsi|QWORD[.]] state [bci:0] <|@ <|@
1090
- nr 16 <|@ st <@st|@reference-map: []
1091
- live-base-pointers: []
1092
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2]
1093
- locals: - -
1094
- >@ <|@ instruction rax|DWORD = CALL_DIRECT [rsi|QWORD[.], rdx|DWORD] [] callTarget: HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)> invokeKind: Special config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 state [bci:2] <|@ <|@
1095
- nr 22 <|@ instruction RETURN (savedRbp: stack:16|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
1096
- end_IR
1097
- end_block
1098
- end_cfg
1099
- begin_bytecodes
1100
- 0: aload_0
1101
- 1: iload_1
1102
- 2: invokevirtual #50 // JavaExamples$ExampleObject.instanceCall:(int)int
1103
- 5: ireturn
1104
- <|@
1105
- end_bytecodes
1106
- begin_cfg
1107
- name "After AllocationStage"
1108
- begin_block
1109
- name "B0"
1110
- from_bci -1
1111
- to_bci -1
1112
- predecessors
1113
- successors
1114
- xhandlers
1115
- flags
1116
- probability 4607182418800017408
1117
- begin_IR
1118
- LIR
1119
- nr 0 <|@ instruction [rsi|QWORD[.], rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
1120
- nr 2 <|@ instruction stack:16|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
1121
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13f368da8 slotKind: QWORD <|@ <|@
1122
- nr 10 <|@ st <@st|@reference-map: [rsi:0]
1123
- live-base-pointers: []
1124
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 0]
1125
- locals: Object[null] rdx|DWORD
1126
- >@ <|@ instruction NULLCHECK [rsi|QWORD[.]] state [bci:0] <|@ <|@
1127
- nr 16 <|@ st <@st|@reference-map: []
1128
- live-base-pointers: []
1129
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2]
1130
- locals: - -
1131
- >@ <|@ instruction rax|DWORD = CALL_DIRECT [rsi|QWORD[.], rdx|DWORD] [] callTarget: HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)> invokeKind: Special config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 state [bci:2] <|@ <|@
1132
- nr 22 <|@ instruction RETURN (savedRbp: stack:16|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
1133
- end_IR
1134
- end_block
1135
- end_cfg
1136
- begin_bytecodes
1137
- 0: aload_0
1138
- 1: iload_1
1139
- 2: invokevirtual #50 // JavaExamples$ExampleObject.instanceCall:(int)int
1140
- 5: ireturn
1141
- <|@
1142
- end_bytecodes
1143
- begin_cfg
1144
- name "After EdgeMoveOptimizer"
1145
- begin_block
1146
- name "B0"
1147
- from_bci -1
1148
- to_bci -1
1149
- predecessors
1150
- successors
1151
- xhandlers
1152
- flags
1153
- probability 4607182418800017408
1154
- begin_IR
1155
- LIR
1156
- nr 0 <|@ instruction [rsi|QWORD[.], rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
1157
- nr 2 <|@ instruction stack:16|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
1158
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13f368da8 slotKind: QWORD <|@ <|@
1159
- nr 10 <|@ st <@st|@reference-map: [rsi:0]
1160
- live-base-pointers: []
1161
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 0]
1162
- locals: Object[null] rdx|DWORD
1163
- >@ <|@ instruction NULLCHECK [rsi|QWORD[.]] state [bci:0] <|@ <|@
1164
- nr 16 <|@ st <@st|@reference-map: []
1165
- live-base-pointers: []
1166
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2]
1167
- locals: - -
1168
- >@ <|@ instruction rax|DWORD = CALL_DIRECT [rsi|QWORD[.], rdx|DWORD] [] callTarget: HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)> invokeKind: Special config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 state [bci:2] <|@ <|@
1169
- nr 22 <|@ instruction RETURN (savedRbp: stack:16|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
1170
- end_IR
1171
- end_block
1172
- end_cfg
1173
- begin_bytecodes
1174
- 0: aload_0
1175
- 1: iload_1
1176
- 2: invokevirtual #50 // JavaExamples$ExampleObject.instanceCall:(int)int
1177
- 5: ireturn
1178
- <|@
1179
- end_bytecodes
1180
- begin_cfg
1181
- name "After ControlFlowOptimizer"
1182
- begin_block
1183
- name "B0"
1184
- from_bci -1
1185
- to_bci -1
1186
- predecessors
1187
- successors
1188
- xhandlers
1189
- flags
1190
- probability 4607182418800017408
1191
- begin_IR
1192
- LIR
1193
- nr 0 <|@ instruction [rsi|QWORD[.], rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
1194
- nr 2 <|@ instruction stack:16|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
1195
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13f368da8 slotKind: QWORD <|@ <|@
1196
- nr 10 <|@ st <@st|@reference-map: [rsi:0]
1197
- live-base-pointers: []
1198
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 0]
1199
- locals: Object[null] rdx|DWORD
1200
- >@ <|@ instruction NULLCHECK [rsi|QWORD[.]] state [bci:0] <|@ <|@
1201
- nr 16 <|@ st <@st|@reference-map: []
1202
- live-base-pointers: []
1203
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2]
1204
- locals: - -
1205
- >@ <|@ instruction rax|DWORD = CALL_DIRECT [rsi|QWORD[.], rdx|DWORD] [] callTarget: HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)> invokeKind: Special config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 state [bci:2] <|@ <|@
1206
- nr 22 <|@ instruction RETURN (savedRbp: stack:16|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
1207
- end_IR
1208
- end_block
1209
- end_cfg
1210
- begin_bytecodes
1211
- 0: aload_0
1212
- 1: iload_1
1213
- 2: invokevirtual #50 // JavaExamples$ExampleObject.instanceCall:(int)int
1214
- 5: ireturn
1215
- <|@
1216
- end_bytecodes
1217
- begin_cfg
1218
- name "After RedundantMoveElimination"
1219
- begin_block
1220
- name "B0"
1221
- from_bci -1
1222
- to_bci -1
1223
- predecessors
1224
- successors
1225
- xhandlers
1226
- flags
1227
- probability 4607182418800017408
1228
- begin_IR
1229
- LIR
1230
- nr 0 <|@ instruction [rsi|QWORD[.], rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
1231
- nr 2 <|@ instruction stack:16|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
1232
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13f368da8 slotKind: QWORD <|@ <|@
1233
- nr 10 <|@ st <@st|@reference-map: [rsi:0]
1234
- live-base-pointers: []
1235
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 0]
1236
- locals: Object[null] rdx|DWORD
1237
- >@ <|@ instruction NULLCHECK [rsi|QWORD[.]] state [bci:0] <|@ <|@
1238
- nr 16 <|@ st <@st|@reference-map: []
1239
- live-base-pointers: []
1240
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2]
1241
- locals: - -
1242
- >@ <|@ instruction rax|DWORD = CALL_DIRECT [rsi|QWORD[.], rdx|DWORD] [] callTarget: HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)> invokeKind: Special config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 state [bci:2] <|@ <|@
1243
- nr 22 <|@ instruction RETURN (savedRbp: stack:16|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
1244
- end_IR
1245
- end_block
1246
- end_cfg
1247
- begin_bytecodes
1248
- 0: aload_0
1249
- 1: iload_1
1250
- 2: invokevirtual #50 // JavaExamples$ExampleObject.instanceCall:(int)int
1251
- 5: ireturn
1252
- <|@
1253
- end_bytecodes
1254
- begin_cfg
1255
- name "After NullCheckOptimizer"
1256
- begin_block
1257
- name "B0"
1258
- from_bci -1
1259
- to_bci -1
1260
- predecessors
1261
- successors
1262
- xhandlers
1263
- flags
1264
- probability 4607182418800017408
1265
- begin_IR
1266
- LIR
1267
- nr 0 <|@ instruction [rsi|QWORD[.], rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
1268
- nr 2 <|@ instruction stack:16|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
1269
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13f368da8 slotKind: QWORD <|@ <|@
1270
- nr 10 <|@ st <@st|@reference-map: [rsi:0]
1271
- live-base-pointers: []
1272
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 0]
1273
- locals: Object[null] rdx|DWORD
1274
- >@ <|@ instruction NULLCHECK [rsi|QWORD[.]] state [bci:0] <|@ <|@
1275
- nr 16 <|@ st <@st|@reference-map: []
1276
- live-base-pointers: []
1277
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2]
1278
- locals: - -
1279
- >@ <|@ instruction rax|DWORD = CALL_DIRECT [rsi|QWORD[.], rdx|DWORD] [] callTarget: HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)> invokeKind: Special config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 state [bci:2] <|@ <|@
1280
- nr 22 <|@ instruction RETURN (savedRbp: stack:16|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
1281
- end_IR
1282
- end_block
1283
- end_cfg
1284
- begin_bytecodes
1285
- 0: aload_0
1286
- 1: iload_1
1287
- 2: invokevirtual #50 // JavaExamples$ExampleObject.instanceCall:(int)int
1288
- 5: ireturn
1289
- <|@
1290
- end_bytecodes
1291
- begin_cfg
1292
- name "After StackMoveOptimization"
1293
- begin_block
1294
- name "B0"
1295
- from_bci -1
1296
- to_bci -1
1297
- predecessors
1298
- successors
1299
- xhandlers
1300
- flags
1301
- probability 4607182418800017408
1302
- begin_IR
1303
- LIR
1304
- nr 0 <|@ instruction [rsi|QWORD[.], rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
1305
- nr 2 <|@ instruction stack:16|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
1306
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13f368da8 slotKind: QWORD <|@ <|@
1307
- nr 10 <|@ st <@st|@reference-map: [rsi:0]
1308
- live-base-pointers: []
1309
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 0]
1310
- locals: Object[null] rdx|DWORD
1311
- >@ <|@ instruction NULLCHECK [rsi|QWORD[.]] state [bci:0] <|@ <|@
1312
- nr 16 <|@ st <@st|@reference-map: []
1313
- live-base-pointers: []
1314
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2]
1315
- locals: - -
1316
- >@ <|@ instruction rax|DWORD = CALL_DIRECT [rsi|QWORD[.], rdx|DWORD] [] callTarget: HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)> invokeKind: Special config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 state [bci:2] <|@ <|@
1317
- nr 22 <|@ instruction RETURN (savedRbp: stack:16|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
1318
- end_IR
1319
- end_block
1320
- end_cfg
1321
- begin_bytecodes
1322
- 0: aload_0
1323
- 1: iload_1
1324
- 2: invokevirtual #50 // JavaExamples$ExampleObject.instanceCall:(int)int
1325
- 5: ireturn
1326
- <|@
1327
- end_bytecodes
1328
- begin_cfg
1329
- name "After PostAllocationOptimizationStage"
1330
- begin_block
1331
- name "B0"
1332
- from_bci -1
1333
- to_bci -1
1334
- predecessors
1335
- successors
1336
- xhandlers
1337
- flags
1338
- probability 4607182418800017408
1339
- begin_IR
1340
- LIR
1341
- nr 0 <|@ instruction [rsi|QWORD[.], rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
1342
- nr 2 <|@ instruction stack:16|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
1343
- nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13f368da8 slotKind: QWORD <|@ <|@
1344
- nr 10 <|@ st <@st|@reference-map: [rsi:0]
1345
- live-base-pointers: []
1346
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 0]
1347
- locals: Object[null] rdx|DWORD
1348
- >@ <|@ instruction NULLCHECK [rsi|QWORD[.]] state [bci:0] <|@ <|@
1349
- nr 16 <|@ st <@st|@reference-map: []
1350
- live-base-pointers: []
1351
- JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2]
1352
- locals: - -
1353
- >@ <|@ instruction rax|DWORD = CALL_DIRECT [rsi|QWORD[.], rdx|DWORD] [] callTarget: HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)> invokeKind: Special config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 state [bci:2] <|@ <|@
1354
- nr 22 <|@ instruction RETURN (savedRbp: stack:16|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <|@ <|@
1355
- end_IR
1356
- end_block
1357
- end_cfg
1358
- begin_bytecodes
1359
- 0: aload_0
1360
- 1: iload_1
1361
- 2: invokevirtual #50 // JavaExamples$ExampleObject.instanceCall:(int)int
1362
- 5: ireturn
1363
- <|@
1364
- end_bytecodes
1365
- begin_cfg
1366
- name "After code generation"
1367
- end_cfg
1368
- begin_nmethod
1369
- <<<HexCodeFile
1370
- Platform AMD64 64 <||@
1371
- HexCode 0 89842400c0feff4883ec1848896c241085060f1f440000e80000000090488b6c24104883c418850500000000c5f877c3e80000000090e80000000090 <||@
1372
- Comment 0 [stack overflow check] <||@
1373
- Comment 0 3 <||@
1374
- Comment 0 1 <||@
1375
- Comment 11 block B0 null <||@
1376
- Comment 11 0 [rsi|QWORD[.], rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <||@
1377
- Comment 11 2 stack:16|QWORD = MOVE rbp|QWORD moveKind: QWORD <||@
1378
- Comment 16 4 [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13f368da8 slotKind: QWORD <||@
1379
- Comment 16 10 NULLCHECK [rsi|QWORD[.]] state [bci:0] <||@
1380
- Comment 16 [rsi:0]at JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 0, duringCall: false, rethrow: false]
1381
- |0 |1
1382
- locals: |Object[null] |rdx|DWORD <||@
1383
- Comment 16 {infopoint: IMPLICIT_EXCEPTION} <||@
1384
- Comment 18 16 rax|DWORD = CALL_DIRECT [rsi|QWORD[.], rdx|DWORD] [] callTarget: HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)> invokeKind: Special config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 state [bci:2] <||@
1385
- Comment 18 9 <||@
1386
- Comment 23 {HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)>} <||@
1387
- Comment 28 []at JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2, duringCall: true, rethrow: false]
1388
- |0 |1
1389
- locals: |- |- <||@
1390
- Comment 29 22 RETURN (savedRbp: stack:16|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <||@
1391
- Comment 38 12 <||@
1392
- Comment 48 {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} <||@
1393
- Comment 48 4 <||@
1394
- Comment 54 {Field[name=CompilerToVM::Data::SharedRuntime_deopt_blob_unpack, type=address, offset=0, address=0x1108bc128, value=4610474560]:0x112ce4240} <||@
1395
- Comment 54 5 <||@
1396
- HexCodeFile>>> <|@
1397
- end_nmethod
1398
- begin_compilation
1399
- name " HotSpotCompilation-349[JavaExamples.exampleSimpleCall(JavaExamples$ExampleObject, int)]"
1400
- method "HotSpotCompilation-349[JavaExamples.exampleSimpleCall(JavaExamples$ExampleObject, int)]"
1401
- date 1583364091828
1402
- end_compilation
1403
- begin_cfg
1404
- name "After code installation"
1405
- end_cfg
1406
- begin_nmethod
1407
- <<<HexCodeFile
1408
- Platform AMD64 64 <||@
1409
- HexCode 112e34560 89842400c0feff4883ec1848896c241085060f1f440000e884d2ffff90488b6c24104883c41885057a6a93fbc5f877c3e88bfdfeff90e8a5fceaff90f4f4f4f448bb0000000000000000e9fbfffffff4 <||@
1410
- Comment 0 [stack overflow check] <||@
1411
- Comment 0 3 <||@
1412
- Comment 0 1 <||@
1413
- Comment 11 block B0 null <||@
1414
- Comment 11 0 [rsi|QWORD[.], rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <||@
1415
- Comment 11 2 stack:16|QWORD = MOVE rbp|QWORD moveKind: QWORD <||@
1416
- Comment 16 4 [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13f368da8 slotKind: QWORD <||@
1417
- Comment 16 10 NULLCHECK [rsi|QWORD[.]] state [bci:0] <||@
1418
- Comment 16 [rsi:0]at JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 0, duringCall: false, rethrow: false]
1419
- |0 |1
1420
- locals: |Object[null] |rdx|DWORD <||@
1421
- Comment 16 {infopoint: IMPLICIT_EXCEPTION} <||@
1422
- Comment 18 16 rax|DWORD = CALL_DIRECT [rsi|QWORD[.], rdx|DWORD] [] callTarget: HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)> invokeKind: Special config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 state [bci:2] <||@
1423
- Comment 18 9 <||@
1424
- Comment 23 {HotSpotMethod<JavaExamples$ExampleObject.instanceCall(int)>} <||@
1425
- Comment 28 []at JavaExamples.exampleSimpleCall(JavaExamples.java:104) [bci: 2, duringCall: true, rethrow: false]
1426
- |0 |1
1427
- locals: |- |- <||@
1428
- Comment 29 22 RETURN (savedRbp: stack:16|QWORD, value: rax|DWORD) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@147e07170 <||@
1429
- Comment 38 12 <||@
1430
- Comment 48 {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} <||@
1431
- Comment 48 4 <||@
1432
- Comment 54 {Field[name=CompilerToVM::Data::SharedRuntime_deopt_blob_unpack, type=address, offset=0, address=0x1108bc128, value=4610474560]:0x112ce4240} <||@
1433
- Comment 54 5 <||@
1434
- HexCodeFile>>> <|@
1435
- end_nmethod