Skip to content

Commit 53e4a7e

Browse files
committed
Fix new perf warnings
1 parent dcecc4c commit 53e4a7e

File tree

2 files changed

+7
-28
lines changed

2 files changed

+7
-28
lines changed

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/builtins/modules/ImpModuleBuiltins.java

Lines changed: 6 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -389,9 +389,10 @@ static int doOther(@SuppressWarnings("unused") Object extensionModule) {
389389
}
390390
}
391391

392-
@Builtin(name = "is_builtin", minNumOfPositionalArgs = 1)
392+
@Builtin(name = "is_builtin", minNumOfPositionalArgs = 1, numOfPositionalOnlyArgs = 1, parameterNames = {"name"})
393+
@ArgumentClinic(name = "name", conversion = ClinicConversion.TString)
393394
@GenerateNodeFactory
394-
public abstract static class IsBuiltin extends PythonBuiltinNode {
395+
public abstract static class IsBuiltin extends PythonUnaryClinicBuiltinNode {
395396

396397
@Specialization
397398
@TruffleBoundary
@@ -404,21 +405,9 @@ public int run(TruffleString name) {
404405
}
405406
}
406407

407-
@Specialization
408-
@TruffleBoundary
409-
public int run(PString name,
410-
@Bind Node inliningTarget,
411-
@Cached CastToTruffleStringNode toString) {
412-
try {
413-
return run(toString.execute(inliningTarget, name));
414-
} catch (CannotCastException e) {
415-
throw CompilerDirectives.shouldNotReachHere(e);
416-
}
417-
}
418-
419-
@Fallback
420-
public int run(@SuppressWarnings("unused") Object noName) {
421-
return 0;
408+
@Override
409+
protected ArgumentClinicProvider getArgumentClinic() {
410+
return ImpModuleBuiltinsClinicProviders.IsBuiltinClinicProviderGen.INSTANCE;
422411
}
423412
}
424413

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/lib/PyObjectSetAttrO.java

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -43,17 +43,14 @@
4343
import static com.oracle.graal.python.nodes.ErrorMessages.ATTR_NAME_MUST_BE_STRING;
4444

4545
import com.oracle.graal.python.builtins.PythonBuiltinClassType;
46-
import com.oracle.graal.python.builtins.objects.str.PString;
4746
import com.oracle.graal.python.builtins.objects.type.TpSlots;
4847
import com.oracle.graal.python.builtins.objects.type.TpSlots.GetObjectSlotsNode;
4948
import com.oracle.graal.python.builtins.objects.type.slots.TpSlotSetAttr.CallSlotSetAttrONode;
5049
import com.oracle.graal.python.nodes.PNodeWithContext;
5150
import com.oracle.graal.python.nodes.PRaiseNode;
52-
import com.oracle.graal.python.nodes.util.CastToTruffleStringNode;
5351
import com.oracle.truffle.api.HostCompilerDirectives.InliningCutoff;
5452
import com.oracle.truffle.api.dsl.Bind;
5553
import com.oracle.truffle.api.dsl.Cached;
56-
import com.oracle.truffle.api.dsl.Cached.Shared;
5754
import com.oracle.truffle.api.dsl.Fallback;
5855
import com.oracle.truffle.api.dsl.GenerateCached;
5956
import com.oracle.truffle.api.dsl.GenerateInline;
@@ -87,17 +84,10 @@ public final void executeCached(VirtualFrame frame, Object object, Object key, O
8784

8885
@Specialization
8986
static void doIt(Frame frame, Node inliningTarget, Object self, TruffleString name, Object value,
90-
@Shared @Cached PyObjectSetAttr setAttr) {
87+
@Cached PyObjectSetAttr setAttr) {
9188
setAttr.execute(frame, inliningTarget, self, name, value);
9289
}
9390

94-
@Specialization(guards = "isBuiltinPString(name)")
95-
static void doIt(Frame frame, Node inliningTarget, Object self, PString name, Object value,
96-
@Cached CastToTruffleStringNode castNode,
97-
@Shared @Cached PyObjectSetAttr setAttr) {
98-
setAttr.execute(frame, inliningTarget, self, castNode.castKnownString(inliningTarget, name), value);
99-
}
100-
10191
@Fallback
10292
@InliningCutoff
10393
static void doIt(Frame frame, Object self, Object nameObj, Object value,

0 commit comments

Comments
 (0)