blob: dd8fabfceaaaf97dc28b44247543309dcb941b28 [file]
@ForceInline
public $type$ get$Type$(MemorySessionImpl session, Object base, long offset) {
try {
return get$Type$Internal(session, base, offset);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private $type$ get$Type$Internal(MemorySessionImpl session, Object base, long offset) {
try {
if (session != null) {
session.checkValidStateRaw();
}
return UNSAFE.get$Type$(base, offset);
} finally {
Reference.reachabilityFence(session);
}
}
@ForceInline
public void put$Type$(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
put$Type$Internal(session, base, offset, value);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private void put$Type$Internal(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
if (session != null) {
session.checkValidStateRaw();
}
UNSAFE.put$Type$(base, offset, value);
} finally {
Reference.reachabilityFence(session);
}
}
#if[Unaligned]
@ForceInline
public $type$ get$Type$Unaligned(MemorySessionImpl session, Object base, long offset, boolean be) {
try {
return get$Type$UnalignedInternal(session, base, offset, be);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private $type$ get$Type$UnalignedInternal(MemorySessionImpl session, Object base, long offset, boolean be) {
try {
if (session != null) {
session.checkValidStateRaw();
}
return UNSAFE.get$Type$Unaligned(base, offset, be);
} finally {
Reference.reachabilityFence(session);
}
}
@ForceInline
public void put$Type$Unaligned(MemorySessionImpl session, Object base, long offset, $type$ value, boolean be) {
try {
put$Type$UnalignedInternal(session, base, offset, value, be);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private void put$Type$UnalignedInternal(MemorySessionImpl session, Object base, long offset, $type$ value, boolean be) {
try {
if (session != null) {
session.checkValidStateRaw();
}
UNSAFE.put$Type$Unaligned(base, offset, value, be);
} finally {
Reference.reachabilityFence(session);
}
}
#end[Unaligned]
@ForceInline
public $type$ get$Type$Volatile(MemorySessionImpl session, Object base, long offset) {
try {
return get$Type$VolatileInternal(session, base, offset);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private $type$ get$Type$VolatileInternal(MemorySessionImpl session, Object base, long offset) {
try {
if (session != null) {
session.checkValidStateRaw();
}
return UNSAFE.get$Type$Volatile(base, offset);
} finally {
Reference.reachabilityFence(session);
}
}
@ForceInline
public void put$Type$Volatile(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
put$Type$VolatileInternal(session, base, offset, value);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private void put$Type$VolatileInternal(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
if (session != null) {
session.checkValidStateRaw();
}
UNSAFE.put$Type$Volatile(base, offset, value);
} finally {
Reference.reachabilityFence(session);
}
}
@ForceInline
public $type$ get$Type$Acquire(MemorySessionImpl session, Object base, long offset) {
try {
return get$Type$AcquireInternal(session, base, offset);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private $type$ get$Type$AcquireInternal(MemorySessionImpl session, Object base, long offset) {
try {
if (session != null) {
session.checkValidStateRaw();
}
return UNSAFE.get$Type$Acquire(base, offset);
} finally {
Reference.reachabilityFence(session);
}
}
@ForceInline
public void put$Type$Release(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
put$Type$ReleaseInternal(session, base, offset, value);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private void put$Type$ReleaseInternal(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
if (session != null) {
session.checkValidStateRaw();
}
UNSAFE.put$Type$Release(base, offset, value);
} finally {
Reference.reachabilityFence(session);
}
}
@ForceInline
public $type$ get$Type$Opaque(MemorySessionImpl session, Object base, long offset) {
try {
return get$Type$OpaqueInternal(session, base, offset);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private $type$ get$Type$OpaqueInternal(MemorySessionImpl session, Object base, long offset) {
try {
if (session != null) {
session.checkValidStateRaw();
}
return UNSAFE.get$Type$Opaque(base, offset);
} finally {
Reference.reachabilityFence(session);
}
}
@ForceInline
public void put$Type$Opaque(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
put$Type$OpaqueInternal(session, base, offset, value);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private void put$Type$OpaqueInternal(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
if (session != null) {
session.checkValidStateRaw();
}
UNSAFE.put$Type$Opaque(base, offset, value);
} finally {
Reference.reachabilityFence(session);
}
}
#if[CAS]
@ForceInline
public boolean compareAndSet$Type$(MemorySessionImpl session, Object base, long offset, $type$ expected, $type$ value) {
try {
return compareAndSet$Type$Internal(session, base, offset, expected, value);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private boolean compareAndSet$Type$Internal(MemorySessionImpl session, Object base, long offset, $type$ expected, $type$ value) {
try {
if (session != null) {
session.checkValidStateRaw();
}
return UNSAFE.compareAndSet$Type$(base, offset, expected, value);
} finally {
Reference.reachabilityFence(session);
}
}
@ForceInline
public $type$ compareAndExchange$Type$(MemorySessionImpl session, Object base, long offset, $type$ expected, $type$ value) {
try {
return compareAndExchange$Type$Internal(session, base, offset, expected, value);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private $type$ compareAndExchange$Type$Internal(MemorySessionImpl session, Object base, long offset, $type$ expected, $type$ value) {
try {
if (session != null) {
session.checkValidStateRaw();
}
return UNSAFE.compareAndExchange$Type$(base, offset, expected, value);
} finally {
Reference.reachabilityFence(session);
}
}
@ForceInline
public $type$ compareAndExchange$Type$Acquire(MemorySessionImpl session, Object base, long offset, $type$ expected, $type$ value) {
try {
return compareAndExchange$Type$AcquireInternal(session, base, offset, expected, value);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private $type$ compareAndExchange$Type$AcquireInternal(MemorySessionImpl session, Object base, long offset, $type$ expected, $type$ value) {
try {
if (session != null) {
session.checkValidStateRaw();
}
return UNSAFE.compareAndExchange$Type$Acquire(base, offset, expected, value);
} finally {
Reference.reachabilityFence(session);
}
}
@ForceInline
public $type$ compareAndExchange$Type$Release(MemorySessionImpl session, Object base, long offset, $type$ expected, $type$ value) {
try {
return compareAndExchange$Type$ReleaseInternal(session, base, offset, expected, value);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private $type$ compareAndExchange$Type$ReleaseInternal(MemorySessionImpl session, Object base, long offset, $type$ expected, $type$ value) {
try {
if (session != null) {
session.checkValidStateRaw();
}
return UNSAFE.compareAndExchange$Type$Release(base, offset, expected, value);
} finally {
Reference.reachabilityFence(session);
}
}
@ForceInline
public boolean weakCompareAndSet$Type$Plain(MemorySessionImpl session, Object base, long offset, $type$ expected, $type$ value) {
try {
return weakCompareAndSet$Type$PlainInternal(session, base, offset, expected, value);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private boolean weakCompareAndSet$Type$PlainInternal(MemorySessionImpl session, Object base, long offset, $type$ expected, $type$ value) {
try {
if (session != null) {
session.checkValidStateRaw();
}
return UNSAFE.weakCompareAndSet$Type$Plain(base, offset, expected, value);
} finally {
Reference.reachabilityFence(session);
}
}
@ForceInline
public boolean weakCompareAndSet$Type$(MemorySessionImpl session, Object base, long offset, $type$ expected, $type$ value) {
try {
return weakCompareAndSet$Type$Internal(session, base, offset, expected, value);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private boolean weakCompareAndSet$Type$Internal(MemorySessionImpl session, Object base, long offset, $type$ expected, $type$ value) {
try {
if (session != null) {
session.checkValidStateRaw();
}
return UNSAFE.weakCompareAndSet$Type$(base, offset, expected, value);
} finally {
Reference.reachabilityFence(session);
}
}
@ForceInline
public boolean weakCompareAndSet$Type$Acquire(MemorySessionImpl session, Object base, long offset, $type$ expected, $type$ value) {
try {
return weakCompareAndSet$Type$AcquireInternal(session, base, offset, expected, value);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private boolean weakCompareAndSet$Type$AcquireInternal(MemorySessionImpl session, Object base, long offset, $type$ expected, $type$ value) {
try {
if (session != null) {
session.checkValidStateRaw();
}
return UNSAFE.weakCompareAndSet$Type$Acquire(base, offset, expected, value);
} finally {
Reference.reachabilityFence(session);
}
}
@ForceInline
public boolean weakCompareAndSet$Type$Release(MemorySessionImpl session, Object base, long offset, $type$ expected, $type$ value) {
try {
return weakCompareAndSet$Type$ReleaseInternal(session, base, offset, expected, value);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private boolean weakCompareAndSet$Type$ReleaseInternal(MemorySessionImpl session, Object base, long offset, $type$ expected, $type$ value) {
try {
if (session != null) {
session.checkValidStateRaw();
}
return UNSAFE.weakCompareAndSet$Type$Release(base, offset, expected, value);
} finally {
Reference.reachabilityFence(session);
}
}
@ForceInline
public $type$ getAndSet$Type$(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
return getAndSet$Type$Internal(session, base, offset, value);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private $type$ getAndSet$Type$Internal(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
if (session != null) {
session.checkValidStateRaw();
}
return UNSAFE.getAndSet$Type$(base, offset, value);
} finally {
Reference.reachabilityFence(session);
}
}
@ForceInline
public $type$ getAndSet$Type$Acquire(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
return getAndSet$Type$AcquireInternal(session, base, offset, value);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private $type$ getAndSet$Type$AcquireInternal(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
if (session != null) {
session.checkValidStateRaw();
}
return UNSAFE.getAndSet$Type$Acquire(base, offset, value);
} finally {
Reference.reachabilityFence(session);
}
}
@ForceInline
public $type$ getAndSet$Type$Release(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
return getAndSet$Type$ReleaseInternal(session, base, offset, value);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private $type$ getAndSet$Type$ReleaseInternal(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
if (session != null) {
session.checkValidStateRaw();
}
return UNSAFE.getAndSet$Type$Release(base, offset, value);
} finally {
Reference.reachabilityFence(session);
}
}
#end[CAS]
#if[AtomicAdd]
@ForceInline
public $type$ getAndAdd$Type$(MemorySessionImpl session, Object base, long offset, $type$ delta) {
try {
return getAndAdd$Type$Internal(session, base, offset, delta);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private $type$ getAndAdd$Type$Internal(MemorySessionImpl session, Object base, long offset, $type$ delta) {
try {
if (session != null) {
session.checkValidStateRaw();
}
return UNSAFE.getAndAdd$Type$(base, offset, delta);
} finally {
Reference.reachabilityFence(session);
}
}
@ForceInline
public $type$ getAndAdd$Type$Acquire(MemorySessionImpl session, Object base, long offset, $type$ delta) {
try {
return getAndAdd$Type$AcquireInternal(session, base, offset, delta);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private $type$ getAndAdd$Type$AcquireInternal(MemorySessionImpl session, Object base, long offset, $type$ delta) {
try {
if (session != null) {
session.checkValidStateRaw();
}
return UNSAFE.getAndAdd$Type$Acquire(base, offset, delta);
} finally {
Reference.reachabilityFence(session);
}
}
@ForceInline
public $type$ getAndAdd$Type$Release(MemorySessionImpl session, Object base, long offset, $type$ delta) {
try {
return getAndAdd$Type$ReleaseInternal(session, base, offset, delta);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private $type$ getAndAdd$Type$ReleaseInternal(MemorySessionImpl session, Object base, long offset, $type$ delta) {
try {
if (session != null) {
session.checkValidStateRaw();
}
return UNSAFE.getAndAdd$Type$Release(base, offset, delta);
} finally {
Reference.reachabilityFence(session);
}
}
#end[AtomicAdd]
#if[Bitwise]
@ForceInline
public $type$ getAndBitwiseOr$Type$(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
return getAndBitwiseOr$Type$Internal(session, base, offset, value);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private $type$ getAndBitwiseOr$Type$Internal(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
if (session != null) {
session.checkValidStateRaw();
}
return UNSAFE.getAndBitwiseOr$Type$(base, offset, value);
} finally {
Reference.reachabilityFence(session);
}
}
@ForceInline
public $type$ getAndBitwiseOr$Type$Acquire(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
return getAndBitwiseOr$Type$AcquireInternal(session, base, offset, value);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private $type$ getAndBitwiseOr$Type$AcquireInternal(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
if (session != null) {
session.checkValidStateRaw();
}
return UNSAFE.getAndBitwiseOr$Type$Acquire(base, offset, value);
} finally {
Reference.reachabilityFence(session);
}
}
@ForceInline
public $type$ getAndBitwiseOr$Type$Release(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
return getAndBitwiseOr$Type$ReleaseInternal(session, base, offset, value);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private $type$ getAndBitwiseOr$Type$ReleaseInternal(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
if (session != null) {
session.checkValidStateRaw();
}
return UNSAFE.getAndBitwiseOr$Type$Release(base, offset, value);
} finally {
Reference.reachabilityFence(session);
}
}
@ForceInline
public $type$ getAndBitwiseAnd$Type$(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
return getAndBitwiseAnd$Type$Internal(session, base, offset, value);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private $type$ getAndBitwiseAnd$Type$Internal(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
if (session != null) {
session.checkValidStateRaw();
}
return UNSAFE.getAndBitwiseAnd$Type$(base, offset, value);
} finally {
Reference.reachabilityFence(session);
}
}
@ForceInline
public $type$ getAndBitwiseAnd$Type$Acquire(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
return getAndBitwiseAnd$Type$AcquireInternal(session, base, offset, value);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private $type$ getAndBitwiseAnd$Type$AcquireInternal(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
if (session != null) {
session.checkValidStateRaw();
}
return UNSAFE.getAndBitwiseAnd$Type$Acquire(base, offset, value);
} finally {
Reference.reachabilityFence(session);
}
}
@ForceInline
public $type$ getAndBitwiseAnd$Type$Release(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
return getAndBitwiseAnd$Type$ReleaseInternal(session, base, offset, value);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private $type$ getAndBitwiseAnd$Type$ReleaseInternal(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
if (session != null) {
session.checkValidStateRaw();
}
return UNSAFE.getAndBitwiseAnd$Type$Release(base, offset, value);
} finally {
Reference.reachabilityFence(session);
}
}
@ForceInline
public $type$ getAndBitwiseXor$Type$(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
return getAndBitwiseXor$Type$Internal(session, base, offset, value);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private $type$ getAndBitwiseXor$Type$Internal(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
if (session != null) {
session.checkValidStateRaw();
}
return UNSAFE.getAndBitwiseXor$Type$(base, offset, value);
} finally {
Reference.reachabilityFence(session);
}
}
@ForceInline
public $type$ getAndBitwiseXor$Type$Acquire(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
return getAndBitwiseXor$Type$AcquireInternal(session, base, offset, value);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private $type$ getAndBitwiseXor$Type$AcquireInternal(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
if (session != null) {
session.checkValidStateRaw();
}
return UNSAFE.getAndBitwiseXor$Type$Acquire(base, offset, value);
} finally {
Reference.reachabilityFence(session);
}
}
@ForceInline
public $type$ getAndBitwiseXor$Type$Release(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
return getAndBitwiseXor$Type$ReleaseInternal(session, base, offset, value);
} catch (ScopedAccessError ex) {
throw ex.newRuntimeException();
}
}
@ForceInline @Scoped
private $type$ getAndBitwiseXor$Type$ReleaseInternal(MemorySessionImpl session, Object base, long offset, $type$ value) {
try {
if (session != null) {
session.checkValidStateRaw();
}
return UNSAFE.getAndBitwiseXor$Type$Release(base, offset, value);
} finally {
Reference.reachabilityFence(session);
}
}
#end[Bitwise]