Skip to content

Commit 54dfa94

Browse files
Perform static field initialization during init, not prepare
1 parent 7a35200 commit 54dfa94

File tree

1 file changed

+6
-5
lines changed
  • espresso/src/com.oracle.truffle.espresso/src/com/oracle/truffle/espresso/impl

1 file changed

+6
-5
lines changed

espresso/src/com.oracle.truffle.espresso/src/com/oracle/truffle/espresso/impl/ObjectKlass.java

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -418,6 +418,12 @@ private void actualInit() {
418418
initState = INITIALIZING;
419419
getContext().getLogger().log(Level.FINEST, "Initializing: {0}", this.getNameAsString());
420420

421+
for (Field f : getInitialStaticFields()) {
422+
if (!f.isRemoved()) {
423+
initField(f);
424+
}
425+
}
426+
421427
var tls = getContext().getLanguage().getThreadLocalState();
422428
tls.blockContinuationSuspension();
423429
try {
@@ -477,11 +483,6 @@ private void prepare() {
477483
try {
478484
if (!isPrepared()) {
479485
checkLoadingConstraints();
480-
for (Field f : getInitialStaticFields()) {
481-
if (!f.isRemoved()) {
482-
initField(f);
483-
}
484-
}
485486
initState = PREPARED;
486487
if (getContext().isMainThreadCreated()) {
487488
if (getContext().shouldReportVMEvents()) {

0 commit comments

Comments
 (0)