Skip to content

Commit 2a26b6a

Browse files
committed
refactor: remove getItemNormalized from BasicSequenceStorage
1 parent ceb64d6 commit 2a26b6a

23 files changed

+50
-78
lines changed

graalpython/com.oracle.graal.python.test/src/com/oracle/graal/python/test/runtime/SequenceStorageTests.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -40,9 +40,9 @@ private static Object[] getObjectValues() {
4040
@Test
4141
public void objectsGetAndSet() {
4242
ObjectSequenceStorage store = new ObjectSequenceStorage(getObjectValues());
43-
assertEquals(4, store.getItemNormalized(3));
43+
assertEquals(4, store.getObjectItemNormalized(3));
4444
store.setItemNormalized(5, 10);
45-
assertEquals(10, store.getItemNormalized(5));
45+
assertEquals(10, store.getObjectItemNormalized(5));
4646
}
4747

4848
/**
@@ -55,8 +55,8 @@ private static int[] getIntValues() {
5555
@Test
5656
public void intGetAndSet() throws SequenceStoreException {
5757
IntSequenceStorage store = new IntSequenceStorage(getIntValues());
58-
assertEquals(4, store.getItemNormalized(3));
58+
assertEquals(4, store.getIntItemNormalized(3));
5959
store.setItemNormalized(5, 10);
60-
assertEquals(10, store.getItemNormalized(5));
60+
assertEquals(10, store.getIntItemNormalized(5));
6161
}
6262
}

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1086,7 +1086,7 @@ Object forget(VirtualFrame frame, PBytesLike encoding,
10861086
@Cached AsciiDecodeNode asciiDecodeNode) {
10871087
PTuple decodeResult = (PTuple) asciiDecodeNode.execute(frame, encoding, PNone.NO_VALUE);
10881088
ObjectSequenceStorage resultStorage = (ObjectSequenceStorage) decodeResult.getSequenceStorage();
1089-
forget((TruffleString) resultStorage.getItemNormalized(0));
1089+
forget((TruffleString) resultStorage.getObjectItemNormalized(0));
10901090
return PNone.NONE;
10911091
}
10921092

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/builtins/modules/cext/PythonCextBuiltins.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1103,7 +1103,7 @@ private static Object[] collect(MroSequenceStorage mro, int idx) {
11031103
ArrayList<Object> l = new ArrayList<>();
11041104
int mroLength = mro.length();
11051105
for (int i = 0; i < mroLength; i++) {
1106-
PythonAbstractClass kls = mro.getItemNormalized(i);
1106+
PythonAbstractClass kls = mro.getPythonClassItemNormalized(i);
11071107
Object value = HiddenAttr.ReadNode.executeUncached((PythonAbstractObject) kls, NATIVE_SLOTS, null);
11081108
if (value != null) {
11091109
Object[] tuple = (Object[]) value;

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/builtins/objects/cext/hpy/jni/GraalHPyJNIContext.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1872,7 +1872,7 @@ public long ctxGetItemi(long hCollection, long lidx) {
18721872
}
18731873
return GraalHPyBoxing.boxHandle(context.getHPyHandleForObject(lresult));
18741874
} else if (storage instanceof ObjectSequenceStorage) {
1875-
Object result = ((ObjectSequenceStorage) storage).getItemNormalized(idx);
1875+
Object result = ((ObjectSequenceStorage) storage).getObjectItemNormalized(idx);
18761876
if (result instanceof Integer) {
18771877
return GraalHPyBoxing.boxInt((int) result);
18781878
} else if (result instanceof Double) {

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/builtins/objects/common/SequenceStorageNodes.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -540,12 +540,12 @@ protected static double doDouble(DoubleSequenceStorage storage, int idx) {
540540

541541
@Specialization
542542
protected static Object doObject(ObjectSequenceStorage storage, int idx) {
543-
return storage.getItemNormalized(idx);
543+
return storage.getObjectItemNormalized(idx);
544544
}
545545

546546
@Specialization
547547
protected static Object doMro(MroSequenceStorage storage, int idx) {
548-
return storage.getItemNormalized(idx);
548+
return storage.getPythonClassItemNormalized(idx);
549549
}
550550

551551
@InliningCutoff
@@ -2457,7 +2457,7 @@ ObjectSequenceStorage doObjectSingleElement(ObjectSequenceStorage s, int times,
24572457
@Shared @Cached PRaiseNode raiseNode) {
24582458
try {
24592459
Object[] repeated = new Object[PythonUtils.multiplyExact(s.length(), times)];
2460-
Arrays.fill(repeated, s.getItemNormalized(0));
2460+
Arrays.fill(repeated, s.getObjectItemNormalized(0));
24612461
return new ObjectSequenceStorage(repeated);
24622462
} catch (OutOfMemoryError e) {
24632463
throw raiseNode.raise(MemoryError);

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/builtins/objects/exception/PBaseException.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@
4646
import com.oracle.graal.python.builtins.PythonBuiltinClassType;
4747
import com.oracle.graal.python.builtins.objects.PNone;
4848
import com.oracle.graal.python.builtins.objects.cext.PythonNativeClass;
49+
import com.oracle.graal.python.builtins.objects.common.SequenceStorageNodes.GetItemScalarNode;
4950
import com.oracle.graal.python.builtins.objects.frame.PFrame;
5051
import com.oracle.graal.python.builtins.objects.object.PythonObject;
5152
import com.oracle.graal.python.builtins.objects.traceback.LazyTraceback;
@@ -64,7 +65,6 @@
6465
import com.oracle.graal.python.runtime.GilNode;
6566
import com.oracle.graal.python.runtime.exception.PException;
6667
import com.oracle.graal.python.runtime.formatting.ErrorMessageFormatter;
67-
import com.oracle.graal.python.runtime.sequence.storage.BasicSequenceStorage;
6868
import com.oracle.graal.python.runtime.sequence.storage.SequenceStorage;
6969
import com.oracle.graal.python.util.PythonUtils;
7070
import com.oracle.truffle.api.CompilerAsserts;
@@ -251,7 +251,7 @@ public String getFormattedMessage() {
251251
return typeName;
252252
} else if (args.getSequenceStorage().length() == 1) {
253253
SequenceStorage store = args.getSequenceStorage();
254-
Object item = store instanceof BasicSequenceStorage basicStorage ? basicStorage.getItemNormalized(0) : "<unknown>";
254+
Object item = GetItemScalarNode.executeUncached(store, 0);
255255
return typeName + ": " + item.toString();
256256
} else {
257257
return typeName + ": " + args.toString();

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/builtins/objects/iterator/IteratorBuiltins.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -170,7 +170,7 @@ static Object next(Node inliningTarget, PIntegerSequenceIterator self, boolean t
170170
static Object next(Node inliningTarget, PObjectSequenceIterator self, boolean throwStopIteration,
171171
@Exclusive @Cached PRaiseNode.Lazy raiseNode) {
172172
if (self.getIndex() < self.sequence.length()) {
173-
return self.sequence.getItemNormalized(self.index++);
173+
return self.sequence.getObjectItemNormalized(self.index++);
174174
}
175175
return stopIteration(inliningTarget, self, throwStopIteration, raiseNode);
176176
}

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/builtins/objects/iterator/PObjectSequenceIterator.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ public PObjectSequenceIterator(Object clazz, Shape instanceShape, ObjectSequence
3939

4040
public Object next() {
4141
assert hasNext();
42-
return this.sequence.getItemNormalized(this.index++);
42+
return this.sequence.getObjectItemNormalized(this.index++);
4343
}
4444

4545
@Override

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

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ public static MroShape create(MroSequenceStorage mro, PythonLanguage lang) {
9494
CompilerAsserts.neverPartOfCompilation();
9595
MroShape mroShape = lang.getMroShapeRoot();
9696
for (int i = mro.length() - 1; i >= 0; i--) {
97-
PythonAbstractClass element = mro.getItemNormalized(i);
97+
PythonAbstractClass element = mro.getPythonClassItemNormalized(i);
9898
if (PythonManagedClass.isInstance(element)) {
9999
PythonManagedClass managedClass = PythonManagedClass.cast(element);
100100
if (GetDictIfExistsNode.getUncached().execute(managedClass) != null) {
@@ -152,7 +152,7 @@ public Object getFromMro(MroSequenceStorage mro, TruffleString key) {
152152
if (mroIndex == NOT_FOUND_INDEX) {
153153
return PNone.NO_VALUE;
154154
} else {
155-
Object item = mro.getItemNormalized(mroIndex);
155+
PythonAbstractClass item = mro.getPythonClassItemNormalized(mroIndex);
156156
if (!(item instanceof PythonObject)) {
157157
// MroShape should only contain PythonManagedClass
158158
transferToInterpreterAndInvalidate();
@@ -197,7 +197,7 @@ public static boolean validate(Object obj, PythonLanguage language) {
197197
}
198198
MroShape mroShape = klass.getMroShape();
199199
for (int i = 0; i < mro.length(); i++) {
200-
if (!(mro.getItemNormalized(i) instanceof PythonManagedClass)) {
200+
if (!(mro.getPythonClassItemNormalized(i) instanceof PythonManagedClass)) {
201201
// If there is a non-managed class, we give up on maintaining an MRO shape
202202
assert mroShape == null : mro.getClassName();
203203
return true;
@@ -209,7 +209,7 @@ public static boolean validate(Object obj, PythonLanguage language) {
209209
}
210210
MroShape currMroShape = mroShape;
211211
for (int i = 0; i < mro.length(); i++) {
212-
PythonManagedClass kls = (PythonManagedClass) mro.getItemNormalized(i);
212+
PythonManagedClass kls = (PythonManagedClass) mro.getPythonClassItemNormalized(i);
213213
if (kls.getShape() != currMroShape.shape) {
214214
String message = String.format("mro:%s,index:%d,curr klass:%s\nactual shape:\n%s,\nexpected shape:\n%s",
215215
mro.getClassName(), i, kls, kls.getShape(), currMroShape.shape);

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -271,7 +271,7 @@ private void reinitializeMroShape(PythonLanguage language) {
271271
if (mroShape != null) {
272272
// add this class as a subtype of all classes in the mro (including itself)
273273
mroLoop: for (int mroIdx = 0; mroIdx < mro.length(); mroIdx++) {
274-
PythonManagedClass managedClass = (PythonManagedClass) mro.getItemNormalized(mroIdx);
274+
PythonManagedClass managedClass = (PythonManagedClass) mro.getPythonClassItemNormalized(mroIdx);
275275
if (managedClass instanceof PythonBuiltinClass) {
276276
// builtin classes are assumed immutable, so we do not need to register in their
277277
// mro subtypes array (in fact they do not have such array)

0 commit comments

Comments
 (0)