From d558bbd7e2bac2271bee5d64971486d5ff36cb6b Mon Sep 17 00:00:00 2001 From: Florian Angerer <florian.angerer@oracle.com> Date: Thu, 1 Jun 2017 18:15:07 +0200 Subject: [PATCH] Inserted missing TruffleBoundary. --- .../src/com/oracle/truffle/r/engine/REngine.java | 4 ++-- .../oracle/truffle/r/engine/shell/JLineConsoleCompleter.java | 2 +- .../truffle/r/library/methods/MethodsListDispatch.java | 2 +- .../src/com/oracle/truffle/r/nodes/builtin/base/Exists.java | 4 ++-- .../oracle/truffle/r/nodes/builtin/fastr/FastRTreeStats.java | 2 +- .../truffle/r/nodes/access/variables/ReadVariableNode.java | 2 +- .../r/nodes/access/vector/CachedExtractVectorNode.java | 3 ++- .../oracle/truffle/r/nodes/function/PromiseHelperNode.java | 5 +++++ .../truffle/r/nodes/function/S3FunctionLookupNode.java | 4 ++-- .../truffle/r/nodes/objects/CollectGenericArgumentsNode.java | 2 +- 10 files changed, 18 insertions(+), 12 deletions(-) diff --git a/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/REngine.java b/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/REngine.java index 6c2f34cee1..eaa5cfbb48 100644 --- a/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/REngine.java +++ b/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/REngine.java @@ -454,7 +454,7 @@ final class REngine implements Engine, Engine.Timings { for (int i = 0; i < newArgs.length; i++) { Object arg = newArgs[i]; if (arg instanceof RPromise) { - newArgs[i] = PromiseHelperNode.evaluateSlowPath(null, (RPromise) arg); + newArgs[i] = PromiseHelperNode.evaluateSlowPath((RPromise) arg); } } } @@ -681,6 +681,6 @@ final class REngine implements Engine, Engine.Timings { } private static Object evaluatePromise(Object value) { - return value instanceof RPromise ? PromiseHelperNode.evaluateSlowPath(null, (RPromise) value) : value; + return value instanceof RPromise ? PromiseHelperNode.evaluateSlowPath((RPromise) value) : value; } } diff --git a/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/shell/JLineConsoleCompleter.java b/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/shell/JLineConsoleCompleter.java index 3d2a62fd7f..b5e7c8ae1e 100644 --- a/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/shell/JLineConsoleCompleter.java +++ b/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/shell/JLineConsoleCompleter.java @@ -78,7 +78,7 @@ public class JLineConsoleCompleter implements Completer { REnvironment utils = REnvironment.getRegisteredNamespace("utils"); Object o = utils.get(".completeToken"); if (o instanceof RPromise) { - o = PromiseHelperNode.evaluateSlowPath(null, (RPromise) o); + o = PromiseHelperNode.evaluateSlowPath((RPromise) o); } RFunction completeToken; if (o instanceof RFunction) { diff --git a/com.oracle.truffle.r.library/src/com/oracle/truffle/r/library/methods/MethodsListDispatch.java b/com.oracle.truffle.r.library/src/com/oracle/truffle/r/library/methods/MethodsListDispatch.java index 5ec3a48535..00ac91621b 100644 --- a/com.oracle.truffle.r.library/src/com/oracle/truffle/r/library/methods/MethodsListDispatch.java +++ b/com.oracle.truffle.r.library/src/com/oracle/truffle/r/library/methods/MethodsListDispatch.java @@ -423,7 +423,7 @@ public class MethodsListDispatch { Object res = FrameSlotChangeMonitor.getValue(slot, currentFrame); if (res != null) { if (res instanceof RPromise) { - res = PromiseHelperNode.evaluateSlowPath(null, (RPromise) res); + res = PromiseHelperNode.evaluateSlowPath((RPromise) res); } } return res; diff --git a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/Exists.java b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/Exists.java index 2e8a04837d..51bf909561 100644 --- a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/Exists.java +++ b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/Exists.java @@ -66,14 +66,14 @@ public abstract class Exists extends RBuiltinNode.Arg4 { if (!inherits) { Object obj = env.get(name); if (modeType != RType.Any && obj instanceof RPromise) { - obj = PromiseHelperNode.evaluateSlowPath(null, (RPromise) obj); + obj = PromiseHelperNode.evaluateSlowPath((RPromise) obj); } return RRuntime.asLogical(obj != null && RRuntime.checkType(obj, modeType)); } for (REnvironment e = env; e != REnvironment.emptyEnv(); e = e.getParent()) { Object obj = e.get(name); if (modeType != RType.Any && obj instanceof RPromise) { - obj = PromiseHelperNode.evaluateSlowPath(null, (RPromise) obj); + obj = PromiseHelperNode.evaluateSlowPath((RPromise) obj); } if (obj != null && RRuntime.checkType(obj, modeType)) { return RRuntime.LOGICAL_TRUE; diff --git a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/fastr/FastRTreeStats.java b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/fastr/FastRTreeStats.java index 75a82d6766..71a45e6142 100644 --- a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/fastr/FastRTreeStats.java +++ b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/fastr/FastRTreeStats.java @@ -73,7 +73,7 @@ public abstract class FastRTreeStats extends RBuiltinNode.Arg1 { String binding = bindings.getDataAt(i); Object value = env.get(binding); if (value instanceof RPromise) { - value = PromiseHelperNode.evaluateSlowPath(null, (RPromise) value); + value = PromiseHelperNode.evaluateSlowPath((RPromise) value); } if (value instanceof RFunction) { diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/access/variables/ReadVariableNode.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/access/variables/ReadVariableNode.java index d784b3d0a1..dc171181ab 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/access/variables/ReadVariableNode.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/access/variables/ReadVariableNode.java @@ -755,7 +755,7 @@ public final class ReadVariableNode extends RSourceSectionNode implements RSynta throw RError.error(RError.SHOW_CALLER, RError.Message.ARGUMENT_MISSING, identifier); } if (value instanceof RPromise) { - return PromiseHelperNode.evaluateSlowPath(null, (RPromise) value); + return PromiseHelperNode.evaluateSlowPath((RPromise) value); } return value; } diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/access/vector/CachedExtractVectorNode.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/access/vector/CachedExtractVectorNode.java index 7e8564b4ec..0ce9148bd5 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/access/vector/CachedExtractVectorNode.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/access/vector/CachedExtractVectorNode.java @@ -249,6 +249,7 @@ final class CachedExtractVectorNode extends CachedVectorNode { return extractedVector; } + @TruffleBoundary private Object doEnvironment(REnvironment env, Object[] positions) { if (mode.isSubset()) { throw error(RError.Message.OBJECT_NOT_SUBSETTABLE, RType.Environment.getName()); @@ -258,7 +259,7 @@ final class CachedExtractVectorNode extends CachedVectorNode { if (positionString != null) { Object obj = env.get(positionString); if (promiseInEnvironment.profile(obj instanceof RPromise)) { - obj = PromiseHelperNode.evaluateSlowPath(null, (RPromise) obj); + obj = PromiseHelperNode.evaluateSlowPath((RPromise) obj); } return obj == null ? RNull.instance : obj; } diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/function/PromiseHelperNode.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/function/PromiseHelperNode.java index b635984a2c..ade76a4014 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/function/PromiseHelperNode.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/function/PromiseHelperNode.java @@ -223,6 +223,11 @@ public class PromiseHelperNode extends RBaseNode { return generateValueDefault(frame, promise); } + @TruffleBoundary + public static Object evaluateSlowPath(RPromise promise) { + return evaluateSlowPath(null, promise); + } + public static Object evaluateSlowPath(VirtualFrame frame, RPromise promise) { CompilerAsserts.neverPartOfCompilation(); if (promise.isEvaluated()) { diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/function/S3FunctionLookupNode.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/function/S3FunctionLookupNode.java index b520673ff9..7447a2e1f7 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/function/S3FunctionLookupNode.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/function/S3FunctionLookupNode.java @@ -109,7 +109,7 @@ public abstract class S3FunctionLookupNode extends RBaseNode { Result result; Object methodsTable = getTable.get(); if (methodsTable instanceof RPromise) { - methodsTable = PromiseHelperNode.evaluateSlowPath(null, (RPromise) methodsTable); + methodsTable = PromiseHelperNode.evaluateSlowPath((RPromise) methodsTable); } MaterializedFrame methodsTableFrame = methodsTable == null ? null : ((REnvironment) methodsTable).getFrame(); @@ -173,7 +173,7 @@ public abstract class S3FunctionLookupNode extends RBaseNode { private static RFunction checkPromise(Object value) { if (value instanceof RPromise) { - return (RFunction) PromiseHelperNode.evaluateSlowPath(null, (RPromise) value); + return (RFunction) PromiseHelperNode.evaluateSlowPath((RPromise) value); } else { return (RFunction) value; } diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/objects/CollectGenericArgumentsNode.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/objects/CollectGenericArgumentsNode.java index f8b51386ac..c5fe1e156e 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/objects/CollectGenericArgumentsNode.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/objects/CollectGenericArgumentsNode.java @@ -120,7 +120,7 @@ public abstract class CollectGenericArgumentsNode extends RBaseNode { } else { Object value = FrameSlotChangeMonitor.getValue(slot, frame); if (value instanceof RPromise) { - value = PromiseHelperNode.evaluateSlowPath(null, (RPromise) value); + value = PromiseHelperNode.evaluateSlowPath((RPromise) value); } result[i] = classHierarchyNodeSlowPath.executeString(value); } -- GitLab