src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm/src/org/graalvm/compiler/asm/Buffer.java
--- a/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm/src/org/graalvm/compiler/asm/Buffer.java Thu Oct 17 20:27:44 2019 +0100
+++ b/src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.asm/src/org/graalvm/compiler/asm/Buffer.java Thu Oct 17 20:53:35 2019 +0100
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2009, 2018, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2009, 2019, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -24,12 +24,13 @@
package org.graalvm.compiler.asm;
-import org.graalvm.compiler.core.common.NumUtil;
-
import java.nio.ByteBuffer;
import java.nio.ByteOrder;
import java.util.Arrays;
+import org.graalvm.compiler.core.common.NumUtil;
+import org.graalvm.compiler.serviceprovider.BufferUtil;
+
/**
* Code buffer management for the assembler.
*/
@@ -48,7 +49,7 @@
public void setPosition(int position) {
assert position >= 0 && position <= data.limit();
- data.position(position);
+ BufferUtil.asBaseBuffer(data).position(position);
}
/**
@@ -93,7 +94,7 @@
byte[] newBuf = Arrays.copyOf(data.array(), length * 4);
ByteBuffer newData = ByteBuffer.wrap(newBuf);
newData.order(data.order());
- newData.position(data.position());
+ BufferUtil.asBaseBuffer(newData).position(data.position());
data = newData;
}
}
@@ -170,6 +171,6 @@
}
public void reset() {
- data.clear();
+ BufferUtil.asBaseBuffer(data).clear();
}
}