seafoam 0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.github/probots.yml +2 -0
- data/.github/workflows/rubocop.yml +10 -0
- data/.github/workflows/specs.yml +19 -0
- data/.gitignore +7 -0
- data/.rubocop.yml +34 -0
- data/.ruby-version +1 -0
- data/.seafoam/config +1 -0
- data/CODE_OF_CONDUCT.md +128 -0
- data/CONTRIBUTING.md +5 -0
- data/Gemfile +2 -0
- data/LICENSE.md +7 -0
- data/README.md +298 -0
- data/bin/bgv2isabelle +53 -0
- data/bin/bgv2json +42 -0
- data/bin/seafoam +24 -0
- data/docs/annotators.md +43 -0
- data/docs/bgv.md +284 -0
- data/docs/getting-graphs.md +47 -0
- data/examples/Fib.java +24 -0
- data/examples/MatMult.java +39 -0
- data/examples/fib-java.bgv +0 -0
- data/examples/fib-js.bgv +0 -0
- data/examples/fib-ruby.bgv +0 -0
- data/examples/fib.js +15 -0
- data/examples/fib.rb +15 -0
- data/examples/identity.bgv +0 -0
- data/examples/identity.rb +13 -0
- data/examples/java/Irreducible.j +35 -0
- data/examples/java/IrreducibleDecompiled.java +21 -0
- data/examples/java/JavaExamples.java +418 -0
- data/examples/java/exampleArithOperator.bgv +0 -0
- data/examples/java/exampleArithOperator.cfg +925 -0
- data/examples/java/exampleArrayAllocation.bgv +0 -0
- data/examples/java/exampleArrayAllocation.cfg +5268 -0
- data/examples/java/exampleArrayRead.bgv +0 -0
- data/examples/java/exampleArrayRead.cfg +2263 -0
- data/examples/java/exampleArrayWrite.bgv +0 -0
- data/examples/java/exampleArrayWrite.cfg +2315 -0
- data/examples/java/exampleCatch.bgv +0 -0
- data/examples/java/exampleCatch.cfg +4150 -0
- data/examples/java/exampleCompareOperator.bgv +0 -0
- data/examples/java/exampleCompareOperator.cfg +1109 -0
- data/examples/java/exampleDoubleSynchronized.bgv +0 -0
- data/examples/java/exampleDoubleSynchronized.cfg +26497 -0
- data/examples/java/exampleExactArith.bgv +0 -0
- data/examples/java/exampleExactArith.cfg +1888 -0
- data/examples/java/exampleFieldRead.bgv +0 -0
- data/examples/java/exampleFieldRead.cfg +1228 -0
- data/examples/java/exampleFieldWrite.bgv +0 -0
- data/examples/java/exampleFieldWrite.cfg +1102 -0
- data/examples/java/exampleFor.bgv +0 -0
- data/examples/java/exampleFor.cfg +3936 -0
- data/examples/java/exampleFullEscape.bgv +0 -0
- data/examples/java/exampleFullEscape.cfg +5893 -0
- data/examples/java/exampleIf.bgv +0 -0
- data/examples/java/exampleIf.cfg +2462 -0
- data/examples/java/exampleIfNeverTaken.bgv +0 -0
- data/examples/java/exampleIfNeverTaken.cfg +2476 -0
- data/examples/java/exampleInstanceOfManyImpls.bgv +0 -0
- data/examples/java/exampleInstanceOfManyImpls.cfg +6391 -0
- data/examples/java/exampleInstanceOfOneImpl.bgv +0 -0
- data/examples/java/exampleInstanceOfOneImpl.cfg +2604 -0
- data/examples/java/exampleIntSwitch.bgv +0 -0
- data/examples/java/exampleIntSwitch.cfg +3121 -0
- data/examples/java/exampleInterfaceCallManyImpls.bgv +0 -0
- data/examples/java/exampleInterfaceCallManyImpls.cfg +1358 -0
- data/examples/java/exampleInterfaceCallOneImpl.bgv +0 -0
- data/examples/java/exampleInterfaceCallOneImpl.cfg +3859 -0
- data/examples/java/exampleLocalInstanceOf.bgv +0 -0
- data/examples/java/exampleLocalInstanceOf.cfg +5276 -0
- data/examples/java/exampleLocalSynchronized.bgv +0 -0
- data/examples/java/exampleLocalSynchronized.cfg +1364 -0
- data/examples/java/exampleLocalVariables.bgv +0 -0
- data/examples/java/exampleLocalVariables.cfg +1195 -0
- data/examples/java/exampleLocalVariablesState.bgv +0 -0
- data/examples/java/exampleLocalVariablesState.cfg +1673 -0
- data/examples/java/exampleNestedWhile.bgv +0 -0
- data/examples/java/exampleNestedWhile.cfg +15499 -0
- data/examples/java/exampleNestedWhileBreak.bgv +0 -0
- data/examples/java/exampleNestedWhileBreak.cfg +11162 -0
- data/examples/java/exampleNoEscape.bgv +0 -0
- data/examples/java/exampleNoEscape.cfg +974 -0
- data/examples/java/exampleObjectAllocation.bgv +0 -0
- data/examples/java/exampleObjectAllocation.cfg +5287 -0
- data/examples/java/examplePartialEscape.bgv +0 -0
- data/examples/java/examplePartialEscape.cfg +7042 -0
- data/examples/java/examplePhi.bgv +0 -0
- data/examples/java/examplePhi.cfg +3227 -0
- data/examples/java/exampleReducible.bgv +0 -0
- data/examples/java/exampleReducible.cfg +5578 -0
- data/examples/java/exampleSimpleCall.bgv +0 -0
- data/examples/java/exampleSimpleCall.cfg +1435 -0
- data/examples/java/exampleStamp.bgv +0 -0
- data/examples/java/exampleStamp.cfg +913 -0
- data/examples/java/exampleStaticCall.bgv +0 -0
- data/examples/java/exampleStaticCall.cfg +1154 -0
- data/examples/java/exampleStringSwitch.bgv +0 -0
- data/examples/java/exampleStringSwitch.cfg +15377 -0
- data/examples/java/exampleSynchronized.bgv +0 -0
- data/examples/java/exampleSynchronized.cfg +26027 -0
- data/examples/java/exampleThrow.bgv +0 -0
- data/examples/java/exampleThrow.cfg +780 -0
- data/examples/java/exampleThrowCatch.bgv +0 -0
- data/examples/java/exampleThrowCatch.cfg +744 -0
- data/examples/java/exampleUnsafeRead.bgv +0 -0
- data/examples/java/exampleUnsafeRead.cfg +912 -0
- data/examples/java/exampleUnsafeWrite.bgv +0 -0
- data/examples/java/exampleUnsafeWrite.cfg +962 -0
- data/examples/java/exampleWhile.bgv +0 -0
- data/examples/java/exampleWhile.cfg +3936 -0
- data/examples/java/exampleWhileBreak.bgv +0 -0
- data/examples/java/exampleWhileBreak.cfg +5963 -0
- data/examples/matmult-java.bgv +0 -0
- data/examples/matmult-ruby.bgv +0 -0
- data/examples/matmult.rb +29 -0
- data/examples/overflow.bgv +0 -0
- data/examples/overflow.rb +13 -0
- data/lib/seafoam.rb +13 -0
- data/lib/seafoam/annotators.rb +54 -0
- data/lib/seafoam/annotators/fallback.rb +27 -0
- data/lib/seafoam/annotators/graal.rb +376 -0
- data/lib/seafoam/bgv/bgv_parser.rb +602 -0
- data/lib/seafoam/binary/binary_reader.rb +21 -0
- data/lib/seafoam/binary/io_binary_reader.rb +88 -0
- data/lib/seafoam/colors.rb +18 -0
- data/lib/seafoam/commands.rb +447 -0
- data/lib/seafoam/config.rb +34 -0
- data/lib/seafoam/graph.rb +91 -0
- data/lib/seafoam/graphviz_writer.rb +213 -0
- data/lib/seafoam/spotlight.rb +28 -0
- data/lib/seafoam/version.rb +5 -0
- data/seafoam.gemspec +20 -0
- data/spec/seafoam/annotators/fallback_spec.rb +69 -0
- data/spec/seafoam/annotators/graal_spec.rb +96 -0
- data/spec/seafoam/annotators_spec.rb +61 -0
- data/spec/seafoam/bgv/bgv_parser_spec.rb +144 -0
- data/spec/seafoam/bgv/fixtures/not.bgv +1 -0
- data/spec/seafoam/bgv/fixtures/unsupported.bgv +1 -0
- data/spec/seafoam/binary/io_binary_reader_spec.rb +176 -0
- data/spec/seafoam/command_spec.rb +252 -0
- data/spec/seafoam/graph_spec.rb +172 -0
- data/spec/seafoam/graphviz_writer_spec.rb +63 -0
- data/spec/seafoam/spec_helpers.rb +30 -0
- data/spec/seafoam/spotlight_spec.rb +38 -0
- data/tools/render-all +36 -0
- metadata +238 -0
|
Binary file
|
|
@@ -0,0 +1,962 @@
|
|
|
1
|
+
begin_compilation
|
|
2
|
+
name " HotSpotCompilation-362[JavaExamples.exampleUnsafeWrite(long, int)]"
|
|
3
|
+
method "HotSpotCompilation-362[JavaExamples.exampleUnsafeWrite(long, int)]"
|
|
4
|
+
date 1583364092122
|
|
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: v10
|
|
28
|
+
=== Usages ===
|
|
29
|
+
=== Predecessor ===
|
|
30
|
+
- >@ <|@
|
|
31
|
+
instruction <@StartNode|@org.graalvm.compiler.nodes.StartNode>@ stateAfter: - #next: v10 <|@ <|@
|
|
32
|
+
f <@~|@floating>@ <|@
|
|
33
|
+
tid j1 <|@
|
|
34
|
+
d <@d|@=== Debug Properties ===
|
|
35
|
+
index: 0
|
|
36
|
+
stamp: i64
|
|
37
|
+
uncheckedStamp: [null]
|
|
38
|
+
=== Inputs ===
|
|
39
|
+
=== Succesors ===
|
|
40
|
+
=== Usages ===
|
|
41
|
+
v11
|
|
42
|
+
=== Predecessor ===
|
|
43
|
+
- >@ <|@
|
|
44
|
+
instruction <@Parameter|@org.graalvm.compiler.nodes.ParameterNode>@ <|@ <|@
|
|
45
|
+
f <@~|@floating>@ <|@
|
|
46
|
+
tid v11 <|@
|
|
47
|
+
d <@d|@=== Debug Properties ===
|
|
48
|
+
displacement: 0
|
|
49
|
+
scale: Times1
|
|
50
|
+
stamp: void*
|
|
51
|
+
=== Inputs ===
|
|
52
|
+
base: j1
|
|
53
|
+
index: -
|
|
54
|
+
=== Succesors ===
|
|
55
|
+
=== Usages ===
|
|
56
|
+
v10
|
|
57
|
+
=== Predecessor ===
|
|
58
|
+
- >@ <|@
|
|
59
|
+
instruction <@AMD64Address|@org.graalvm.compiler.core.amd64.AMD64AddressNode>@ base: j1 index: - <|@ <|@
|
|
60
|
+
f <@~|@floating>@ <|@
|
|
61
|
+
tid i2 <|@
|
|
62
|
+
d <@d|@=== Debug Properties ===
|
|
63
|
+
index: 1
|
|
64
|
+
stamp: i32
|
|
65
|
+
uncheckedStamp: [null]
|
|
66
|
+
=== Inputs ===
|
|
67
|
+
=== Succesors ===
|
|
68
|
+
=== Usages ===
|
|
69
|
+
v10
|
|
70
|
+
=== Predecessor ===
|
|
71
|
+
- >@ <|@
|
|
72
|
+
instruction <@Parameter|@org.graalvm.compiler.nodes.ParameterNode>@ <|@ <|@
|
|
73
|
+
f <@#|@fixed with next>@ <|@
|
|
74
|
+
tid v10 <|@
|
|
75
|
+
d <@d|@=== Debug Properties ===
|
|
76
|
+
barrierType: NONE
|
|
77
|
+
location: OFF_HEAP_LOCATION
|
|
78
|
+
nodeSourcePosition: at sun.misc.Unsafe.putInt(long, int) [bci: -1]
|
|
79
|
+
at JavaExamples.exampleUnsafeWrite(JavaExamples.java:321) [bci: 5]
|
|
80
|
+
nullCheck: false
|
|
81
|
+
stamp: void
|
|
82
|
+
volatileAccess: false
|
|
83
|
+
=== Inputs ===
|
|
84
|
+
stateBefore: -
|
|
85
|
+
guard: -
|
|
86
|
+
address: v11
|
|
87
|
+
value: i2
|
|
88
|
+
stateAfter: -
|
|
89
|
+
lastLocationAccess: -
|
|
90
|
+
=== Succesors ===
|
|
91
|
+
next: v7
|
|
92
|
+
=== Usages ===
|
|
93
|
+
=== Predecessor ===
|
|
94
|
+
v0 >@ <|@
|
|
95
|
+
instruction <@Write|@org.graalvm.compiler.nodes.memory.WriteNode>@ stateBefore: - guard: - address: v11 value: i2 stateAfter: - lastLocationAccess: - #next: v7 <|@ <|@
|
|
96
|
+
f <@*|@fixed>@ <|@
|
|
97
|
+
tid v7 <|@
|
|
98
|
+
d <@d|@=== Debug Properties ===
|
|
99
|
+
nodeSourcePosition: at JavaExamples.exampleUnsafeWrite(JavaExamples.java:322) [bci: 8]
|
|
100
|
+
stamp: void
|
|
101
|
+
=== Inputs ===
|
|
102
|
+
result: -
|
|
103
|
+
memoryMap: -
|
|
104
|
+
=== Succesors ===
|
|
105
|
+
=== Usages ===
|
|
106
|
+
=== Predecessor ===
|
|
107
|
+
v10 >@ <|@
|
|
108
|
+
instruction <@Return|@org.graalvm.compiler.nodes.ReturnNode>@ result: - memoryMap: - <|@ <|@
|
|
109
|
+
end_IR
|
|
110
|
+
end_block
|
|
111
|
+
end_cfg
|
|
112
|
+
begin_cfg
|
|
113
|
+
name "After LIRGeneration"
|
|
114
|
+
begin_block
|
|
115
|
+
name "B0"
|
|
116
|
+
from_bci -1
|
|
117
|
+
to_bci -1
|
|
118
|
+
predecessors
|
|
119
|
+
successors
|
|
120
|
+
xhandlers
|
|
121
|
+
flags
|
|
122
|
+
probability 4607182418800017408
|
|
123
|
+
begin_IR
|
|
124
|
+
LIR
|
|
125
|
+
nr -1 <|@ instruction [rsi|QWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
|
|
126
|
+
nr -1 <|@ instruction v2|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
|
|
127
|
+
nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d6d35f0 slotKind: QWORD <|@ <|@
|
|
128
|
+
nr -1 <|@ instruction v0|QWORD = MOVE rsi|QWORD moveKind: QWORD <|@ <|@
|
|
129
|
+
nr -1 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
|
|
130
|
+
nr -1 <|@ instruction MOV (x: [v0|QWORD], y: v1|DWORD) size: DWORD <|@ <|@
|
|
131
|
+
nr -1 <|@ instruction RETURN (savedRbp: v2|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@13ae06790 <|@ <|@
|
|
132
|
+
end_IR
|
|
133
|
+
end_block
|
|
134
|
+
end_cfg
|
|
135
|
+
begin_bytecodes
|
|
136
|
+
0: getstatic #61 // UNSAFE:sun.misc.Unsafe
|
|
137
|
+
3: lload_0
|
|
138
|
+
4: iload_2
|
|
139
|
+
5: invokevirtual #63 // sun.misc.Unsafe.putInt:(long, int)void
|
|
140
|
+
8: return
|
|
141
|
+
<|@
|
|
142
|
+
end_bytecodes
|
|
143
|
+
begin_cfg
|
|
144
|
+
name "After LIR generation"
|
|
145
|
+
begin_block
|
|
146
|
+
name "B0"
|
|
147
|
+
from_bci -1
|
|
148
|
+
to_bci -1
|
|
149
|
+
predecessors
|
|
150
|
+
successors
|
|
151
|
+
xhandlers
|
|
152
|
+
flags
|
|
153
|
+
probability 4607182418800017408
|
|
154
|
+
begin_IR
|
|
155
|
+
HIR
|
|
156
|
+
f <@#|@fixed with next>@ <|@
|
|
157
|
+
tid v0 <|@
|
|
158
|
+
d <@d|@=== Debug Properties ===
|
|
159
|
+
stamp: void
|
|
160
|
+
withSpeculationFence: false
|
|
161
|
+
=== Inputs ===
|
|
162
|
+
stateAfter: -
|
|
163
|
+
=== Succesors ===
|
|
164
|
+
next: v10
|
|
165
|
+
=== Usages ===
|
|
166
|
+
=== Predecessor ===
|
|
167
|
+
- >@ <|@
|
|
168
|
+
instruction <@StartNode|@org.graalvm.compiler.nodes.StartNode>@ stateAfter: - #next: v10 <|@ <|@
|
|
169
|
+
f <@~|@floating>@ <|@
|
|
170
|
+
tid j1 <|@
|
|
171
|
+
result v0|QWORD <|@
|
|
172
|
+
d <@d|@=== Debug Properties ===
|
|
173
|
+
index: 0
|
|
174
|
+
stamp: i64
|
|
175
|
+
uncheckedStamp: [null]
|
|
176
|
+
=== Inputs ===
|
|
177
|
+
=== Succesors ===
|
|
178
|
+
=== Usages ===
|
|
179
|
+
v11
|
|
180
|
+
=== Predecessor ===
|
|
181
|
+
- >@ <|@
|
|
182
|
+
instruction <@Parameter|@org.graalvm.compiler.nodes.ParameterNode>@ <|@ <|@
|
|
183
|
+
f <@~|@floating>@ <|@
|
|
184
|
+
tid v11 <|@
|
|
185
|
+
result [v0|QWORD] <|@
|
|
186
|
+
d <@d|@=== Debug Properties ===
|
|
187
|
+
displacement: 0
|
|
188
|
+
scale: Times1
|
|
189
|
+
stamp: void*
|
|
190
|
+
=== Inputs ===
|
|
191
|
+
base: j1
|
|
192
|
+
index: -
|
|
193
|
+
=== Succesors ===
|
|
194
|
+
=== Usages ===
|
|
195
|
+
v10
|
|
196
|
+
=== Predecessor ===
|
|
197
|
+
- >@ <|@
|
|
198
|
+
instruction <@AMD64Address|@org.graalvm.compiler.core.amd64.AMD64AddressNode>@ base: j1 index: - <|@ <|@
|
|
199
|
+
f <@~|@floating>@ <|@
|
|
200
|
+
tid i2 <|@
|
|
201
|
+
result v1|DWORD <|@
|
|
202
|
+
d <@d|@=== Debug Properties ===
|
|
203
|
+
index: 1
|
|
204
|
+
stamp: i32
|
|
205
|
+
uncheckedStamp: [null]
|
|
206
|
+
=== Inputs ===
|
|
207
|
+
=== Succesors ===
|
|
208
|
+
=== Usages ===
|
|
209
|
+
v10
|
|
210
|
+
=== Predecessor ===
|
|
211
|
+
- >@ <|@
|
|
212
|
+
instruction <@Parameter|@org.graalvm.compiler.nodes.ParameterNode>@ <|@ <|@
|
|
213
|
+
f <@#|@fixed with next>@ <|@
|
|
214
|
+
tid v10 <|@
|
|
215
|
+
d <@d|@=== Debug Properties ===
|
|
216
|
+
barrierType: NONE
|
|
217
|
+
location: OFF_HEAP_LOCATION
|
|
218
|
+
nodeSourcePosition: at sun.misc.Unsafe.putInt(long, int) [bci: -1]
|
|
219
|
+
at JavaExamples.exampleUnsafeWrite(JavaExamples.java:321) [bci: 5]
|
|
220
|
+
nullCheck: false
|
|
221
|
+
stamp: void
|
|
222
|
+
volatileAccess: false
|
|
223
|
+
=== Inputs ===
|
|
224
|
+
stateBefore: -
|
|
225
|
+
guard: -
|
|
226
|
+
address: v11
|
|
227
|
+
value: i2
|
|
228
|
+
stateAfter: -
|
|
229
|
+
lastLocationAccess: -
|
|
230
|
+
=== Succesors ===
|
|
231
|
+
next: v7
|
|
232
|
+
=== Usages ===
|
|
233
|
+
=== Predecessor ===
|
|
234
|
+
v0 >@ <|@
|
|
235
|
+
instruction <@Write|@org.graalvm.compiler.nodes.memory.WriteNode>@ stateBefore: - guard: - address: v11 value: i2 stateAfter: - lastLocationAccess: - #next: v7 <|@ <|@
|
|
236
|
+
f <@*|@fixed>@ <|@
|
|
237
|
+
tid v7 <|@
|
|
238
|
+
d <@d|@=== Debug Properties ===
|
|
239
|
+
nodeSourcePosition: at JavaExamples.exampleUnsafeWrite(JavaExamples.java:322) [bci: 8]
|
|
240
|
+
stamp: void
|
|
241
|
+
=== Inputs ===
|
|
242
|
+
result: -
|
|
243
|
+
memoryMap: -
|
|
244
|
+
=== Succesors ===
|
|
245
|
+
=== Usages ===
|
|
246
|
+
=== Predecessor ===
|
|
247
|
+
v10 >@ <|@
|
|
248
|
+
instruction <@Return|@org.graalvm.compiler.nodes.ReturnNode>@ result: - memoryMap: - <|@ <|@
|
|
249
|
+
end_IR
|
|
250
|
+
begin_IR
|
|
251
|
+
LIR
|
|
252
|
+
nr -1 <|@ instruction [rsi|QWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
|
|
253
|
+
nr -1 <|@ instruction v2|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
|
|
254
|
+
nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d6d35f0 slotKind: QWORD <|@ <|@
|
|
255
|
+
nr -1 <|@ instruction v0|QWORD = MOVE rsi|QWORD moveKind: QWORD <|@ <|@
|
|
256
|
+
nr -1 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
|
|
257
|
+
nr -1 <|@ instruction MOV (x: [v0|QWORD], y: v1|DWORD) size: DWORD <|@ <|@
|
|
258
|
+
nr -1 <|@ instruction RETURN (savedRbp: v2|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@13ae06790 <|@ <|@
|
|
259
|
+
end_IR
|
|
260
|
+
end_block
|
|
261
|
+
end_cfg
|
|
262
|
+
begin_cfg
|
|
263
|
+
name "After ConstantLoadOptimization"
|
|
264
|
+
begin_block
|
|
265
|
+
name "B0"
|
|
266
|
+
from_bci -1
|
|
267
|
+
to_bci -1
|
|
268
|
+
predecessors
|
|
269
|
+
successors
|
|
270
|
+
xhandlers
|
|
271
|
+
flags
|
|
272
|
+
probability 4607182418800017408
|
|
273
|
+
begin_IR
|
|
274
|
+
LIR
|
|
275
|
+
nr -1 <|@ instruction [rsi|QWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
|
|
276
|
+
nr -1 <|@ instruction v2|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
|
|
277
|
+
nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d6d35f0 slotKind: QWORD <|@ <|@
|
|
278
|
+
nr -1 <|@ instruction v0|QWORD = MOVE rsi|QWORD moveKind: QWORD <|@ <|@
|
|
279
|
+
nr -1 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
|
|
280
|
+
nr -1 <|@ instruction MOV (x: [v0|QWORD], y: v1|DWORD) size: DWORD <|@ <|@
|
|
281
|
+
nr -1 <|@ instruction RETURN (savedRbp: v2|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@13ae06790 <|@ <|@
|
|
282
|
+
end_IR
|
|
283
|
+
end_block
|
|
284
|
+
end_cfg
|
|
285
|
+
begin_bytecodes
|
|
286
|
+
0: getstatic #61 // UNSAFE:sun.misc.Unsafe
|
|
287
|
+
3: lload_0
|
|
288
|
+
4: iload_2
|
|
289
|
+
5: invokevirtual #63 // sun.misc.Unsafe.putInt:(long, int)void
|
|
290
|
+
8: return
|
|
291
|
+
<|@
|
|
292
|
+
end_bytecodes
|
|
293
|
+
begin_cfg
|
|
294
|
+
name "After SaveCalleeSaveRegisters"
|
|
295
|
+
begin_block
|
|
296
|
+
name "B0"
|
|
297
|
+
from_bci -1
|
|
298
|
+
to_bci -1
|
|
299
|
+
predecessors
|
|
300
|
+
successors
|
|
301
|
+
xhandlers
|
|
302
|
+
flags
|
|
303
|
+
probability 4607182418800017408
|
|
304
|
+
begin_IR
|
|
305
|
+
LIR
|
|
306
|
+
nr -1 <|@ instruction [rsi|QWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
|
|
307
|
+
nr -1 <|@ instruction v2|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
|
|
308
|
+
nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d6d35f0 slotKind: QWORD <|@ <|@
|
|
309
|
+
nr -1 <|@ instruction v0|QWORD = MOVE rsi|QWORD moveKind: QWORD <|@ <|@
|
|
310
|
+
nr -1 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
|
|
311
|
+
nr -1 <|@ instruction MOV (x: [v0|QWORD], y: v1|DWORD) size: DWORD <|@ <|@
|
|
312
|
+
nr -1 <|@ instruction RETURN (savedRbp: v2|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@13ae06790 <|@ <|@
|
|
313
|
+
end_IR
|
|
314
|
+
end_block
|
|
315
|
+
end_cfg
|
|
316
|
+
begin_bytecodes
|
|
317
|
+
0: getstatic #61 // UNSAFE:sun.misc.Unsafe
|
|
318
|
+
3: lload_0
|
|
319
|
+
4: iload_2
|
|
320
|
+
5: invokevirtual #63 // sun.misc.Unsafe.putInt:(long, int)void
|
|
321
|
+
8: return
|
|
322
|
+
<|@
|
|
323
|
+
end_bytecodes
|
|
324
|
+
begin_cfg
|
|
325
|
+
name "After PreAllocationOptimizationStage"
|
|
326
|
+
begin_block
|
|
327
|
+
name "B0"
|
|
328
|
+
from_bci -1
|
|
329
|
+
to_bci -1
|
|
330
|
+
predecessors
|
|
331
|
+
successors
|
|
332
|
+
xhandlers
|
|
333
|
+
flags
|
|
334
|
+
probability 4607182418800017408
|
|
335
|
+
begin_IR
|
|
336
|
+
LIR
|
|
337
|
+
nr -1 <|@ instruction [rsi|QWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
|
|
338
|
+
nr -1 <|@ instruction v2|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
|
|
339
|
+
nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d6d35f0 slotKind: QWORD <|@ <|@
|
|
340
|
+
nr -1 <|@ instruction v0|QWORD = MOVE rsi|QWORD moveKind: QWORD <|@ <|@
|
|
341
|
+
nr -1 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
|
|
342
|
+
nr -1 <|@ instruction MOV (x: [v0|QWORD], y: v1|DWORD) size: DWORD <|@ <|@
|
|
343
|
+
nr -1 <|@ instruction RETURN (savedRbp: v2|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@13ae06790 <|@ <|@
|
|
344
|
+
end_IR
|
|
345
|
+
end_block
|
|
346
|
+
end_cfg
|
|
347
|
+
begin_bytecodes
|
|
348
|
+
0: getstatic #61 // UNSAFE:sun.misc.Unsafe
|
|
349
|
+
3: lload_0
|
|
350
|
+
4: iload_2
|
|
351
|
+
5: invokevirtual #63 // sun.misc.Unsafe.putInt:(long, int)void
|
|
352
|
+
8: return
|
|
353
|
+
<|@
|
|
354
|
+
end_bytecodes
|
|
355
|
+
begin_cfg
|
|
356
|
+
name "After MarkBasePointers"
|
|
357
|
+
begin_block
|
|
358
|
+
name "B0"
|
|
359
|
+
from_bci -1
|
|
360
|
+
to_bci -1
|
|
361
|
+
predecessors
|
|
362
|
+
successors
|
|
363
|
+
xhandlers
|
|
364
|
+
flags
|
|
365
|
+
probability 4607182418800017408
|
|
366
|
+
begin_IR
|
|
367
|
+
LIR
|
|
368
|
+
nr -1 <|@ instruction [rsi|QWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
|
|
369
|
+
nr -1 <|@ instruction v2|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
|
|
370
|
+
nr -1 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d6d35f0 slotKind: QWORD <|@ <|@
|
|
371
|
+
nr -1 <|@ instruction v0|QWORD = MOVE rsi|QWORD moveKind: QWORD <|@ <|@
|
|
372
|
+
nr -1 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
|
|
373
|
+
nr -1 <|@ instruction MOV (x: [v0|QWORD], y: v1|DWORD) size: DWORD <|@ <|@
|
|
374
|
+
nr -1 <|@ instruction RETURN (savedRbp: v2|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@13ae06790 <|@ <|@
|
|
375
|
+
end_IR
|
|
376
|
+
end_block
|
|
377
|
+
end_cfg
|
|
378
|
+
begin_bytecodes
|
|
379
|
+
0: getstatic #61 // UNSAFE:sun.misc.Unsafe
|
|
380
|
+
3: lload_0
|
|
381
|
+
4: iload_2
|
|
382
|
+
5: invokevirtual #63 // sun.misc.Unsafe.putInt:(long, int)void
|
|
383
|
+
8: return
|
|
384
|
+
<|@
|
|
385
|
+
end_bytecodes
|
|
386
|
+
begin_cfg
|
|
387
|
+
name "Before register allocation"
|
|
388
|
+
begin_block
|
|
389
|
+
name "B0"
|
|
390
|
+
from_bci -1
|
|
391
|
+
to_bci -1
|
|
392
|
+
predecessors
|
|
393
|
+
successors
|
|
394
|
+
xhandlers
|
|
395
|
+
flags
|
|
396
|
+
probability 4607182418800017408
|
|
397
|
+
begin_IR
|
|
398
|
+
LIR
|
|
399
|
+
nr 0 <|@ instruction [rsi|QWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
|
|
400
|
+
nr 2 <|@ instruction v2|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
|
|
401
|
+
nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d6d35f0 slotKind: QWORD <|@ <|@
|
|
402
|
+
nr 6 <|@ instruction v0|QWORD = MOVE rsi|QWORD moveKind: QWORD <|@ <|@
|
|
403
|
+
nr 8 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
|
|
404
|
+
nr 10 <|@ instruction MOV (x: [v0|QWORD], y: v1|DWORD) size: DWORD <|@ <|@
|
|
405
|
+
nr 12 <|@ instruction RETURN (savedRbp: v2|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@13ae06790 <|@ <|@
|
|
406
|
+
end_IR
|
|
407
|
+
end_block
|
|
408
|
+
end_cfg
|
|
409
|
+
begin_bytecodes
|
|
410
|
+
0: getstatic #61 // UNSAFE:sun.misc.Unsafe
|
|
411
|
+
3: lload_0
|
|
412
|
+
4: iload_2
|
|
413
|
+
5: invokevirtual #63 // sun.misc.Unsafe.putInt:(long, int)void
|
|
414
|
+
8: return
|
|
415
|
+
<|@
|
|
416
|
+
end_bytecodes
|
|
417
|
+
begin_cfg
|
|
418
|
+
name "After SSALinearScanLifetimeAnalysis"
|
|
419
|
+
begin_block
|
|
420
|
+
name "B0"
|
|
421
|
+
from_bci -1
|
|
422
|
+
to_bci -1
|
|
423
|
+
predecessors
|
|
424
|
+
successors
|
|
425
|
+
xhandlers
|
|
426
|
+
flags
|
|
427
|
+
probability 4607182418800017408
|
|
428
|
+
begin_IR
|
|
429
|
+
LIR
|
|
430
|
+
nr 0 <|@ instruction [rsi|QWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
|
|
431
|
+
nr 2 <|@ instruction v2|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
|
|
432
|
+
nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d6d35f0 slotKind: QWORD <|@ <|@
|
|
433
|
+
nr 6 <|@ instruction v0|QWORD = MOVE rsi|QWORD moveKind: QWORD <|@ <|@
|
|
434
|
+
nr 8 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
|
|
435
|
+
nr 10 <|@ instruction MOV (x: [v0|QWORD], y: v1|DWORD) size: DWORD <|@ <|@
|
|
436
|
+
nr 12 <|@ instruction RETURN (savedRbp: v2|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@13ae06790 <|@ <|@
|
|
437
|
+
end_IR
|
|
438
|
+
end_block
|
|
439
|
+
end_cfg
|
|
440
|
+
begin_bytecodes
|
|
441
|
+
0: getstatic #61 // UNSAFE:sun.misc.Unsafe
|
|
442
|
+
3: lload_0
|
|
443
|
+
4: iload_2
|
|
444
|
+
5: invokevirtual #63 // sun.misc.Unsafe.putInt:(long, int)void
|
|
445
|
+
8: return
|
|
446
|
+
<|@
|
|
447
|
+
end_bytecodes
|
|
448
|
+
begin_intervals
|
|
449
|
+
name "Before register allocation"
|
|
450
|
+
rdx|d fixed "[rdx|d]" rdx|d -1 [0, 8[ "NoSpillStore"
|
|
451
|
+
rbp|q fixed "[rbp|q]" rbp|q -1 [0, 2[ "NoSpillStore"
|
|
452
|
+
rsi|q fixed "[rsi|q]" rsi|q -1 [0, 6[ "NoSpillStore"
|
|
453
|
+
v0|q QWORD "[v0|q]" v0|q rsi|q [6, 10[6 MustHaveRegister 10 MustHaveRegister "NoSpillStore"
|
|
454
|
+
v1|d DWORD "[v1|d]" v1|d rdx|d [8, 10[8 MustHaveRegister 10 MustHaveRegister "NoSpillStore"
|
|
455
|
+
v2|q QWORD "[v2|q]" v2|q rbp|q [2, 12[2 MustHaveRegister 12 ShouldHaveRegister "NoSpillStore"
|
|
456
|
+
end_intervals
|
|
457
|
+
begin_intervals
|
|
458
|
+
name "After register allocation"
|
|
459
|
+
rdx|d fixed "[rdx|d]" rdx|d -1 [0, 8[ "NoSpillStore"
|
|
460
|
+
rbp|q fixed "[rbp|q]" rbp|q -1 [0, 2[ "NoSpillStore"
|
|
461
|
+
rsi|q fixed "[rsi|q]" rsi|q -1 [0, 6[ "NoSpillStore"
|
|
462
|
+
v0|q QWORD "[rsi|q]" v0|q rsi|q [6, 10[6 MustHaveRegister 10 MustHaveRegister "NoSpillStore"
|
|
463
|
+
v1|d DWORD "[rdx|d]" v1|d rdx|d [8, 10[8 MustHaveRegister 10 MustHaveRegister "NoSpillStore"
|
|
464
|
+
v2|q QWORD "[rbp|q]" v2|q rbp|q [2, 12[2 MustHaveRegister 12 ShouldHaveRegister "NoSpillStore"
|
|
465
|
+
end_intervals
|
|
466
|
+
begin_cfg
|
|
467
|
+
name "After LinearScanRegisterAllocation"
|
|
468
|
+
begin_block
|
|
469
|
+
name "B0"
|
|
470
|
+
from_bci -1
|
|
471
|
+
to_bci -1
|
|
472
|
+
predecessors
|
|
473
|
+
successors
|
|
474
|
+
xhandlers
|
|
475
|
+
flags
|
|
476
|
+
probability 4607182418800017408
|
|
477
|
+
begin_IR
|
|
478
|
+
LIR
|
|
479
|
+
nr 0 <|@ instruction [rsi|QWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
|
|
480
|
+
nr 2 <|@ instruction v2|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
|
|
481
|
+
nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d6d35f0 slotKind: QWORD <|@ <|@
|
|
482
|
+
nr 6 <|@ instruction v0|QWORD = MOVE rsi|QWORD moveKind: QWORD <|@ <|@
|
|
483
|
+
nr 8 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
|
|
484
|
+
nr 10 <|@ instruction MOV (x: [v0|QWORD], y: v1|DWORD) size: DWORD <|@ <|@
|
|
485
|
+
nr 12 <|@ instruction RETURN (savedRbp: v2|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@13ae06790 <|@ <|@
|
|
486
|
+
end_IR
|
|
487
|
+
end_block
|
|
488
|
+
end_cfg
|
|
489
|
+
begin_bytecodes
|
|
490
|
+
0: getstatic #61 // UNSAFE:sun.misc.Unsafe
|
|
491
|
+
3: lload_0
|
|
492
|
+
4: iload_2
|
|
493
|
+
5: invokevirtual #63 // sun.misc.Unsafe.putInt:(long, int)void
|
|
494
|
+
8: return
|
|
495
|
+
<|@
|
|
496
|
+
end_bytecodes
|
|
497
|
+
begin_intervals
|
|
498
|
+
name "After optimize spill position"
|
|
499
|
+
rdx|d fixed "[rdx|d]" rdx|d -1 [0, 8[ "NoSpillStore"
|
|
500
|
+
rbp|q fixed "[rbp|q]" rbp|q -1 [0, 2[ "NoSpillStore"
|
|
501
|
+
rsi|q fixed "[rsi|q]" rsi|q -1 [0, 6[ "NoSpillStore"
|
|
502
|
+
v0|q QWORD "[rsi|q]" v0|q rsi|q [6, 10[6 MustHaveRegister 10 MustHaveRegister "NoSpillStore"
|
|
503
|
+
v1|d DWORD "[rdx|d]" v1|d rdx|d [8, 10[8 MustHaveRegister 10 MustHaveRegister "NoSpillStore"
|
|
504
|
+
v2|q QWORD "[rbp|q]" v2|q rbp|q [2, 12[2 MustHaveRegister 12 ShouldHaveRegister "NoSpillStore"
|
|
505
|
+
end_intervals
|
|
506
|
+
begin_cfg
|
|
507
|
+
name "After LinearScanOptimizeSpillPosition"
|
|
508
|
+
begin_block
|
|
509
|
+
name "B0"
|
|
510
|
+
from_bci -1
|
|
511
|
+
to_bci -1
|
|
512
|
+
predecessors
|
|
513
|
+
successors
|
|
514
|
+
xhandlers
|
|
515
|
+
flags
|
|
516
|
+
probability 4607182418800017408
|
|
517
|
+
begin_IR
|
|
518
|
+
LIR
|
|
519
|
+
nr 0 <|@ instruction [rsi|QWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
|
|
520
|
+
nr 2 <|@ instruction v2|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
|
|
521
|
+
nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d6d35f0 slotKind: QWORD <|@ <|@
|
|
522
|
+
nr 6 <|@ instruction v0|QWORD = MOVE rsi|QWORD moveKind: QWORD <|@ <|@
|
|
523
|
+
nr 8 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
|
|
524
|
+
nr 10 <|@ instruction MOV (x: [v0|QWORD], y: v1|DWORD) size: DWORD <|@ <|@
|
|
525
|
+
nr 12 <|@ instruction RETURN (savedRbp: v2|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@13ae06790 <|@ <|@
|
|
526
|
+
end_IR
|
|
527
|
+
end_block
|
|
528
|
+
end_cfg
|
|
529
|
+
begin_bytecodes
|
|
530
|
+
0: getstatic #61 // UNSAFE:sun.misc.Unsafe
|
|
531
|
+
3: lload_0
|
|
532
|
+
4: iload_2
|
|
533
|
+
5: invokevirtual #63 // sun.misc.Unsafe.putInt:(long, int)void
|
|
534
|
+
8: return
|
|
535
|
+
<|@
|
|
536
|
+
end_bytecodes
|
|
537
|
+
begin_intervals
|
|
538
|
+
name "After resolve data flow"
|
|
539
|
+
rdx|d fixed "[rdx|d]" rdx|d -1 [0, 8[ "NoSpillStore"
|
|
540
|
+
rbp|q fixed "[rbp|q]" rbp|q -1 [0, 2[ "NoSpillStore"
|
|
541
|
+
rsi|q fixed "[rsi|q]" rsi|q -1 [0, 6[ "NoSpillStore"
|
|
542
|
+
v0|q QWORD "[rsi|q]" v0|q rsi|q [6, 10[6 MustHaveRegister 10 MustHaveRegister "NoSpillStore"
|
|
543
|
+
v1|d DWORD "[rdx|d]" v1|d rdx|d [8, 10[8 MustHaveRegister 10 MustHaveRegister "NoSpillStore"
|
|
544
|
+
v2|q QWORD "[rbp|q]" v2|q rbp|q [2, 12[2 MustHaveRegister 12 ShouldHaveRegister "NoSpillStore"
|
|
545
|
+
end_intervals
|
|
546
|
+
begin_cfg
|
|
547
|
+
name "After SSALinearScanResolveDataFlow"
|
|
548
|
+
begin_block
|
|
549
|
+
name "B0"
|
|
550
|
+
from_bci -1
|
|
551
|
+
to_bci -1
|
|
552
|
+
predecessors
|
|
553
|
+
successors
|
|
554
|
+
xhandlers
|
|
555
|
+
flags
|
|
556
|
+
probability 4607182418800017408
|
|
557
|
+
begin_IR
|
|
558
|
+
LIR
|
|
559
|
+
nr 0 <|@ instruction [rsi|QWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
|
|
560
|
+
nr 2 <|@ instruction v2|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
|
|
561
|
+
nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d6d35f0 slotKind: QWORD <|@ <|@
|
|
562
|
+
nr 6 <|@ instruction v0|QWORD = MOVE rsi|QWORD moveKind: QWORD <|@ <|@
|
|
563
|
+
nr 8 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
|
|
564
|
+
nr 10 <|@ instruction MOV (x: [v0|QWORD], y: v1|DWORD) size: DWORD <|@ <|@
|
|
565
|
+
nr 12 <|@ instruction RETURN (savedRbp: v2|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@13ae06790 <|@ <|@
|
|
566
|
+
end_IR
|
|
567
|
+
end_block
|
|
568
|
+
end_cfg
|
|
569
|
+
begin_bytecodes
|
|
570
|
+
0: getstatic #61 // UNSAFE:sun.misc.Unsafe
|
|
571
|
+
3: lload_0
|
|
572
|
+
4: iload_2
|
|
573
|
+
5: invokevirtual #63 // sun.misc.Unsafe.putInt:(long, int)void
|
|
574
|
+
8: return
|
|
575
|
+
<|@
|
|
576
|
+
end_bytecodes
|
|
577
|
+
begin_cfg
|
|
578
|
+
name "After SSALinearScanEliminateSpillMove"
|
|
579
|
+
begin_block
|
|
580
|
+
name "B0"
|
|
581
|
+
from_bci -1
|
|
582
|
+
to_bci -1
|
|
583
|
+
predecessors
|
|
584
|
+
successors
|
|
585
|
+
xhandlers
|
|
586
|
+
flags
|
|
587
|
+
probability 4607182418800017408
|
|
588
|
+
begin_IR
|
|
589
|
+
LIR
|
|
590
|
+
nr 0 <|@ instruction [rsi|QWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
|
|
591
|
+
nr 2 <|@ instruction v2|QWORD = MOVE rbp|QWORD moveKind: QWORD <|@ <|@
|
|
592
|
+
nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d6d35f0 slotKind: QWORD <|@ <|@
|
|
593
|
+
nr 6 <|@ instruction v0|QWORD = MOVE rsi|QWORD moveKind: QWORD <|@ <|@
|
|
594
|
+
nr 8 <|@ instruction v1|DWORD = MOVE rdx|DWORD moveKind: DWORD <|@ <|@
|
|
595
|
+
nr 10 <|@ instruction MOV (x: [v0|QWORD], y: v1|DWORD) size: DWORD <|@ <|@
|
|
596
|
+
nr 12 <|@ instruction RETURN (savedRbp: v2|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@13ae06790 <|@ <|@
|
|
597
|
+
end_IR
|
|
598
|
+
end_block
|
|
599
|
+
end_cfg
|
|
600
|
+
begin_bytecodes
|
|
601
|
+
0: getstatic #61 // UNSAFE:sun.misc.Unsafe
|
|
602
|
+
3: lload_0
|
|
603
|
+
4: iload_2
|
|
604
|
+
5: invokevirtual #63 // sun.misc.Unsafe.putInt:(long, int)void
|
|
605
|
+
8: return
|
|
606
|
+
<|@
|
|
607
|
+
end_bytecodes
|
|
608
|
+
begin_cfg
|
|
609
|
+
name "After LinearScanAssignLocations"
|
|
610
|
+
begin_block
|
|
611
|
+
name "B0"
|
|
612
|
+
from_bci -1
|
|
613
|
+
to_bci -1
|
|
614
|
+
predecessors
|
|
615
|
+
successors
|
|
616
|
+
xhandlers
|
|
617
|
+
flags
|
|
618
|
+
probability 4607182418800017408
|
|
619
|
+
begin_IR
|
|
620
|
+
LIR
|
|
621
|
+
nr 0 <|@ instruction [rsi|QWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
|
|
622
|
+
nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d6d35f0 slotKind: QWORD <|@ <|@
|
|
623
|
+
nr 10 <|@ instruction MOV (x: [rsi|QWORD], y: rdx|DWORD) size: DWORD <|@ <|@
|
|
624
|
+
nr 12 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@13ae06790 <|@ <|@
|
|
625
|
+
end_IR
|
|
626
|
+
end_block
|
|
627
|
+
end_cfg
|
|
628
|
+
begin_bytecodes
|
|
629
|
+
0: getstatic #61 // UNSAFE:sun.misc.Unsafe
|
|
630
|
+
3: lload_0
|
|
631
|
+
4: iload_2
|
|
632
|
+
5: invokevirtual #63 // sun.misc.Unsafe.putInt:(long, int)void
|
|
633
|
+
8: return
|
|
634
|
+
<|@
|
|
635
|
+
end_bytecodes
|
|
636
|
+
begin_cfg
|
|
637
|
+
name "After LinearScan"
|
|
638
|
+
begin_block
|
|
639
|
+
name "B0"
|
|
640
|
+
from_bci -1
|
|
641
|
+
to_bci -1
|
|
642
|
+
predecessors
|
|
643
|
+
successors
|
|
644
|
+
xhandlers
|
|
645
|
+
flags
|
|
646
|
+
probability 4607182418800017408
|
|
647
|
+
begin_IR
|
|
648
|
+
LIR
|
|
649
|
+
nr 0 <|@ instruction [rsi|QWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
|
|
650
|
+
nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d6d35f0 slotKind: QWORD <|@ <|@
|
|
651
|
+
nr 10 <|@ instruction MOV (x: [rsi|QWORD], y: rdx|DWORD) size: DWORD <|@ <|@
|
|
652
|
+
nr 12 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@13ae06790 <|@ <|@
|
|
653
|
+
end_IR
|
|
654
|
+
end_block
|
|
655
|
+
end_cfg
|
|
656
|
+
begin_bytecodes
|
|
657
|
+
0: getstatic #61 // UNSAFE:sun.misc.Unsafe
|
|
658
|
+
3: lload_0
|
|
659
|
+
4: iload_2
|
|
660
|
+
5: invokevirtual #63 // sun.misc.Unsafe.putInt:(long, int)void
|
|
661
|
+
8: return
|
|
662
|
+
<|@
|
|
663
|
+
end_bytecodes
|
|
664
|
+
begin_cfg
|
|
665
|
+
name "After LSStackSlotAllocator"
|
|
666
|
+
begin_block
|
|
667
|
+
name "B0"
|
|
668
|
+
from_bci -1
|
|
669
|
+
to_bci -1
|
|
670
|
+
predecessors
|
|
671
|
+
successors
|
|
672
|
+
xhandlers
|
|
673
|
+
flags
|
|
674
|
+
probability 4607182418800017408
|
|
675
|
+
begin_IR
|
|
676
|
+
LIR
|
|
677
|
+
nr 0 <|@ instruction [rsi|QWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
|
|
678
|
+
nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d6d35f0 slotKind: QWORD <|@ <|@
|
|
679
|
+
nr 10 <|@ instruction MOV (x: [rsi|QWORD], y: rdx|DWORD) size: DWORD <|@ <|@
|
|
680
|
+
nr 12 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@13ae06790 <|@ <|@
|
|
681
|
+
end_IR
|
|
682
|
+
end_block
|
|
683
|
+
end_cfg
|
|
684
|
+
begin_bytecodes
|
|
685
|
+
0: getstatic #61 // UNSAFE:sun.misc.Unsafe
|
|
686
|
+
3: lload_0
|
|
687
|
+
4: iload_2
|
|
688
|
+
5: invokevirtual #63 // sun.misc.Unsafe.putInt:(long, int)void
|
|
689
|
+
8: return
|
|
690
|
+
<|@
|
|
691
|
+
end_bytecodes
|
|
692
|
+
begin_cfg
|
|
693
|
+
name "After LocationMarker"
|
|
694
|
+
begin_block
|
|
695
|
+
name "B0"
|
|
696
|
+
from_bci -1
|
|
697
|
+
to_bci -1
|
|
698
|
+
predecessors
|
|
699
|
+
successors
|
|
700
|
+
xhandlers
|
|
701
|
+
flags
|
|
702
|
+
probability 4607182418800017408
|
|
703
|
+
begin_IR
|
|
704
|
+
LIR
|
|
705
|
+
nr 0 <|@ instruction [rsi|QWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
|
|
706
|
+
nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d6d35f0 slotKind: QWORD <|@ <|@
|
|
707
|
+
nr 10 <|@ instruction MOV (x: [rsi|QWORD], y: rdx|DWORD) size: DWORD <|@ <|@
|
|
708
|
+
nr 12 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@13ae06790 <|@ <|@
|
|
709
|
+
end_IR
|
|
710
|
+
end_block
|
|
711
|
+
end_cfg
|
|
712
|
+
begin_bytecodes
|
|
713
|
+
0: getstatic #61 // UNSAFE:sun.misc.Unsafe
|
|
714
|
+
3: lload_0
|
|
715
|
+
4: iload_2
|
|
716
|
+
5: invokevirtual #63 // sun.misc.Unsafe.putInt:(long, int)void
|
|
717
|
+
8: return
|
|
718
|
+
<|@
|
|
719
|
+
end_bytecodes
|
|
720
|
+
begin_cfg
|
|
721
|
+
name "After AllocationStage"
|
|
722
|
+
begin_block
|
|
723
|
+
name "B0"
|
|
724
|
+
from_bci -1
|
|
725
|
+
to_bci -1
|
|
726
|
+
predecessors
|
|
727
|
+
successors
|
|
728
|
+
xhandlers
|
|
729
|
+
flags
|
|
730
|
+
probability 4607182418800017408
|
|
731
|
+
begin_IR
|
|
732
|
+
LIR
|
|
733
|
+
nr 0 <|@ instruction [rsi|QWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
|
|
734
|
+
nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d6d35f0 slotKind: QWORD <|@ <|@
|
|
735
|
+
nr 10 <|@ instruction MOV (x: [rsi|QWORD], y: rdx|DWORD) size: DWORD <|@ <|@
|
|
736
|
+
nr 12 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@13ae06790 <|@ <|@
|
|
737
|
+
end_IR
|
|
738
|
+
end_block
|
|
739
|
+
end_cfg
|
|
740
|
+
begin_bytecodes
|
|
741
|
+
0: getstatic #61 // UNSAFE:sun.misc.Unsafe
|
|
742
|
+
3: lload_0
|
|
743
|
+
4: iload_2
|
|
744
|
+
5: invokevirtual #63 // sun.misc.Unsafe.putInt:(long, int)void
|
|
745
|
+
8: return
|
|
746
|
+
<|@
|
|
747
|
+
end_bytecodes
|
|
748
|
+
begin_cfg
|
|
749
|
+
name "After EdgeMoveOptimizer"
|
|
750
|
+
begin_block
|
|
751
|
+
name "B0"
|
|
752
|
+
from_bci -1
|
|
753
|
+
to_bci -1
|
|
754
|
+
predecessors
|
|
755
|
+
successors
|
|
756
|
+
xhandlers
|
|
757
|
+
flags
|
|
758
|
+
probability 4607182418800017408
|
|
759
|
+
begin_IR
|
|
760
|
+
LIR
|
|
761
|
+
nr 0 <|@ instruction [rsi|QWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
|
|
762
|
+
nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d6d35f0 slotKind: QWORD <|@ <|@
|
|
763
|
+
nr 10 <|@ instruction MOV (x: [rsi|QWORD], y: rdx|DWORD) size: DWORD <|@ <|@
|
|
764
|
+
nr 12 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@13ae06790 <|@ <|@
|
|
765
|
+
end_IR
|
|
766
|
+
end_block
|
|
767
|
+
end_cfg
|
|
768
|
+
begin_bytecodes
|
|
769
|
+
0: getstatic #61 // UNSAFE:sun.misc.Unsafe
|
|
770
|
+
3: lload_0
|
|
771
|
+
4: iload_2
|
|
772
|
+
5: invokevirtual #63 // sun.misc.Unsafe.putInt:(long, int)void
|
|
773
|
+
8: return
|
|
774
|
+
<|@
|
|
775
|
+
end_bytecodes
|
|
776
|
+
begin_cfg
|
|
777
|
+
name "After ControlFlowOptimizer"
|
|
778
|
+
begin_block
|
|
779
|
+
name "B0"
|
|
780
|
+
from_bci -1
|
|
781
|
+
to_bci -1
|
|
782
|
+
predecessors
|
|
783
|
+
successors
|
|
784
|
+
xhandlers
|
|
785
|
+
flags
|
|
786
|
+
probability 4607182418800017408
|
|
787
|
+
begin_IR
|
|
788
|
+
LIR
|
|
789
|
+
nr 0 <|@ instruction [rsi|QWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
|
|
790
|
+
nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d6d35f0 slotKind: QWORD <|@ <|@
|
|
791
|
+
nr 10 <|@ instruction MOV (x: [rsi|QWORD], y: rdx|DWORD) size: DWORD <|@ <|@
|
|
792
|
+
nr 12 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@13ae06790 <|@ <|@
|
|
793
|
+
end_IR
|
|
794
|
+
end_block
|
|
795
|
+
end_cfg
|
|
796
|
+
begin_bytecodes
|
|
797
|
+
0: getstatic #61 // UNSAFE:sun.misc.Unsafe
|
|
798
|
+
3: lload_0
|
|
799
|
+
4: iload_2
|
|
800
|
+
5: invokevirtual #63 // sun.misc.Unsafe.putInt:(long, int)void
|
|
801
|
+
8: return
|
|
802
|
+
<|@
|
|
803
|
+
end_bytecodes
|
|
804
|
+
begin_cfg
|
|
805
|
+
name "After RedundantMoveElimination"
|
|
806
|
+
begin_block
|
|
807
|
+
name "B0"
|
|
808
|
+
from_bci -1
|
|
809
|
+
to_bci -1
|
|
810
|
+
predecessors
|
|
811
|
+
successors
|
|
812
|
+
xhandlers
|
|
813
|
+
flags
|
|
814
|
+
probability 4607182418800017408
|
|
815
|
+
begin_IR
|
|
816
|
+
LIR
|
|
817
|
+
nr 0 <|@ instruction [rsi|QWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
|
|
818
|
+
nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d6d35f0 slotKind: QWORD <|@ <|@
|
|
819
|
+
nr 10 <|@ instruction MOV (x: [rsi|QWORD], y: rdx|DWORD) size: DWORD <|@ <|@
|
|
820
|
+
nr 12 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@13ae06790 <|@ <|@
|
|
821
|
+
end_IR
|
|
822
|
+
end_block
|
|
823
|
+
end_cfg
|
|
824
|
+
begin_bytecodes
|
|
825
|
+
0: getstatic #61 // UNSAFE:sun.misc.Unsafe
|
|
826
|
+
3: lload_0
|
|
827
|
+
4: iload_2
|
|
828
|
+
5: invokevirtual #63 // sun.misc.Unsafe.putInt:(long, int)void
|
|
829
|
+
8: return
|
|
830
|
+
<|@
|
|
831
|
+
end_bytecodes
|
|
832
|
+
begin_cfg
|
|
833
|
+
name "After NullCheckOptimizer"
|
|
834
|
+
begin_block
|
|
835
|
+
name "B0"
|
|
836
|
+
from_bci -1
|
|
837
|
+
to_bci -1
|
|
838
|
+
predecessors
|
|
839
|
+
successors
|
|
840
|
+
xhandlers
|
|
841
|
+
flags
|
|
842
|
+
probability 4607182418800017408
|
|
843
|
+
begin_IR
|
|
844
|
+
LIR
|
|
845
|
+
nr 0 <|@ instruction [rsi|QWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
|
|
846
|
+
nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d6d35f0 slotKind: QWORD <|@ <|@
|
|
847
|
+
nr 10 <|@ instruction MOV (x: [rsi|QWORD], y: rdx|DWORD) size: DWORD <|@ <|@
|
|
848
|
+
nr 12 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@13ae06790 <|@ <|@
|
|
849
|
+
end_IR
|
|
850
|
+
end_block
|
|
851
|
+
end_cfg
|
|
852
|
+
begin_bytecodes
|
|
853
|
+
0: getstatic #61 // UNSAFE:sun.misc.Unsafe
|
|
854
|
+
3: lload_0
|
|
855
|
+
4: iload_2
|
|
856
|
+
5: invokevirtual #63 // sun.misc.Unsafe.putInt:(long, int)void
|
|
857
|
+
8: return
|
|
858
|
+
<|@
|
|
859
|
+
end_bytecodes
|
|
860
|
+
begin_cfg
|
|
861
|
+
name "After StackMoveOptimization"
|
|
862
|
+
begin_block
|
|
863
|
+
name "B0"
|
|
864
|
+
from_bci -1
|
|
865
|
+
to_bci -1
|
|
866
|
+
predecessors
|
|
867
|
+
successors
|
|
868
|
+
xhandlers
|
|
869
|
+
flags
|
|
870
|
+
probability 4607182418800017408
|
|
871
|
+
begin_IR
|
|
872
|
+
LIR
|
|
873
|
+
nr 0 <|@ instruction [rsi|QWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
|
|
874
|
+
nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d6d35f0 slotKind: QWORD <|@ <|@
|
|
875
|
+
nr 10 <|@ instruction MOV (x: [rsi|QWORD], y: rdx|DWORD) size: DWORD <|@ <|@
|
|
876
|
+
nr 12 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@13ae06790 <|@ <|@
|
|
877
|
+
end_IR
|
|
878
|
+
end_block
|
|
879
|
+
end_cfg
|
|
880
|
+
begin_bytecodes
|
|
881
|
+
0: getstatic #61 // UNSAFE:sun.misc.Unsafe
|
|
882
|
+
3: lload_0
|
|
883
|
+
4: iload_2
|
|
884
|
+
5: invokevirtual #63 // sun.misc.Unsafe.putInt:(long, int)void
|
|
885
|
+
8: return
|
|
886
|
+
<|@
|
|
887
|
+
end_bytecodes
|
|
888
|
+
begin_cfg
|
|
889
|
+
name "After PostAllocationOptimizationStage"
|
|
890
|
+
begin_block
|
|
891
|
+
name "B0"
|
|
892
|
+
from_bci -1
|
|
893
|
+
to_bci -1
|
|
894
|
+
predecessors
|
|
895
|
+
successors
|
|
896
|
+
xhandlers
|
|
897
|
+
flags
|
|
898
|
+
probability 4607182418800017408
|
|
899
|
+
begin_IR
|
|
900
|
+
LIR
|
|
901
|
+
nr 0 <|@ instruction [rsi|QWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <|@ <|@
|
|
902
|
+
nr 4 <|@ instruction [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d6d35f0 slotKind: QWORD <|@ <|@
|
|
903
|
+
nr 10 <|@ instruction MOV (x: [rsi|QWORD], y: rdx|DWORD) size: DWORD <|@ <|@
|
|
904
|
+
nr 12 <|@ instruction RETURN (savedRbp: rbp|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@13ae06790 <|@ <|@
|
|
905
|
+
end_IR
|
|
906
|
+
end_block
|
|
907
|
+
end_cfg
|
|
908
|
+
begin_bytecodes
|
|
909
|
+
0: getstatic #61 // UNSAFE:sun.misc.Unsafe
|
|
910
|
+
3: lload_0
|
|
911
|
+
4: iload_2
|
|
912
|
+
5: invokevirtual #63 // sun.misc.Unsafe.putInt:(long, int)void
|
|
913
|
+
8: return
|
|
914
|
+
<|@
|
|
915
|
+
end_bytecodes
|
|
916
|
+
begin_cfg
|
|
917
|
+
name "After code generation"
|
|
918
|
+
end_cfg
|
|
919
|
+
begin_nmethod
|
|
920
|
+
<<<HexCodeFile
|
|
921
|
+
Platform AMD64 64 <||@
|
|
922
|
+
HexCode 0 0f1f4400008916850500000000c5f877c3e80000000090e80000000090 <||@
|
|
923
|
+
Comment 0 3 <||@
|
|
924
|
+
Comment 0 1 <||@
|
|
925
|
+
Comment 5 block B0 null <||@
|
|
926
|
+
Comment 5 0 [rsi|QWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <||@
|
|
927
|
+
Comment 5 4 [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d6d35f0 slotKind: QWORD <||@
|
|
928
|
+
Comment 5 10 MOV (x: [rsi|QWORD], y: rdx|DWORD) size: DWORD <||@
|
|
929
|
+
Comment 7 12 RETURN (savedRbp: rbp|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@13ae06790 <||@
|
|
930
|
+
Comment 7 12 <||@
|
|
931
|
+
Comment 17 {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} <||@
|
|
932
|
+
Comment 17 4 <||@
|
|
933
|
+
Comment 23 {Field[name=CompilerToVM::Data::SharedRuntime_deopt_blob_unpack, type=address, offset=0, address=0x1108bc128, value=4610474560]:0x112ce4240} <||@
|
|
934
|
+
Comment 23 5 <||@
|
|
935
|
+
HexCodeFile>>> <|@
|
|
936
|
+
end_nmethod
|
|
937
|
+
begin_compilation
|
|
938
|
+
name " HotSpotCompilation-362[JavaExamples.exampleUnsafeWrite(long, int)]"
|
|
939
|
+
method "HotSpotCompilation-362[JavaExamples.exampleUnsafeWrite(long, int)]"
|
|
940
|
+
date 1583364092137
|
|
941
|
+
end_compilation
|
|
942
|
+
begin_cfg
|
|
943
|
+
name "After code installation"
|
|
944
|
+
end_cfg
|
|
945
|
+
begin_nmethod
|
|
946
|
+
<<<HexCodeFile
|
|
947
|
+
Platform AMD64 64 <||@
|
|
948
|
+
HexCode 112e37420 0f1f44000089168505d93b93fbc5f877c3e8eacefeff90e804ceeaff90f4f4f4 <||@
|
|
949
|
+
Comment 0 3 <||@
|
|
950
|
+
Comment 0 1 <||@
|
|
951
|
+
Comment 5 block B0 null <||@
|
|
952
|
+
Comment 5 0 [rsi|QWORD, rdx|DWORD, rbp|QWORD] = LABEL numbPhis: 0 align: false label: ? <||@
|
|
953
|
+
Comment 5 4 [] = HOTSPOTLOCKSTACK frameMapBuilder: org.graalvm.compiler.lir.amd64.AMD64FrameMapBuilder@13d6d35f0 slotKind: QWORD <||@
|
|
954
|
+
Comment 5 10 MOV (x: [rsi|QWORD], y: rdx|DWORD) size: DWORD <||@
|
|
955
|
+
Comment 7 12 RETURN (savedRbp: rbp|QWORD, value: -) isStub: false requiresReservedStackAccessCheck: false thread: r15 scratchForSafepointOnReturn: rcx config: org.graalvm.compiler.hotspot.GraalHotSpotVMConfig@13ae06790 <||@
|
|
956
|
+
Comment 7 12 <||@
|
|
957
|
+
Comment 17 {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} <||@
|
|
958
|
+
Comment 17 4 <||@
|
|
959
|
+
Comment 23 {Field[name=CompilerToVM::Data::SharedRuntime_deopt_blob_unpack, type=address, offset=0, address=0x1108bc128, value=4610474560]:0x112ce4240} <||@
|
|
960
|
+
Comment 23 5 <||@
|
|
961
|
+
HexCodeFile>>> <|@
|
|
962
|
+
end_nmethod
|