Skip to content

Commit 6f5ae81

Browse files
committed
drop useless argument from PositionalArgumentsNode.prependArgument
1 parent 04ea898 commit 6f5ae81

File tree

4 files changed

+7
-11
lines changed

4 files changed

+7
-11
lines changed

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

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,6 @@
6060
import com.oracle.truffle.api.interop.Resolve;
6161
import com.oracle.truffle.api.nodes.ExplodeLoop;
6262
import com.oracle.truffle.api.nodes.Node;
63-
import com.oracle.truffle.api.profiles.PrimitiveValueProfile;
6463

6564
@MessageResolution(receiverType = MethodWrapper.class)
6665
public class ManagedMethodWrappersMR {
@@ -76,8 +75,6 @@ abstract static class ExecuteNode extends Node {
7675
@Child private ExecuteKeywordStarargsNode expandKwargsNode = ExecuteKeywordStarargsNode.create();
7776
@Child private CallNode dispatch;
7877

79-
private final PrimitiveValueProfile starArgsLenProfile = PrimitiveValueProfile.createEqualityProfile();
80-
8178
public Object access(MethKeywords object, Object[] arguments) {
8279
if (arguments.length != 3) {
8380
throw ArityException.raise(3, arguments.length);
@@ -90,8 +87,7 @@ public Object access(MethKeywords object, Object[] arguments) {
9087
Object kwArgs = toJavaNode.execute(arguments[2]);
9188

9289
Object[] starArgsArray = posStarargsNode.executeWith(starArgs);
93-
int starArgsLen = starArgsLenProfile.profile(starArgsArray.length);
94-
Object[] pArgs = PositionalArgumentsNode.prependArgument(receiver, starArgsArray, starArgsLen);
90+
Object[] pArgs = PositionalArgumentsNode.prependArgument(receiver, starArgsArray);
9591
PKeyword[] kwArgsArray = expandKwargsNode.executeWith(kwArgs);
9692

9793
// execute

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/builtins/objects/type/TypeBuiltins.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -255,7 +255,7 @@ private Object op(VirtualFrame frame, PythonAbstractClass self, Object[] argumen
255255
Object newMethod = lookupNew.execute(self);
256256
if (newMethod != PNone.NO_VALUE) {
257257
CompilerAsserts.partialEvaluationConstant(doCreateArgs);
258-
Object[] newArgs = doCreateArgs ? PositionalArgumentsNode.prependArgument(self, arguments, arguments.length) : arguments;
258+
Object[] newArgs = doCreateArgs ? PositionalArgumentsNode.prependArgument(self, arguments) : arguments;
259259
Object newInstance = dispatchNew.execute(frame, newMethod, newArgs, keywords);
260260
PythonAbstractClass newInstanceKlass = getClass.execute(newInstance);
261261
if (isSameType(newInstanceKlass, self)) {
@@ -268,7 +268,7 @@ private Object op(VirtualFrame frame, PythonAbstractClass self, Object[] argumen
268268
if (initMethod != PNone.NO_VALUE) {
269269
Object[] initArgs;
270270
if (doCreateArgs) {
271-
initArgs = PositionalArgumentsNode.prependArgument(newInstance, arguments, arguments.length);
271+
initArgs = PositionalArgumentsNode.prependArgument(newInstance, arguments);
272272
} else {
273273
// XXX: (tfel) is this valid? I think it should be fine...
274274
arguments[0] = newInstance;

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/nodes/argument/positional/PositionalArgumentsNode.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -63,10 +63,10 @@ public Object[] execute(VirtualFrame frame) {
6363
return values;
6464
}
6565

66-
public static Object[] prependArgument(Object primary, Object[] arguments, int argumentsLength) {
67-
Object[] result = new Object[argumentsLength + 1];
66+
public static Object[] prependArgument(Object primary, Object[] arguments) {
67+
Object[] result = new Object[arguments.length + 1];
6868
result[0] = primary;
69-
System.arraycopy(arguments, 0, result, 1, argumentsLength);
69+
System.arraycopy(arguments, 0, result, 1, arguments.length);
7070
return result;
7171
}
7272

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/nodes/call/CallNode.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ protected Object specialCall(VirtualFrame frame, Object callableObject, Object[]
8888
CompilerDirectives.transferToInterpreter();
8989
throw raise(PythonBuiltinClassType.TypeError, "'%p' object is not callable", callableObject);
9090
}
91-
return callCallNode.execute(frame, call, PositionalArgumentsNode.prependArgument(callableObject, arguments, arguments.length), keywords);
91+
return callCallNode.execute(frame, call, PositionalArgumentsNode.prependArgument(callableObject, arguments), keywords);
9292
}
9393

9494
private CreateArgumentsNode ensureCreateArguments() {

0 commit comments

Comments
 (0)