mirror of
https://github.com/OpenHFT/Chronicle-Map.git
synced 2021-09-13 01:26:12 +00:00
Added ARM support for UnsafeMemory, https://github.com/OpenHFT/OpenHFT/issues/23
This commit is contained in:
Regular → Executable
+20
-12
@@ -23,7 +23,6 @@ import net.openhft.chronicle.core.OS;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.nio.BufferOverflowException;
|
||||
import java.nio.BufferUnderflowException;
|
||||
import java.nio.ByteBuffer;
|
||||
|
||||
public enum ZeroBytesStore implements BytesStore<ZeroBytesStore, Void> {
|
||||
@@ -40,22 +39,22 @@ public enum ZeroBytesStore implements BytesStore<ZeroBytesStore, Void> {
|
||||
}
|
||||
|
||||
@Override
|
||||
public byte readVolatileByte(long offset) throws BufferUnderflowException {
|
||||
public byte readVolatileByte(long offset) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public short readVolatileShort(long offset) throws BufferUnderflowException {
|
||||
public short readVolatileShort(long offset) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int readVolatileInt(long offset) throws BufferUnderflowException {
|
||||
public int readVolatileInt(long offset) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public long readVolatileLong(long offset) throws BufferUnderflowException {
|
||||
public long readVolatileLong(long offset) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -128,20 +127,29 @@ public enum ZeroBytesStore implements BytesStore<ZeroBytesStore, Void> {
|
||||
}
|
||||
|
||||
@Override
|
||||
public long addressForRead(long offset) throws UnsupportedOperationException {
|
||||
public long addressForRead(long offset) {
|
||||
return offset;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean compareAndSwapInt(long offset, int expected, int value)
|
||||
throws BufferOverflowException, IllegalArgumentException {
|
||||
throw new UnsupportedOperationException();
|
||||
public boolean compareAndSwapInt(long offset, int expected, int value) {
|
||||
if (expected != 0 || value != 0)
|
||||
throw new UnsupportedOperationException();
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean compareAndSwapLong(long offset, long expected, long value)
|
||||
throws BufferOverflowException, IllegalArgumentException {
|
||||
throw new UnsupportedOperationException();
|
||||
public void testAndSetInt(long offset, int expected, int value) {
|
||||
if (expected != 0 || value != 0)
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public boolean compareAndSwapLong(long offset, long expected, long value) {
|
||||
if (expected != 0 || value != 0)
|
||||
throw new UnsupportedOperationException();
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user