@@ -336,11 +336,10 @@ public static PNotImplemented doGeneric(Object left, Object right) {
336
336
@ GenerateInline
337
337
@ GenerateCached (false )
338
338
abstract static class NormalizeForeignForBinopNode extends Node {
339
- // TODO doArray can be removed
340
- public abstract Object execute (Node inliningTarget , Object value , boolean doArray );
339
+ public abstract Object execute (Node inliningTarget , Object value );
341
340
342
341
@ Specialization (guards = {"lib.isBoolean(obj)" })
343
- Object doBool (Object obj , @ SuppressWarnings ( "unused" ) boolean doArray ,
342
+ Object doBool (Object obj ,
344
343
@ Shared @ CachedLibrary (limit = "3" ) InteropLibrary lib ,
345
344
@ Shared @ Cached (inline = false ) GilNode gil ) {
346
345
gil .release (true );
@@ -354,7 +353,7 @@ Object doBool(Object obj, @SuppressWarnings("unused") boolean doArray,
354
353
}
355
354
356
355
@ Specialization (guards = "lib.fitsInLong(obj)" )
357
- Object doLong (Object obj , @ SuppressWarnings ( "unused" ) boolean doArray ,
356
+ Object doLong (Object obj ,
358
357
@ Shared @ CachedLibrary (limit = "3" ) InteropLibrary lib ,
359
358
@ Shared @ Cached (inline = false ) GilNode gil ) {
360
359
assert !lib .isBoolean (obj );
@@ -369,7 +368,7 @@ Object doLong(Object obj, @SuppressWarnings("unused") boolean doArray,
369
368
}
370
369
371
370
@ Specialization (guards = {"!lib.fitsInLong(obj)" , "lib.fitsInBigInteger(obj)" })
372
- Object doBigInt (Object obj , @ SuppressWarnings ( "unused" ) boolean doArray ,
371
+ Object doBigInt (Object obj ,
373
372
@ Shared @ CachedLibrary (limit = "3" ) InteropLibrary lib ,
374
373
@ Shared @ Cached (inline = false ) GilNode gil ,
375
374
@ Cached (inline = false ) PythonObjectFactory factory ) {
@@ -385,7 +384,7 @@ Object doBigInt(Object obj, @SuppressWarnings("unused") boolean doArray,
385
384
}
386
385
387
386
@ Specialization (guards = {"!lib.fitsInLong(obj)" , "!lib.fitsInBigInteger(obj)" , "lib.fitsInDouble(obj)" })
388
- Object doDouble (Object obj , @ SuppressWarnings ( "unused" ) boolean doArray ,
387
+ Object doDouble (Object obj ,
389
388
@ Shared @ CachedLibrary (limit = "3" ) InteropLibrary lib ,
390
389
@ Shared @ Cached (inline = false ) GilNode gil ) {
391
390
assert !lib .isBoolean (obj );
@@ -400,7 +399,7 @@ Object doDouble(Object obj, @SuppressWarnings("unused") boolean doArray,
400
399
}
401
400
402
401
@ Specialization (guards = {"!lib.fitsInLong(obj)" , "!lib.fitsInBigInteger(obj)" , "!lib.fitsInDouble(obj)" , "lib.isString(obj)" })
403
- Object doString (Object obj , @ SuppressWarnings ( "unused" ) boolean doArray ,
402
+ Object doString (Object obj ,
404
403
@ Shared @ CachedLibrary (limit = "3" ) InteropLibrary lib ,
405
404
@ Cached (inline = false ) TruffleString .SwitchEncodingNode switchEncodingNode ,
406
405
@ Shared @ Cached (inline = false ) GilNode gil ) {
@@ -417,20 +416,18 @@ Object doString(Object obj, @SuppressWarnings("unused") boolean doArray,
417
416
418
417
@ Fallback
419
418
@ SuppressWarnings ("unused" )
420
- public static Object doGeneric (Object left , boolean doArray ) {
419
+ public static Object doGeneric (Object left ) {
421
420
return null ;
422
421
}
423
422
}
424
423
425
424
@ GenerateInline
426
425
@ GenerateCached (false )
427
426
abstract static class ForeignBinarySlotNode extends Node {
428
- abstract Object execute (VirtualFrame frame , Node inliningTarget , Object left , Object right ,
429
- boolean leftDoArray , boolean rightDoArray , BinaryOpNode binaryOpNode );
427
+ abstract Object execute (VirtualFrame frame , Node inliningTarget , Object left , Object right , BinaryOpNode binaryOpNode );
430
428
431
429
@ Specialization
432
- static Object doIt (VirtualFrame frame , Node inliningTarget , Object left , Object right ,
433
- boolean leftDoArray , boolean rightDoArray , BinaryOpNode op ,
430
+ static Object doIt (VirtualFrame frame , Node inliningTarget , Object left , Object right , BinaryOpNode op ,
434
431
@ Cached IsForeignObjectNode isForeignLeft ,
435
432
@ Cached IsForeignObjectNode isForeignRight ,
436
433
@ Cached NormalizeForeignForBinopNode normalizeLeft ,
@@ -441,8 +438,8 @@ static Object doIt(VirtualFrame frame, Node inliningTarget, Object left, Object
441
438
return PNotImplemented .NOT_IMPLEMENTED ;
442
439
}
443
440
444
- Object newLeft = normalizeLeft .execute (inliningTarget , left , leftDoArray );
445
- Object newRight = normalizeRight .execute (inliningTarget , right , rightDoArray );
441
+ Object newLeft = normalizeLeft .execute (inliningTarget , left );
442
+ Object newRight = normalizeRight .execute (inliningTarget , right );
446
443
assert newLeft == null || !IsForeignObjectNode .executeUncached (newLeft ) : newLeft ;
447
444
assert newRight == null || !IsForeignObjectNode .executeUncached (newRight ) : newRight ;
448
445
if (newLeft == null || newRight == null ) {
@@ -460,7 +457,7 @@ static Object doIt(VirtualFrame frame, Object left, Object right,
460
457
@ Bind ("this" ) Node inliningTarget ,
461
458
@ Cached ForeignBinarySlotNode binarySlotNode ,
462
459
@ Cached (inline = false ) PyNumberAddNode addNode ) {
463
- return binarySlotNode .execute (frame , inliningTarget , left , right , true , true , addNode );
460
+ return binarySlotNode .execute (frame , inliningTarget , left , right , addNode );
464
461
}
465
462
}
466
463
@@ -472,7 +469,7 @@ static Object doIt(VirtualFrame frame, Object left, Object right,
472
469
@ Bind ("this" ) Node inliningTarget ,
473
470
@ Cached ForeignBinarySlotNode binarySlotNode ,
474
471
@ Cached (inline = false ) PyNumberMultiplyNode mulNode ) {
475
- return binarySlotNode .execute (frame , inliningTarget , left , right , true , true , mulNode );
472
+ return binarySlotNode .execute (frame , inliningTarget , left , right , mulNode );
476
473
}
477
474
}
478
475
0 commit comments