Skip to content

Commit 3ce92a7

Browse files
committed
[GR-26737] Remove unused PropertyReference.
PullRequest: js/1720
2 parents 99c3e0c + af6f7c8 commit 3ce92a7

File tree

6 files changed

+5
-153
lines changed

6 files changed

+5
-153
lines changed

graal-js/src/com.oracle.truffle.js/src/com/oracle/truffle/js/nodes/JSTypes.java

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,6 @@
5252
import com.oracle.truffle.js.runtime.objects.JSLazyString;
5353
import com.oracle.truffle.js.runtime.objects.JSLazyStringFlattened;
5454
import com.oracle.truffle.js.runtime.objects.JSLazyStringRaw;
55-
import com.oracle.truffle.js.runtime.objects.PropertyReference;
5655

5756
/**
5857
* @see JavaScriptNode
@@ -119,11 +118,6 @@ public static String convertLazyStringRaw(JSLazyStringRaw value) {
119118
return value.toString();
120119
}
121120

122-
@ImplicitCast
123-
public static String castString(PropertyReference value) {
124-
return value.toString();
125-
}
126-
127121
@ImplicitCast
128122
public static CharSequence castCharSequence(String value) {
129123
return value;
@@ -133,9 +127,4 @@ public static CharSequence castCharSequence(String value) {
133127
public static CharSequence castCharSequence(JSLazyString value) {
134128
return value;
135129
}
136-
137-
@ImplicitCast
138-
public static CharSequence castCharSequence(PropertyReference value) {
139-
return value;
140-
}
141130
}

graal-js/src/com.oracle.truffle.js/src/com/oracle/truffle/js/nodes/access/ReadElementNode.java

Lines changed: 3 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,6 @@
6262
import com.oracle.truffle.api.nodes.UnexpectedResultException;
6363
import com.oracle.truffle.api.object.DynamicObject;
6464
import com.oracle.truffle.api.object.DynamicObjectLibrary;
65-
import com.oracle.truffle.api.object.Property;
6665
import com.oracle.truffle.api.profiles.BranchProfile;
6766
import com.oracle.truffle.api.profiles.ConditionProfile;
6867
import com.oracle.truffle.js.builtins.helper.ListGetNode;
@@ -114,8 +113,6 @@
114113
import com.oracle.truffle.js.runtime.objects.JSDynamicObject;
115114
import com.oracle.truffle.js.runtime.objects.JSLazyString;
116115
import com.oracle.truffle.js.runtime.objects.JSObject;
117-
import com.oracle.truffle.js.runtime.objects.JSProperty;
118-
import com.oracle.truffle.js.runtime.objects.PropertyReference;
119116
import com.oracle.truffle.js.runtime.objects.Undefined;
120117
import com.oracle.truffle.js.runtime.util.JSClassProfile;
121118
import com.oracle.truffle.js.runtime.util.TRegexUtil;
@@ -666,7 +663,7 @@ protected Object executeWithTargetAndIndexUnchecked(Object target, int index, Ob
666663
return getProperty(targetObject, Boundaries.stringValueOf(index), receiver, defaultValue);
667664
}
668665
} else {
669-
return getNonArrayNode().getPropertyGeneric(targetObject, index, receiver, defaultValue, root);
666+
return readNonArrayObjectIndex(targetObject, index, receiver, defaultValue, root);
670667
}
671668
}
672669

@@ -702,7 +699,7 @@ protected int executeWithTargetAndIndexUncheckedInt(Object target, int index, Ob
702699
return JSTypesGen.expectInteger(getProperty(targetObject, Boundaries.stringValueOf(index), receiver, defaultValue));
703700
}
704701
} else {
705-
return JSTypesGen.expectInteger(getNonArrayNode().getPropertyGeneric(targetObject, index, receiver, defaultValue, root));
702+
return JSTypesGen.expectInteger(readNonArrayObjectIndex(targetObject, index, receiver, defaultValue, root));
706703
}
707704
}
708705

@@ -738,7 +735,7 @@ protected double executeWithTargetAndIndexUncheckedDouble(Object target, int ind
738735
return JSTypesGen.expectDouble(getProperty(targetObject, Boundaries.stringValueOf(index), receiver, defaultValue));
739736
}
740737
} else {
741-
return JSTypesGen.expectDouble(getNonArrayNode().getPropertyGeneric(targetObject, index, receiver, defaultValue, root));
738+
return JSTypesGen.expectDouble(readNonArrayObjectIndex(targetObject, index, receiver, defaultValue, root));
742739
}
743740
}
744741

@@ -762,38 +759,12 @@ private JSObjectReadElementNonArrayTypeCacheNode getNonArrayNode() {
762759

763760
private static class JSObjectReadElementNonArrayTypeCacheNode extends JavaScriptBaseNode {
764761

765-
private final ConditionProfile propertyReferenceProfile = ConditionProfile.createBinaryProfile();
766-
private final ConditionProfile isDataPropertyBranch = ConditionProfile.createBinaryProfile();
767762
@Child private CachedGetPropertyNode getPropertyCachedNode;
768763

769764
JSObjectReadElementNonArrayTypeCacheNode() {
770765
}
771766

772767
public Object execute(DynamicObject targetObject, Object index, Object receiver, Object defaultValue, ReadElementNode root) {
773-
if (propertyReferenceProfile.profile(
774-
index instanceof PropertyReference && ((PropertyReference) index).getDepth() == 0 && ((PropertyReference) index).getShape() == targetObject.getShape())) {
775-
return readPropertyReference(index, targetObject);
776-
} else {
777-
return getPropertyGeneric(targetObject, index, receiver, defaultValue, root);
778-
}
779-
}
780-
781-
private Object readPropertyReference(Object index, DynamicObject targetObject) {
782-
Property property = ((PropertyReference) index).getProperty();
783-
if (isDataPropertyBranch.profile(JSProperty.isData(property))) {
784-
// TODO PIC for location class
785-
// return locationClassProfile.profileClass(property.getLocation())
786-
return property.getLocation().get(targetObject, false);
787-
} else {
788-
return JSProperty.getValue(property, targetObject, targetObject, false);
789-
}
790-
}
791-
792-
public Object getPropertyGeneric(DynamicObject targetObject, Object index, Object receiver, Object defaultValue, ReadElementNode root) {
793-
return getCachedProperty(targetObject, index, receiver, defaultValue, root);
794-
}
795-
796-
private Object getCachedProperty(DynamicObject targetObject, Object index, Object receiver, Object defaultValue, ReadElementNode root) {
797768
if (getPropertyCachedNode == null) {
798769
CompilerDirectives.transferToInterpreterAndInvalidate();
799770
getPropertyCachedNode = insert(CachedGetPropertyNode.create(root.context));

graal-js/src/com.oracle.truffle.js/src/com/oracle/truffle/js/nodes/unary/FlattenNode.java

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,6 @@
4848
import com.oracle.truffle.js.runtime.JSRuntime;
4949
import com.oracle.truffle.js.runtime.SafeInteger;
5050
import com.oracle.truffle.js.runtime.objects.JSLazyString;
51-
import com.oracle.truffle.js.runtime.objects.PropertyReference;
5251

5352
/**
5453
* Flatten lazy strings.
@@ -65,11 +64,6 @@ protected static String doLazyString(JSLazyString value,
6564
return value.toString(flatten);
6665
}
6766

68-
@Specialization
69-
protected static String doLazyString(PropertyReference value) {
70-
return value.toString();
71-
}
72-
7367
@Specialization
7468
protected static double doSafeInteger(SafeInteger value) {
7569
return value.doubleValue();

graal-js/src/com.oracle.truffle.js/src/com/oracle/truffle/js/runtime/JSRuntime.java

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,6 @@
8686
import com.oracle.truffle.js.runtime.objects.Null;
8787
import com.oracle.truffle.js.runtime.objects.Nullish;
8888
import com.oracle.truffle.js.runtime.objects.PropertyDescriptor;
89-
import com.oracle.truffle.js.runtime.objects.PropertyReference;
9089
import com.oracle.truffle.js.runtime.objects.Undefined;
9190
import com.oracle.truffle.js.runtime.util.JSHashMap;
9291

@@ -1342,8 +1341,6 @@ public static String javaToString(Object obj) {
13421341
return (String) obj;
13431342
} else if (obj instanceof JSLazyString) {
13441343
return ((JSLazyString) obj).toString();
1345-
} else if (obj instanceof PropertyReference) {
1346-
return ((PropertyReference) obj).toString();
13471344
}
13481345
return Boundaries.javaToString(obj);
13491346
}
@@ -1459,8 +1456,6 @@ public static TruffleObject toObjectFromPrimitive(JSContext ctx, Object value, b
14591456
return JSString.create(ctx, (JSLazyString) value);
14601457
} else if (value instanceof BigInt) {
14611458
return JSBigInt.create(ctx, (BigInt) value);
1462-
} else if (value instanceof PropertyReference) {
1463-
return JSString.create(ctx, value.toString());
14641459
} else if (isNumber(value)) {
14651460
return JSNumber.create(ctx, (Number) value);
14661461
} else if (value instanceof Symbol) {
@@ -1967,11 +1962,11 @@ public static String toStringIsString(Object value) {
19671962
* Is value is a {@link CharSequence} that lazily evaluates to a {@link String}).
19681963
*/
19691964
public static boolean isLazyString(Object value) {
1970-
return value instanceof JSLazyString || value instanceof PropertyReference;
1965+
return value instanceof JSLazyString;
19711966
}
19721967

19731968
public static boolean isStringClass(Class<?> clazz) {
1974-
return String.class.isAssignableFrom(clazz) || JSLazyString.class.isAssignableFrom(clazz) || PropertyReference.class.isAssignableFrom(clazz);
1969+
return String.class.isAssignableFrom(clazz) || JSLazyString.class.isAssignableFrom(clazz);
19751970
}
19761971

19771972
public static Object nullToUndefined(Object value) {

graal-js/src/com.oracle.truffle.js/src/com/oracle/truffle/js/runtime/objects/PropertyReference.java

Lines changed: 0 additions & 94 deletions
This file was deleted.

graal-nodejs/mx.graal-nodejs/com.oracle.truffle.trufflenode/src/com/oracle/truffle/trufflenode/GraalJSAccess.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -210,7 +210,6 @@
210210
import com.oracle.truffle.js.runtime.objects.JSObjectUtil;
211211
import com.oracle.truffle.js.runtime.objects.Null;
212212
import com.oracle.truffle.js.runtime.objects.PropertyDescriptor;
213-
import com.oracle.truffle.js.runtime.objects.PropertyReference;
214213
import com.oracle.truffle.js.runtime.objects.ScriptOrModule;
215214
import com.oracle.truffle.js.runtime.objects.Undefined;
216215
import com.oracle.truffle.js.runtime.util.DirectByteBufferHelper;
@@ -861,8 +860,6 @@ public Object valueFlatten(Object value) {
861860
return value;
862861
} else if (value instanceof JSLazyString) {
863862
return ((JSLazyString) value).toString();
864-
} else if (value instanceof PropertyReference) {
865-
return ((PropertyReference) value).toString();
866863
} else if (JSRuntime.isForeignObject(value)) {
867864
InteropLibrary interop = InteropLibrary.getFactory().getUncached(value);
868865
if (interop.isString(value)) {

0 commit comments

Comments
 (0)