@Override public IsolateThread createIsolate(CreateIsolateParameters parameters) throws IsolateException { if (!SubstrateOptions.SpawnIsolates.getValue()) { throw new IsolateException(ISOLATES_DISABLED_MESSAGE); } CEntryPointCreateIsolateParameters params = StackValue.get(CEntryPointCreateIsolateParameters.class); params.setReservedSpaceSize(parameters.getReservedAddressSpaceSize()); params.setVersion(1); IsolateThreadPointer isolateThreadPtr = StackValue.get(IsolateThreadPointer.class); throwOnError(CEntryPointNativeFunctions.createIsolate(params, WordFactory.nullPointer(), isolateThreadPtr)); return isolateThreadPtr.read(); }