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