@@ -58,7 +58,9 @@ static String getSlotBaseClass(Slot s) {
5858 case sq_concat -> "TpSlotBinaryFunc.TpSlotSqConcat" ;
5959 case sq_length , mp_length -> "TpSlotLen.TpSlotLenBuiltin" + getSuffix (s .isComplex ());
6060 case sq_item , sq_repeat -> "TpSlotSizeArgFun.TpSlotSizeArgFunBuiltin" ;
61+ case sq_ass_item -> "TpSlotSqAssItem.TpSlotSqAssItemBuiltin" ;
6162 case mp_subscript -> "TpSlotBinaryFunc.TpSlotMpSubscript" ;
63+ case mp_ass_subscript -> "TpSlotMpAssSubscript.TpSlotMpAssSubscriptBuiltin" ;
6264 case tp_getattro -> "TpSlotGetAttr.TpSlotGetAttrBuiltin" ;
6365 case tp_descr_get -> "TpSlotDescrGet.TpSlotDescrGetBuiltin" + getSuffix (s .isComplex ());
6466 case tp_descr_set -> "TpSlotDescrSet.TpSlotDescrSetBuiltin" ;
@@ -76,8 +78,10 @@ static String getSlotNodeBaseClass(Slot s) {
7678 case sq_concat -> "com.oracle.graal.python.builtins.objects.type.slots.TpSlotBinaryFunc.SqConcatBuiltinNode" ;
7779 case sq_length , mp_length -> "com.oracle.graal.python.builtins.objects.type.slots.TpSlotLen.LenBuiltinNode" ;
7880 case sq_item -> "com.oracle.graal.python.builtins.objects.type.slots.TpSlotSizeArgFun.SqItemBuiltinNode" ;
81+ case sq_ass_item -> "com.oracle.graal.python.builtins.objects.type.slots.TpSlotSqAssItem.SqAssItemBuiltinNode" ;
7982 case sq_repeat -> "com.oracle.graal.python.builtins.objects.type.slots.TpSlotSizeArgFun.SqRepeatBuiltinNode" ;
8083 case mp_subscript -> "com.oracle.graal.python.builtins.objects.type.slots.TpSlotBinaryFunc.MpSubscriptBuiltinNode" ;
84+ case mp_ass_subscript -> "com.oracle.graal.python.builtins.objects.type.slots.TpSlotMpAssSubscript.MpAssSubscriptBuiltinNode" ;
8185 case tp_getattro -> "com.oracle.graal.python.builtins.objects.type.slots.TpSlotGetAttr.GetAttrBuiltinNode" ;
8286 case tp_descr_set -> "com.oracle.graal.python.builtins.objects.type.slots.TpSlotDescrSet.DescrSetBuiltinNode" ;
8387 case tp_setattro -> "com.oracle.graal.python.builtins.objects.type.slots.TpSlotSetAttr.SetAttrBuiltinNode" ;
@@ -89,31 +93,21 @@ static String getUncachedExecuteSignature(SlotKind s) {
8993 case nb_bool -> "boolean executeUncached(Object self)" ;
9094 case tp_descr_get -> "Object executeUncached(Object self, Object obj, Object type)" ;
9195 case sq_length , mp_length -> "int executeUncached(Object self)" ;
92- case tp_getattro , tp_descr_set , tp_setattro , sq_item , mp_subscript , sq_concat , sq_repeat ,
93- nb_add , nb_subtract , nb_multiply , nb_remainder , nb_divmod , nb_lshift , nb_rshift ,
94- nb_and , nb_xor , nb_or , nb_floor_divide , nb_true_divide , nb_matrix_multiply ->
95- throw new AssertionError ("Should not reach here: should be always complex" );
96+ default -> throw new AssertionError ("Should not reach here: should be always complex" );
9697 };
9798 }
9899
99100 static boolean supportsComplex (SlotKind s ) {
100101 return switch (s ) {
101102 case nb_bool -> false ;
102- case sq_length , mp_length , tp_getattro , tp_descr_get , tp_descr_set ,
103- tp_setattro , sq_item , mp_subscript , sq_concat , sq_repeat ,
104- nb_add , nb_subtract , nb_multiply , nb_remainder , nb_divmod , nb_lshift , nb_rshift ,
105- nb_and , nb_xor , nb_or , nb_floor_divide , nb_true_divide , nb_matrix_multiply ->
106- true ;
103+ default -> true ;
107104 };
108105 }
109106
110107 static boolean supportsSimple (SlotKind s ) {
111108 return switch (s ) {
112109 case nb_bool , sq_length , mp_length , tp_descr_get -> true ;
113- case tp_getattro , tp_descr_set , tp_setattro , sq_item , mp_subscript , sq_concat , sq_repeat ,
114- nb_add , nb_subtract , nb_multiply , nb_remainder , nb_divmod , nb_lshift , nb_rshift ,
115- nb_and , nb_xor , nb_or , nb_floor_divide , nb_true_divide , nb_matrix_multiply ->
116- false ;
110+ default -> false ;
117111 };
118112 }
119113
@@ -122,10 +116,7 @@ static String getUncachedExecuteCall(SlotKind s) {
122116 case nb_bool -> "executeBool(null, self)" ;
123117 case sq_length , mp_length -> "executeInt(null, self)" ;
124118 case tp_descr_get -> "execute(null, self, obj, type)" ;
125- case tp_getattro , tp_descr_set , tp_setattro , sq_item , mp_subscript , sq_concat , sq_repeat ,
126- nb_add , nb_subtract , nb_multiply , nb_remainder , nb_divmod , nb_lshift , nb_rshift ,
127- nb_and , nb_xor , nb_or , nb_floor_divide , nb_true_divide , nb_matrix_multiply ->
128- throw new AssertionError ("Should not reach here: should be always complex" );
119+ default -> throw new AssertionError ("Should not reach here: should be always complex" );
129120 };
130121 }
131122
0 commit comments