Skip to content

Commit 56b53e6

Browse files
committed
Disable HPy debug mode if backend isn't JNI
1 parent cff75cc commit 56b53e6

File tree

1 file changed

+10
-10
lines changed
  • graalpython/com.oracle.graal.python/src/com/oracle/graal/python/builtins/objects/cext/hpy

1 file changed

+10
-10
lines changed

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/builtins/objects/cext/hpy/GraalHPyContext.java

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -81,14 +81,6 @@
8181
import java.util.concurrent.atomic.AtomicReference;
8282
import java.util.logging.Level;
8383

84-
import com.oracle.graal.python.builtins.objects.common.EconomicMapStorage;
85-
import com.oracle.truffle.api.strings.TruffleString;
86-
import com.oracle.graal.python.builtins.objects.cext.hpy.GraalHPyNodes.HPyRaiseNode;
87-
import com.oracle.graal.python.builtins.objects.cext.hpy.GraalHPyNodes.HPyTransformExceptionToNativeNode;
88-
import com.oracle.graal.python.lib.PyObjectGetItem;
89-
import com.oracle.graal.python.lib.PyObjectSetItem;
90-
import com.oracle.graal.python.runtime.GilNode.UncachedAcquire;
91-
import com.oracle.truffle.api.dsl.Fallback;
9284
import org.graalvm.nativeimage.ImageInfo;
9385

9486
import com.oracle.graal.python.PythonLanguage;
@@ -205,13 +197,16 @@
205197
import com.oracle.graal.python.builtins.objects.cext.hpy.GraalHPyContextFunctions.GraalHPyUnicodeSubstring;
206198
import com.oracle.graal.python.builtins.objects.cext.hpy.GraalHPyContextFunctions.ReturnType;
207199
import com.oracle.graal.python.builtins.objects.cext.hpy.GraalHPyNodes.HPyAttachFunctionTypeNode;
200+
import com.oracle.graal.python.builtins.objects.cext.hpy.GraalHPyNodes.HPyRaiseNode;
201+
import com.oracle.graal.python.builtins.objects.cext.hpy.GraalHPyNodes.HPyTransformExceptionToNativeNode;
208202
import com.oracle.graal.python.builtins.objects.cext.hpy.GraalHPyNodes.PCallHPyFunction;
209203
import com.oracle.graal.python.builtins.objects.cext.hpy.GraalHPyNodesFactory.HPyAsPythonObjectNodeGen;
210204
import com.oracle.graal.python.builtins.objects.cext.hpy.GraalHPyNodesFactory.HPyGetNativeSpacePointerNodeGen;
211205
import com.oracle.graal.python.builtins.objects.cext.hpy.GraalHPyNodesFactory.HPyRaiseNodeGen;
212206
import com.oracle.graal.python.builtins.objects.cext.hpy.GraalHPyNodesFactory.HPyTransformExceptionToNativeNodeGen;
213207
import com.oracle.graal.python.builtins.objects.cext.hpy.GraalHPyNodesFactory.PCallHPyFunctionNodeGen;
214208
import com.oracle.graal.python.builtins.objects.cext.hpy.HPyExternalFunctionNodes.HPyCheckFunctionResultNode;
209+
import com.oracle.graal.python.builtins.objects.common.EconomicMapStorage;
215210
import com.oracle.graal.python.builtins.objects.common.EmptyStorage;
216211
import com.oracle.graal.python.builtins.objects.common.HashingStorage;
217212
import com.oracle.graal.python.builtins.objects.common.HashingStorageLibrary;
@@ -234,6 +229,8 @@
234229
import com.oracle.graal.python.lib.PyFloatAsDoubleNodeGen;
235230
import com.oracle.graal.python.lib.PyIndexCheckNodeGen;
236231
import com.oracle.graal.python.lib.PyLongAsDoubleNodeGen;
232+
import com.oracle.graal.python.lib.PyObjectGetItem;
233+
import com.oracle.graal.python.lib.PyObjectSetItem;
237234
import com.oracle.graal.python.lib.PyObjectSizeNodeGen;
238235
import com.oracle.graal.python.nodes.BuiltinNames;
239236
import com.oracle.graal.python.nodes.ErrorMessages;
@@ -255,6 +252,7 @@
255252
import com.oracle.graal.python.nodes.util.CastToJavaIntExactNode;
256253
import com.oracle.graal.python.runtime.AsyncHandler;
257254
import com.oracle.graal.python.runtime.GilNode;
255+
import com.oracle.graal.python.runtime.GilNode.UncachedAcquire;
258256
import com.oracle.graal.python.runtime.PythonContext;
259257
import com.oracle.graal.python.runtime.PythonOptions;
260258
import com.oracle.graal.python.runtime.PythonOptions.HPyBackendMode;
@@ -279,6 +277,7 @@
279277
import com.oracle.truffle.api.TruffleLogger;
280278
import com.oracle.truffle.api.dsl.Cached;
281279
import com.oracle.truffle.api.dsl.Cached.Shared;
280+
import com.oracle.truffle.api.dsl.Fallback;
282281
import com.oracle.truffle.api.dsl.GenerateUncached;
283282
import com.oracle.truffle.api.dsl.ImportStatic;
284283
import com.oracle.truffle.api.dsl.Specialization;
@@ -299,6 +298,7 @@
299298
import com.oracle.truffle.api.object.Shape;
300299
import com.oracle.truffle.api.source.Source;
301300
import com.oracle.truffle.api.source.Source.SourceBuilder;
301+
import com.oracle.truffle.api.strings.TruffleString;
302302
import com.oracle.truffle.llvm.spi.NativeTypeLibrary;
303303
import com.oracle.truffle.nfi.api.SignatureLibrary;
304304

@@ -1302,7 +1302,7 @@ public long getWcharSize() {
13021302
public long getHPyDebugContext() throws ApiInitException {
13031303
if (hPyDebugContext == 0) {
13041304
CompilerDirectives.transferToInterpreter();
1305-
if (!getContext().getEnv().isNativeAccessAllowed()) {
1305+
if (!getContext().getEnv().isNativeAccessAllowed() || getContext().getLanguage().getEngineOption(PythonOptions.HPyBackend) != HPyBackendMode.JNI) {
13061306
throw new ApiInitException(null, null, ErrorMessages.HPY_DEBUG_MODE_NOT_AVAILABLE);
13071307
}
13081308
try {
@@ -1322,7 +1322,7 @@ public long getHPyDebugContext() throws ApiInitException {
13221322

13231323
@TruffleBoundary
13241324
public PythonModule getHPyDebugModule() throws ImportException {
1325-
if (!getContext().getEnv().isNativeAccessAllowed()) {
1325+
if (!getContext().getEnv().isNativeAccessAllowed() || getContext().getLanguage().getEngineOption(PythonOptions.HPyBackend) != HPyBackendMode.JNI) {
13261326
throw new ImportException(null, null, null, ErrorMessages.HPY_DEBUG_MODE_NOT_AVAILABLE);
13271327
}
13281328

0 commit comments

Comments
 (0)