Commit 634c2a63 authored by Santiago Aboy Solanes's avatar Santiago Aboy Solanes Committed by Commit Bot

[csa][cleanup] Remove non-Tnodified IntPtrT version of LoadObjectField

There is an int version that will be TNodified in a follow-up CL.

Bug: v8:9708, v8:6949
Change-Id: I3a47cb352396dfe9dea426b6396216c06e0e3254
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2387963
Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org>
Reviewed-by: 's avatarDan Elphick <delphick@chromium.org>
Cr-Commit-Position: refs/heads/master@{#69695}
parent f20a63d1
......@@ -1381,14 +1381,6 @@ Node* CodeStubAssembler::LoadObjectField(TNode<HeapObject> object, int offset,
return LoadFromObject(type, object, IntPtrConstant(offset - kHeapObjectTag));
}
Node* CodeStubAssembler::LoadObjectField(TNode<HeapObject> object,
TNode<IntPtrT> offset,
MachineType type) {
CSA_ASSERT(this, IsStrong(object));
return LoadFromObject(type, object,
IntPtrSub(offset, IntPtrConstant(kHeapObjectTag)));
}
TNode<IntPtrT> CodeStubAssembler::LoadAndUntagObjectField(
SloppyTNode<HeapObject> object, int offset) {
if (SmiValuesAre32Bits()) {
......@@ -3060,8 +3052,7 @@ TNode<UintPtrT> CodeStubAssembler::LoadBigIntDigit(TNode<BigInt> bigint,
TNode<IntPtrT> offset =
IntPtrAdd(IntPtrConstant(BigInt::kDigitsOffset),
IntPtrMul(digit_index, IntPtrConstant(kSystemPointerSize)));
return UncheckedCast<UintPtrT>(
LoadObjectField(bigint, offset, MachineType::UintPtr()));
return LoadObjectField<UintPtrT>(bigint, offset);
}
TNode<ByteArray> CodeStubAssembler::AllocateByteArray(TNode<UintPtrT> length,
......
......@@ -1024,14 +1024,16 @@ class V8_EXPORT_PRIVATE CodeStubAssembler
TNode<Object> LoadObjectField(TNode<HeapObject> object,
TNode<IntPtrT> offset) {
return UncheckedCast<Object>(
LoadObjectField(object, offset, MachineType::AnyTagged()));
LoadFromObject(MachineType::AnyTagged(), object,
IntPtrSub(offset, IntPtrConstant(kHeapObjectTag))));
}
template <class T, typename std::enable_if<
std::is_convertible<TNode<T>, TNode<UntaggedT>>::value,
int>::type = 0>
TNode<T> LoadObjectField(TNode<HeapObject> object, TNode<IntPtrT> offset) {
return UncheckedCast<T>(
LoadObjectField(object, offset, MachineTypeOf<T>::value));
LoadFromObject(MachineTypeOf<T>::value, object,
IntPtrSub(offset, IntPtrConstant(kHeapObjectTag))));
}
// Load a SMI field and untag it.
TNode<IntPtrT> LoadAndUntagObjectField(SloppyTNode<HeapObject> object,
......@@ -3618,8 +3620,6 @@ class V8_EXPORT_PRIVATE CodeStubAssembler
TVariable<Smi>* var_feedback = nullptr);
Node* LoadObjectField(TNode<HeapObject> object, int offset, MachineType type);
Node* LoadObjectField(TNode<HeapObject> object, TNode<IntPtrT> offset,
MachineType type);
// Low-level accessors for Descriptor arrays.
template <typename T>
......
......@@ -538,6 +538,7 @@
['arch == arm64 and simulator_run', {
'compiler/osr-big': [PASS, SLOW],
'regress/regress-454725': [PASS, SLOW],
'json': [PASS, SLOW],
'try': [PASS, SLOW],
'non-extensible-array-reduce': [PASS, SLOW],
}], # 'arch == arm64 and simulator_run'
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment