Line data Source code
1 : #ifndef V8_TORQUE_BASE_FROM_DSL_BASE_H__
2 : #define V8_TORQUE_BASE_FROM_DSL_BASE_H__
3 :
4 : #include "src/compiler/code-assembler.h"
5 : #include "src/utils.h"
6 : #include "torque-generated/class-definitions-from-dsl.h"
7 :
8 : namespace v8 {
9 : namespace internal {
10 :
11 751449 : class BaseBuiltinsFromDSLAssembler {
12 : public:
13 751449 : explicit BaseBuiltinsFromDSLAssembler(compiler::CodeAssemblerState* state) : state_(state), ca_(state) { USE(state_, ca_); }
14 : compiler::TNode<JSObject> NewJSObject(compiler::TNode<Map> p_map, compiler::TNode<Object> p_properties, compiler::TNode<FixedArrayBase> p_elements);
15 : compiler::TNode<JSObject> NewJSObject(compiler::TNode<Context> p_context);
16 : compiler::TNode<JSArray> NewJSArray(compiler::TNode<Context> p_context, compiler::TNode<Map> p_map, compiler::TNode<FixedArrayBase> p_elements);
17 : compiler::TNode<JSArray> NewJSArray(compiler::TNode<Context> p_context);
18 : compiler::TNode<Oddball> Hole();
19 : compiler::TNode<Oddball> Null();
20 : compiler::TNode<Oddball> Undefined();
21 : compiler::TNode<Oddball> True();
22 : compiler::TNode<Oddball> False();
23 : compiler::TNode<String> kEmptyString();
24 : compiler::TNode<String> kLengthString();
25 : compiler::TNode<BoolT> ElementsKindNotEqual(compiler::TNode<Int32T> p_k1, compiler::TNode<Int32T> p_k2);
26 : compiler::TNode<BoolT> IsNumberEqual(compiler::TNode<Number> p_a, compiler::TNode<Number> p_b);
27 : compiler::TNode<BoolT> IsNumberNotEqual(compiler::TNode<Number> p_a, compiler::TNode<Number> p_b);
28 : compiler::TNode<Number> Min(compiler::TNode<Number> p_x, compiler::TNode<Number> p_y);
29 : compiler::TNode<Number> Max(compiler::TNode<Number> p_x, compiler::TNode<Number> p_y);
30 : compiler::TNode<String> StringAdd(compiler::TNode<Context> p_context, compiler::TNode<String> p_a, compiler::TNode<String> p_b);
31 : compiler::TNode<Smi> Cast5ATSmi(compiler::TNode<Object> p_o, compiler::CodeAssemblerLabel* label_CastError);
32 : compiler::TNode<Smi> Cast13ATPositiveSmi(compiler::TNode<Object> p_o, compiler::CodeAssemblerLabel* label_CastError);
33 : compiler::TNode<Number> Cast22UT12ATHeapNumber5ATSmi(compiler::TNode<Object> p_o, compiler::CodeAssemblerLabel* label_CastError);
34 : compiler::TNode<HeapObject> Cast10HeapObject(compiler::TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError);
35 : compiler::TNode<FixedArray> Cast10FixedArray(compiler::TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError);
36 : compiler::TNode<FixedDoubleArray> Cast16FixedDoubleArray(compiler::TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError);
37 : compiler::TNode<SloppyArgumentsElements> Cast23SloppyArgumentsElements(compiler::TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError);
38 : compiler::TNode<JSDataView> Cast12ATJSDataView(compiler::TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError);
39 : compiler::TNode<JSProxy> Cast7JSProxy(compiler::TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError);
40 : compiler::TNode<JSTypedArray> Cast12JSTypedArray(compiler::TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError);
41 : compiler::TNode<JSTypedArray> Cast12JSTypedArray(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o, compiler::CodeAssemblerLabel* label_CastError);
42 : compiler::TNode<JSReceiver> Cast39UT15JSBoundFunction10JSFunction7JSProxy(compiler::TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError);
43 : compiler::TNode<HeapObject> Cast52UT11ATUndefined15JSBoundFunction10JSFunction7JSProxy(compiler::TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError);
44 : compiler::TNode<JSArray> Cast7JSArray(compiler::TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError);
45 : compiler::TNode<JSArrayBuffer> Cast13JSArrayBuffer(compiler::TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError);
46 : compiler::TNode<Context> Cast9ATContext(compiler::TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError);
47 : compiler::TNode<JSObject> Cast8JSObject(compiler::TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError);
48 : compiler::TNode<NumberDictionary> Cast18ATNumberDictionary(compiler::TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError);
49 : compiler::TNode<FixedTypedArrayBase> Cast19FixedTypedArrayBase(compiler::TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError);
50 : compiler::TNode<String> Cast6String(compiler::TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError);
51 : compiler::TNode<String> Cast14ATDirectString(compiler::TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError);
52 : compiler::TNode<JSReceiver> Cast13ATConstructor(compiler::TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError);
53 : compiler::TNode<HeapNumber> Cast12ATHeapNumber(compiler::TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError);
54 : compiler::TNode<Map> Cast5ATMap(compiler::TNode<Context> p_context, compiler::TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError);
55 : compiler::TNode<JSArgumentsObjectWithLength> Cast27JSArgumentsObjectWithLength(compiler::TNode<Context> p_context, compiler::TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError);
56 : compiler::TNode<JSArray> Cast13ATFastJSArray(compiler::TNode<Context> p_context, compiler::TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError);
57 : compiler::TNode<JSArray> Cast20ATFastJSArrayForCopy(compiler::TNode<Context> p_context, compiler::TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError);
58 : compiler::TNode<JSArray> Cast34ATFastJSArrayWithNoCustomIteration(compiler::TNode<Context> p_context, compiler::TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError);
59 : compiler::TNode<JSReceiver> Cast10JSReceiver(compiler::TNode<Context> p_context, compiler::TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError);
60 : compiler::TNode<JSFunction> Cast10JSFunction(compiler::TNode<Context> p_context, compiler::TNode<HeapObject> p_o, compiler::CodeAssemblerLabel* label_CastError);
61 : compiler::TNode<Smi> TryUintPtrToPositiveSmi(compiler::TNode<UintPtrT> p_ui, compiler::CodeAssemblerLabel* label_IfOverflow);
62 : compiler::TNode<Int32T> FromConstexpr7ATint3117ATconstexpr_int31(int31_t p_i);
63 : compiler::TNode<Int32T> FromConstexpr7ATint3217ATconstexpr_int31(int31_t p_i);
64 : compiler::TNode<Int32T> FromConstexpr7ATint3217ATconstexpr_int32(int32_t p_i);
65 : compiler::TNode<IntPtrT> FromConstexpr8ATintptr17ATconstexpr_int31(int31_t p_i);
66 : compiler::TNode<IntPtrT> FromConstexpr8ATintptr17ATconstexpr_int32(int32_t p_i);
67 : compiler::TNode<IntPtrT> FromConstexpr8ATintptr18ATconstexpr_intptr(intptr_t p_i);
68 : compiler::TNode<UintPtrT> FromConstexpr9ATuintptr19ATconstexpr_uintptr(uintptr_t p_i);
69 : compiler::TNode<Smi> FromConstexpr5ATSmi17ATconstexpr_int31(int31_t p_i);
70 : compiler::TNode<Smi> FromConstexpr13ATPositiveSmi17ATconstexpr_int31(int31_t p_i);
71 : compiler::TNode<String> FromConstexpr6String18ATconstexpr_string(const char* p_s);
72 : compiler::TNode<Number> FromConstexpr22UT12ATHeapNumber5ATSmi18ATconstexpr_uint32(uint32_t p_i);
73 : compiler::TNode<Number> FromConstexpr22UT12ATHeapNumber5ATSmi17ATconstexpr_int32(int32_t p_i);
74 : compiler::TNode<Number> FromConstexpr22UT12ATHeapNumber5ATSmi19ATconstexpr_float64(double p_f);
75 : compiler::TNode<Number> FromConstexpr22UT12ATHeapNumber5ATSmi17ATconstexpr_int31(int31_t p_i);
76 : compiler::TNode<Number> FromConstexpr22UT12ATHeapNumber5ATSmi15ATconstexpr_Smi(Smi p_s);
77 : compiler::TNode<Smi> FromConstexpr5ATSmi15ATconstexpr_Smi(Smi p_s);
78 : compiler::TNode<Uint32T> FromConstexpr8ATuint3217ATconstexpr_int31(int31_t p_i);
79 : compiler::TNode<UintPtrT> FromConstexpr9ATuintptr17ATconstexpr_int31(int31_t p_i);
80 : compiler::TNode<Float64T> FromConstexpr9ATfloat6417ATconstexpr_int31(int31_t p_i);
81 : compiler::TNode<Float64T> FromConstexpr9ATfloat6419ATconstexpr_float64(double p_i);
82 : compiler::TNode<BoolT> FromConstexpr6ATbool16ATconstexpr_bool(bool p_b);
83 : compiler::TNode<Smi> FromConstexpr14ATLanguageMode24ATconstexpr_LanguageMode(LanguageMode p_m);
84 : compiler::TNode<Int32T> FromConstexpr14ATElementsKind24ATconstexpr_ElementsKind(ElementsKind p_e);
85 : compiler::TNode<Object> FromConstexpr20UT5ATSmi10HeapObject18ATconstexpr_string(const char* p_s);
86 : compiler::TNode<IntPtrT> FromConstexpr19ATNativeContextSlot29ATconstexpr_NativeContextSlot(int32_t p_c);
87 : compiler::TNode<IntPtrT> FromConstexpr13ATContextSlot23ATconstexpr_ContextSlot(int32_t p_c);
88 : compiler::TNode<Int32T> Convert7ATint3214ATElementsKind(compiler::TNode<Int32T> p_elementsKind);
89 : compiler::TNode<Number> Convert22UT12ATHeapNumber5ATSmi7ATint32(compiler::TNode<Int32T> p_i);
90 : compiler::TNode<IntPtrT> Convert8ATintptr7ATint32(compiler::TNode<Int32T> p_i);
91 : compiler::TNode<Smi> Convert5ATSmi7ATint32(compiler::TNode<Int32T> p_i);
92 : compiler::TNode<Number> Convert22UT12ATHeapNumber5ATSmi8ATuint32(compiler::TNode<Uint32T> p_ui);
93 : compiler::TNode<Smi> Convert5ATSmi8ATuint32(compiler::TNode<Uint32T> p_ui);
94 : compiler::TNode<UintPtrT> Convert9ATuintptr8ATuint32(compiler::TNode<Uint32T> p_ui);
95 : compiler::TNode<Int32T> Convert7ATint327ATuint8(compiler::TNode<Uint32T> p_i);
96 : compiler::TNode<Int32T> Convert7ATint328ATuint16(compiler::TNode<Uint32T> p_i);
97 : compiler::TNode<Int32T> Convert7ATint328ATuint31(compiler::TNode<Uint32T> p_i);
98 : compiler::TNode<Int32T> Convert7ATint328ATintptr(compiler::TNode<IntPtrT> p_i);
99 : compiler::TNode<Smi> Convert5ATSmi8ATintptr(compiler::TNode<IntPtrT> p_i);
100 : compiler::TNode<Uint32T> Convert8ATuint329ATuintptr(compiler::TNode<UintPtrT> p_ui);
101 : compiler::TNode<IntPtrT> Convert8ATintptr5ATSmi(compiler::TNode<Smi> p_s);
102 : compiler::TNode<UintPtrT> Convert9ATuintptr13ATPositiveSmi(compiler::TNode<Smi> p_ps);
103 : compiler::TNode<IntPtrT> Convert8ATintptr9ATuintptr(compiler::TNode<UintPtrT> p_ui);
104 : compiler::TNode<Smi> Convert13ATPositiveSmi8ATintptr(compiler::TNode<IntPtrT> p_i);
105 : compiler::TNode<Int32T> Convert7ATint325ATSmi(compiler::TNode<Smi> p_s);
106 : compiler::TNode<Float64T> Convert9ATfloat6412ATHeapNumber(compiler::TNode<HeapNumber> p_h);
107 : compiler::TNode<Float64T> Convert9ATfloat6422UT12ATHeapNumber5ATSmi(compiler::TNode<Number> p_n);
108 : compiler::TNode<UintPtrT> Convert9ATuintptr22UT12ATHeapNumber5ATSmi(compiler::TNode<Number> p_n);
109 : compiler::TNode<Float64T> Convert9ATfloat649ATfloat32(compiler::TNode<Float32T> p_f);
110 : compiler::TNode<Number> Convert22UT12ATHeapNumber5ATSmi9ATfloat64(compiler::TNode<Float64T> p_d);
111 : compiler::TNode<Float64T> Convert9ATfloat649ATuintptr(compiler::TNode<UintPtrT> p_ui);
112 : compiler::TNode<Number> Convert22UT12ATHeapNumber5ATSmi9ATuintptr(compiler::TNode<UintPtrT> p_ui);
113 : compiler::TNode<UintPtrT> Convert9ATuintptr9ATfloat64(compiler::TNode<Float64T> p_d);
114 : compiler::TNode<UintPtrT> Convert9ATuintptr8ATintptr(compiler::TNode<IntPtrT> p_i);
115 : compiler::TNode<UintPtrT> Convert9ATuintptr8ATRawPtr(compiler::TNode<RawPtrT> p_r);
116 : compiler::TNode<IntPtrT> Convert8ATintptr8ATRawPtr(compiler::TNode<RawPtrT> p_r);
117 : compiler::TNode<BInt> Convert6ATbint7ATint32(compiler::TNode<Int32T> p_v);
118 : compiler::TNode<BInt> Convert6ATbint8ATintptr(compiler::TNode<IntPtrT> p_v);
119 : compiler::TNode<BInt> Convert6ATbint5ATSmi(compiler::TNode<Smi> p_v);
120 : compiler::TNode<Object> UnsafeCast20UT5ATSmi10HeapObject(compiler::TNode<Object> p_o);
121 : compiler::TNode<Map> kCOWMap();
122 : compiler::TNode<FixedArray> kEmptyFixedArray();
123 : void StoreFixedDoubleArrayElementSmi(compiler::TNode<FixedDoubleArray> p_a, compiler::TNode<Smi> p_i, compiler::TNode<Number> p_n);
124 : void StoreFixedDoubleArrayDirect(compiler::TNode<FixedDoubleArray> p_a, compiler::TNode<Smi> p_i, compiler::TNode<Number> p_v);
125 : void StoreFixedArrayDirect(compiler::TNode<FixedArray> p_a, compiler::TNode<Smi> p_i, compiler::TNode<Object> p_v);
126 : compiler::TNode<Int32T> FastHoleyElementsKind(compiler::TNode<Int32T> p_kind);
127 : compiler::TNode<Int32T> AllowDoubleElements(compiler::TNode<Int32T> p_kind);
128 : compiler::TNode<Int32T> AllowNonNumberElements(compiler::TNode<Int32T> p_kind);
129 : compiler::TNode<JSFunction> GetObjectFunction(compiler::TNode<Context> p_context);
130 : compiler::TNode<JSReceiver> GetArrayBufferFunction(compiler::TNode<Context> p_context);
131 : compiler::TNode<JSFunction> GetArrayBufferNoInitFunction(compiler::TNode<Context> p_context);
132 : compiler::TNode<Map> GetFastPackedSmiElementsJSArrayMap(compiler::TNode<Context> p_context);
133 : void TorqueMoveElementsSmi(compiler::TNode<FixedArray> p_elements, compiler::TNode<IntPtrT> p_dstIndex, compiler::TNode<IntPtrT> p_srcIndex, compiler::TNode<IntPtrT> p_count);
134 : void TorqueMoveElements(compiler::TNode<FixedArray> p_elements, compiler::TNode<IntPtrT> p_dstIndex, compiler::TNode<IntPtrT> p_srcIndex, compiler::TNode<IntPtrT> p_count);
135 : void TorqueMoveElements(compiler::TNode<FixedDoubleArray> p_elements, compiler::TNode<IntPtrT> p_dstIndex, compiler::TNode<IntPtrT> p_srcIndex, compiler::TNode<IntPtrT> p_count);
136 : void TorqueCopyElements(compiler::TNode<FixedArray> p_dstElements, compiler::TNode<IntPtrT> p_dstIndex, compiler::TNode<FixedArray> p_srcElements, compiler::TNode<IntPtrT> p_srcIndex, compiler::TNode<IntPtrT> p_count);
137 : void TorqueCopyElements(compiler::TNode<FixedDoubleArray> p_dstElements, compiler::TNode<IntPtrT> p_dstIndex, compiler::TNode<FixedDoubleArray> p_srcElements, compiler::TNode<IntPtrT> p_srcIndex, compiler::TNode<IntPtrT> p_count);
138 : compiler::TNode<Object> LoadElementNoHole10FixedArray(compiler::TNode<Context> p_context, compiler::TNode<JSArray> p_a, compiler::TNode<Smi> p_index, compiler::CodeAssemblerLabel* label_IfHole);
139 : compiler::TNode<Object> LoadElementNoHole16FixedDoubleArray(compiler::TNode<Context> p_context, compiler::TNode<JSArray> p_a, compiler::TNode<Smi> p_index, compiler::CodeAssemblerLabel* label_IfHole);
140 : struct FastJSArrayWitness {
141 : compiler::TNode<JSArray> stable;
142 : compiler::TNode<JSArray> unstable;
143 : compiler::TNode<Map> map;
144 : compiler::TNode<BoolT> hasDoubles;
145 : compiler::TNode<BoolT> hasSmis;
146 : compiler::TNode<BoolT> arrayIsPushable;
147 :
148 616 : std::tuple<compiler::TNode<JSArray>, compiler::TNode<JSArray>, compiler::TNode<Map>, compiler::TNode<BoolT>, compiler::TNode<BoolT>, compiler::TNode<BoolT>> Flatten() const {
149 616 : return std::tuple_cat(std::make_tuple(stable), std::make_tuple(unstable), std::make_tuple(map), std::make_tuple(hasDoubles), std::make_tuple(hasSmis), std::make_tuple(arrayIsPushable));
150 : }
151 : };
152 : BaseBuiltinsFromDSLAssembler::FastJSArrayWitness NewFastJSArrayWitness(compiler::TNode<JSArray> p_array);
153 : compiler::TNode<BoolT> NumberIsNaN(compiler::TNode<Number> p_number);
154 : compiler::TNode<BoolT> ToBoolean(compiler::TNode<Object> p_obj);
155 : compiler::TNode<Number> ToIndex(compiler::TNode<Object> p_input, compiler::TNode<Context> p_context, compiler::CodeAssemblerLabel* label_RangeError);
156 : compiler::TNode<Number> GetLengthProperty(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o);
157 : struct KeyValuePair {
158 : compiler::TNode<Object> key;
159 : compiler::TNode<Object> value;
160 :
161 280 : std::tuple<compiler::TNode<Object>, compiler::TNode<Object>> Flatten() const {
162 280 : return std::tuple_cat(std::make_tuple(key), std::make_tuple(value));
163 : }
164 : };
165 : compiler::TNode<BoolT> IsFastJSArray(compiler::TNode<Object> p_o, compiler::TNode<Context> p_context);
166 : void BranchIfFastJSArray(compiler::TNode<Object> p_o, compiler::TNode<Context> p_context, compiler::CodeAssemblerLabel* label_True, compiler::CodeAssemblerLabel* label_False);
167 : void BranchIfNotFastJSArray(compiler::TNode<Object> p_o, compiler::TNode<Context> p_context, compiler::CodeAssemblerLabel* label_True, compiler::CodeAssemblerLabel* label_False);
168 : void BranchIfFastJSArrayForCopy(compiler::TNode<Object> p_o, compiler::TNode<Context> p_context, compiler::CodeAssemblerLabel* label_True, compiler::CodeAssemblerLabel* label_False);
169 : compiler::TNode<BoolT> IsFastJSArrayWithNoCustomIteration(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o);
170 : compiler::TNode<Smi> FromConstexpr11ATFrameType21ATconstexpr_FrameType(StackFrame::Type p_t);
171 : compiler::TNode<Smi> Cast11ATFrameType(compiler::TNode<Object> p_o, compiler::CodeAssemblerLabel* label_CastError);
172 : compiler::TNode<Object> LoadObjectFromFrame(compiler::TNode<RawPtrT> p_f, int32_t p_o);
173 : compiler::TNode<RawPtrT> LoadPointerFromFrame(compiler::TNode<RawPtrT> p_f, int32_t p_o);
174 : compiler::TNode<Smi> LoadSmiFromFrame(compiler::TNode<RawPtrT> p_f, int32_t p_o);
175 : compiler::TNode<JSFunction> LoadFunctionFromFrame(compiler::TNode<RawPtrT> p_f);
176 : compiler::TNode<RawPtrT> LoadCallerFromFrame(compiler::TNode<RawPtrT> p_f);
177 : compiler::TNode<Object> Cast25UT9ATContext11ATFrameType(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o, compiler::CodeAssemblerLabel* label_CastError);
178 : compiler::TNode<Object> LoadContextOrFrameTypeFromFrame(compiler::TNode<Context> p_context, compiler::TNode<RawPtrT> p_f);
179 : compiler::TNode<Smi> LoadLengthFromAdapterFrame(compiler::TNode<Context> p_context, compiler::TNode<RawPtrT> p_f);
180 : compiler::TNode<BoolT> FrameTypeEquals(compiler::TNode<Smi> p_f1, compiler::TNode<Smi> p_f2);
181 : compiler::TNode<RawPtrT> Cast15ATStandardFrame(compiler::TNode<Context> p_context, compiler::TNode<RawPtrT> p_f, compiler::CodeAssemblerLabel* label_CastError);
182 : compiler::TNode<RawPtrT> Cast23ATArgumentsAdaptorFrame(compiler::TNode<Context> p_context, compiler::TNode<RawPtrT> p_f, compiler::CodeAssemblerLabel* label_CastError);
183 : compiler::TNode<JSFunction> LoadTargetFromFrame();
184 : compiler::TNode<Map> LoadHeapObjectMap(compiler::TNode<HeapObject> p_o);
185 : void StoreHeapObjectMap(compiler::TNode<HeapObject> p_o, compiler::TNode<Map> p_v);
186 : compiler::TNode<Float64T> LoadOddballToNumberRaw(compiler::TNode<Oddball> p_o);
187 : void StoreOddballToNumberRaw(compiler::TNode<Oddball> p_o, compiler::TNode<Float64T> p_v);
188 : compiler::TNode<String> LoadOddballToString(compiler::TNode<Oddball> p_o);
189 : void StoreOddballToString(compiler::TNode<Oddball> p_o, compiler::TNode<String> p_v);
190 : compiler::TNode<Number> LoadOddballToNumber(compiler::TNode<Oddball> p_o);
191 : void StoreOddballToNumber(compiler::TNode<Oddball> p_o, compiler::TNode<Number> p_v);
192 : compiler::TNode<String> LoadOddballTypeOf(compiler::TNode<Oddball> p_o);
193 : void StoreOddballTypeOf(compiler::TNode<Oddball> p_o, compiler::TNode<String> p_v);
194 : compiler::TNode<Smi> LoadOddballKind(compiler::TNode<Oddball> p_o);
195 : void StoreOddballKind(compiler::TNode<Oddball> p_o, compiler::TNode<Smi> p_v);
196 : compiler::TNode<Int32T> LoadNameHashField(compiler::TNode<Name> p_o);
197 : void StoreNameHashField(compiler::TNode<Name> p_o, compiler::TNode<Int32T> p_v);
198 : compiler::TNode<Int32T> LoadSymbolFlags(compiler::TNode<Symbol> p_o);
199 : void StoreSymbolFlags(compiler::TNode<Symbol> p_o, compiler::TNode<Int32T> p_v);
200 : compiler::TNode<Object> LoadSymbolName(compiler::TNode<Symbol> p_o);
201 : void StoreSymbolName(compiler::TNode<Symbol> p_o, compiler::TNode<Object> p_v);
202 : compiler::TNode<Uint32T> LoadStringLength(compiler::TNode<String> p_o);
203 : void StoreStringLength(compiler::TNode<String> p_o, compiler::TNode<Uint32T> p_v);
204 : compiler::TNode<String> LoadConsStringFirst(compiler::TNode<ConsString> p_o);
205 : void StoreConsStringFirst(compiler::TNode<ConsString> p_o, compiler::TNode<String> p_v);
206 : compiler::TNode<String> LoadConsStringSecond(compiler::TNode<ConsString> p_o);
207 : void StoreConsStringSecond(compiler::TNode<ConsString> p_o, compiler::TNode<String> p_v);
208 : compiler::TNode<RawPtrT> LoadExternalStringResource(compiler::TNode<ExternalString> p_o);
209 : void StoreExternalStringResource(compiler::TNode<ExternalString> p_o, compiler::TNode<RawPtrT> p_v);
210 : compiler::TNode<RawPtrT> LoadExternalStringResourceData(compiler::TNode<ExternalString> p_o);
211 : void StoreExternalStringResourceData(compiler::TNode<ExternalString> p_o, compiler::TNode<RawPtrT> p_v);
212 : compiler::TNode<String> LoadSlicedStringParent(compiler::TNode<SlicedString> p_o);
213 : void StoreSlicedStringParent(compiler::TNode<SlicedString> p_o, compiler::TNode<String> p_v);
214 : compiler::TNode<Smi> LoadSlicedStringOffset(compiler::TNode<SlicedString> p_o);
215 : void StoreSlicedStringOffset(compiler::TNode<SlicedString> p_o, compiler::TNode<Smi> p_v);
216 : compiler::TNode<String> LoadThinStringActual(compiler::TNode<ThinString> p_o);
217 : void StoreThinStringActual(compiler::TNode<ThinString> p_o, compiler::TNode<String> p_v);
218 : compiler::TNode<Object> LoadTuple2Value1(compiler::TNode<Tuple2> p_o);
219 : void StoreTuple2Value1(compiler::TNode<Tuple2> p_o, compiler::TNode<Object> p_v);
220 : compiler::TNode<Object> LoadTuple2Value2(compiler::TNode<Tuple2> p_o);
221 : void StoreTuple2Value2(compiler::TNode<Tuple2> p_o, compiler::TNode<Object> p_v);
222 : compiler::TNode<Object> LoadTuple3Value3(compiler::TNode<Tuple3> p_o);
223 : void StoreTuple3Value3(compiler::TNode<Tuple3> p_o, compiler::TNode<Object> p_v);
224 : compiler::TNode<Smi> LoadFixedArrayBaseLength(compiler::TNode<FixedArrayBase> p_o);
225 : void StoreFixedArrayBaseLength(compiler::TNode<FixedArrayBase> p_o, compiler::TNode<Smi> p_v);
226 : compiler::TNode<Object> LoadJSReceiverPropertiesOrHash(compiler::TNode<JSReceiver> p_o);
227 : void StoreJSReceiverPropertiesOrHash(compiler::TNode<JSReceiver> p_o, compiler::TNode<Object> p_v);
228 : compiler::TNode<FixedArrayBase> LoadJSObjectElements(compiler::TNode<JSObject> p_o);
229 : void StoreJSObjectElements(compiler::TNode<JSObject> p_o, compiler::TNode<FixedArrayBase> p_v);
230 : compiler::TNode<Object> LoadJSProxyTarget(compiler::TNode<JSProxy> p_o);
231 : void StoreJSProxyTarget(compiler::TNode<JSProxy> p_o, compiler::TNode<Object> p_v);
232 : compiler::TNode<Object> LoadJSProxyHandler(compiler::TNode<JSProxy> p_o);
233 : void StoreJSProxyHandler(compiler::TNode<JSProxy> p_o, compiler::TNode<Object> p_v);
234 : compiler::TNode<Object> LoadJSProxyRevocableResultProxy(compiler::TNode<JSProxyRevocableResult> p_o);
235 : void StoreJSProxyRevocableResultProxy(compiler::TNode<JSProxyRevocableResult> p_o, compiler::TNode<Object> p_v);
236 : compiler::TNode<Object> LoadJSProxyRevocableResultRevoke(compiler::TNode<JSProxyRevocableResult> p_o);
237 : void StoreJSProxyRevocableResultRevoke(compiler::TNode<JSProxyRevocableResult> p_o, compiler::TNode<Object> p_v);
238 : compiler::TNode<Object> LoadJSGlobalProxyNativeContext(compiler::TNode<JSGlobalProxy> p_o);
239 : void StoreJSGlobalProxyNativeContext(compiler::TNode<JSGlobalProxy> p_o, compiler::TNode<Object> p_v);
240 : compiler::TNode<Object> LoadJSValueValue(compiler::TNode<JSValue> p_o);
241 : void StoreJSValueValue(compiler::TNode<JSValue> p_o, compiler::TNode<Object> p_v);
242 : compiler::TNode<Object> LoadJSArgumentsObjectWithLengthLength(compiler::TNode<JSArgumentsObjectWithLength> p_o);
243 : void StoreJSArgumentsObjectWithLengthLength(compiler::TNode<JSArgumentsObjectWithLength> p_o, compiler::TNode<Object> p_v);
244 : compiler::TNode<Object> LoadJSSloppyArgumentsObjectCallee(compiler::TNode<JSSloppyArgumentsObject> p_o);
245 : void StoreJSSloppyArgumentsObjectCallee(compiler::TNode<JSSloppyArgumentsObject> p_o, compiler::TNode<Object> p_v);
246 : compiler::TNode<JSReceiver> LoadJSArrayIteratorIteratedObject(compiler::TNode<JSArrayIterator> p_o);
247 : void StoreJSArrayIteratorIteratedObject(compiler::TNode<JSArrayIterator> p_o, compiler::TNode<JSReceiver> p_v);
248 : compiler::TNode<Number> LoadJSArrayIteratorNextIndex(compiler::TNode<JSArrayIterator> p_o);
249 : void StoreJSArrayIteratorNextIndex(compiler::TNode<JSArrayIterator> p_o, compiler::TNode<Number> p_v);
250 : compiler::TNode<Smi> LoadJSArrayIteratorKind(compiler::TNode<JSArrayIterator> p_o);
251 : void StoreJSArrayIteratorKind(compiler::TNode<JSArrayIterator> p_o, compiler::TNode<Smi> p_v);
252 : compiler::TNode<Number> LoadJSArrayLength(compiler::TNode<JSArray> p_o);
253 : void StoreJSArrayLength(compiler::TNode<JSArray> p_o, compiler::TNode<Number> p_v);
254 : compiler::TNode<BoolT> _method_JSArray_IsEmpty(compiler::TNode<JSArray> p_this);
255 : compiler::TNode<Object> LoadJSWeakCollectionTable(compiler::TNode<JSWeakCollection> p_o);
256 : void StoreJSWeakCollectionTable(compiler::TNode<JSWeakCollection> p_o, compiler::TNode<Object> p_v);
257 : compiler::TNode<Object> LoadJSCollectionIteratorTable(compiler::TNode<JSCollectionIterator> p_o);
258 : void StoreJSCollectionIteratorTable(compiler::TNode<JSCollectionIterator> p_o, compiler::TNode<Object> p_v);
259 : compiler::TNode<Object> LoadJSCollectionIteratorIndex(compiler::TNode<JSCollectionIterator> p_o);
260 : void StoreJSCollectionIteratorIndex(compiler::TNode<JSCollectionIterator> p_o, compiler::TNode<Object> p_v);
261 : compiler::TNode<HeapObject> LoadPrototypeInfoJsModuleNamespace(compiler::TNode<PrototypeInfo> p_o);
262 : void StorePrototypeInfoJsModuleNamespace(compiler::TNode<PrototypeInfo> p_o, compiler::TNode<HeapObject> p_v);
263 : compiler::TNode<Object> LoadPrototypeInfoPrototypeUsers(compiler::TNode<PrototypeInfo> p_o);
264 : void StorePrototypeInfoPrototypeUsers(compiler::TNode<PrototypeInfo> p_o, compiler::TNode<Object> p_v);
265 : compiler::TNode<Smi> LoadPrototypeInfoRegistrySlot(compiler::TNode<PrototypeInfo> p_o);
266 : void StorePrototypeInfoRegistrySlot(compiler::TNode<PrototypeInfo> p_o, compiler::TNode<Smi> p_v);
267 : compiler::TNode<Object> LoadPrototypeInfoValidityCell(compiler::TNode<PrototypeInfo> p_o);
268 : void StorePrototypeInfoValidityCell(compiler::TNode<PrototypeInfo> p_o, compiler::TNode<Object> p_v);
269 : compiler::TNode<Object> LoadPrototypeInfoObjectCreateMap(compiler::TNode<PrototypeInfo> p_o);
270 : void StorePrototypeInfoObjectCreateMap(compiler::TNode<PrototypeInfo> p_o, compiler::TNode<Object> p_v);
271 : compiler::TNode<Smi> LoadPrototypeInfoBitField(compiler::TNode<PrototypeInfo> p_o);
272 : void StorePrototypeInfoBitField(compiler::TNode<PrototypeInfo> p_o, compiler::TNode<Smi> p_v);
273 : compiler::TNode<Object> LoadScriptSource(compiler::TNode<Script> p_o);
274 : void StoreScriptSource(compiler::TNode<Script> p_o, compiler::TNode<Object> p_v);
275 : compiler::TNode<Object> LoadScriptName(compiler::TNode<Script> p_o);
276 : void StoreScriptName(compiler::TNode<Script> p_o, compiler::TNode<Object> p_v);
277 : compiler::TNode<Smi> LoadScriptLineOffset(compiler::TNode<Script> p_o);
278 : void StoreScriptLineOffset(compiler::TNode<Script> p_o, compiler::TNode<Smi> p_v);
279 : compiler::TNode<Smi> LoadScriptColumnOffset(compiler::TNode<Script> p_o);
280 : void StoreScriptColumnOffset(compiler::TNode<Script> p_o, compiler::TNode<Smi> p_v);
281 : compiler::TNode<Object> LoadScriptContext(compiler::TNode<Script> p_o);
282 : void StoreScriptContext(compiler::TNode<Script> p_o, compiler::TNode<Object> p_v);
283 : compiler::TNode<Smi> LoadScriptScriptType(compiler::TNode<Script> p_o);
284 : void StoreScriptScriptType(compiler::TNode<Script> p_o, compiler::TNode<Smi> p_v);
285 : compiler::TNode<Object> LoadScriptLineEnds(compiler::TNode<Script> p_o);
286 : void StoreScriptLineEnds(compiler::TNode<Script> p_o, compiler::TNode<Object> p_v);
287 : compiler::TNode<Smi> LoadScriptId(compiler::TNode<Script> p_o);
288 : void StoreScriptId(compiler::TNode<Script> p_o, compiler::TNode<Smi> p_v);
289 : compiler::TNode<Object> LoadScriptEvalFromSharedOrWrappedArguments(compiler::TNode<Script> p_o);
290 : void StoreScriptEvalFromSharedOrWrappedArguments(compiler::TNode<Script> p_o, compiler::TNode<Object> p_v);
291 : compiler::TNode<Smi> LoadScriptEvalFromPosition(compiler::TNode<Script> p_o);
292 : void StoreScriptEvalFromPosition(compiler::TNode<Script> p_o, compiler::TNode<Smi> p_v);
293 : compiler::TNode<Object> LoadScriptSharedFunctionInfos(compiler::TNode<Script> p_o);
294 : void StoreScriptSharedFunctionInfos(compiler::TNode<Script> p_o, compiler::TNode<Object> p_v);
295 : compiler::TNode<Smi> LoadScriptFlags(compiler::TNode<Script> p_o);
296 : void StoreScriptFlags(compiler::TNode<Script> p_o, compiler::TNode<Smi> p_v);
297 : compiler::TNode<Object> LoadScriptSourceUrl(compiler::TNode<Script> p_o);
298 : void StoreScriptSourceUrl(compiler::TNode<Script> p_o, compiler::TNode<Object> p_v);
299 : compiler::TNode<Object> LoadScriptSourceMappingUrl(compiler::TNode<Script> p_o);
300 : void StoreScriptSourceMappingUrl(compiler::TNode<Script> p_o, compiler::TNode<Object> p_v);
301 : compiler::TNode<Object> LoadScriptHostDefinedOptions(compiler::TNode<Script> p_o);
302 : void StoreScriptHostDefinedOptions(compiler::TNode<Script> p_o, compiler::TNode<Object> p_v);
303 : compiler::TNode<Int32T> LoadPreparseDataDataLength(compiler::TNode<PreparseData> p_o);
304 : void StorePreparseDataDataLength(compiler::TNode<PreparseData> p_o, compiler::TNode<Int32T> p_v);
305 : compiler::TNode<Int32T> LoadPreparseDataInnerLength(compiler::TNode<PreparseData> p_o);
306 : void StorePreparseDataInnerLength(compiler::TNode<PreparseData> p_o, compiler::TNode<Int32T> p_v);
307 : compiler::TNode<Object> LoadSharedFunctionInfoFunctionData(compiler::TNode<SharedFunctionInfo> p_o);
308 : void StoreSharedFunctionInfoFunctionData(compiler::TNode<SharedFunctionInfo> p_o, compiler::TNode<Object> p_v);
309 : compiler::TNode<Object> LoadSharedFunctionInfoNameOrScopeInfo(compiler::TNode<SharedFunctionInfo> p_o);
310 : void StoreSharedFunctionInfoNameOrScopeInfo(compiler::TNode<SharedFunctionInfo> p_o, compiler::TNode<Object> p_v);
311 : compiler::TNode<HeapObject> LoadSharedFunctionInfoOuterScopeInfoOrFeedbackMetadata(compiler::TNode<SharedFunctionInfo> p_o);
312 : void StoreSharedFunctionInfoOuterScopeInfoOrFeedbackMetadata(compiler::TNode<SharedFunctionInfo> p_o, compiler::TNode<HeapObject> p_v);
313 : compiler::TNode<HeapObject> LoadSharedFunctionInfoScriptOrDebugInfo(compiler::TNode<SharedFunctionInfo> p_o);
314 : void StoreSharedFunctionInfoScriptOrDebugInfo(compiler::TNode<SharedFunctionInfo> p_o, compiler::TNode<HeapObject> p_v);
315 : compiler::TNode<Int32T> LoadSharedFunctionInfoLength(compiler::TNode<SharedFunctionInfo> p_o);
316 : void StoreSharedFunctionInfoLength(compiler::TNode<SharedFunctionInfo> p_o, compiler::TNode<Int32T> p_v);
317 : compiler::TNode<Uint32T> LoadSharedFunctionInfoFormalParameterCount(compiler::TNode<SharedFunctionInfo> p_o);
318 : void StoreSharedFunctionInfoFormalParameterCount(compiler::TNode<SharedFunctionInfo> p_o, compiler::TNode<Uint32T> p_v);
319 : compiler::TNode<Uint32T> LoadSharedFunctionInfoExpectedNofProperties(compiler::TNode<SharedFunctionInfo> p_o);
320 : void StoreSharedFunctionInfoExpectedNofProperties(compiler::TNode<SharedFunctionInfo> p_o, compiler::TNode<Uint32T> p_v);
321 : compiler::TNode<Int32T> LoadSharedFunctionInfoFunctionTokenOffset(compiler::TNode<SharedFunctionInfo> p_o);
322 : void StoreSharedFunctionInfoFunctionTokenOffset(compiler::TNode<SharedFunctionInfo> p_o, compiler::TNode<Int32T> p_v);
323 : compiler::TNode<Int32T> LoadSharedFunctionInfoFlags(compiler::TNode<SharedFunctionInfo> p_o);
324 : void StoreSharedFunctionInfoFlags(compiler::TNode<SharedFunctionInfo> p_o, compiler::TNode<Int32T> p_v);
325 : compiler::TNode<Int32T> LoadSharedFunctionInfoWithIDUniqueId(compiler::TNode<SharedFunctionInfoWithID> p_o);
326 : void StoreSharedFunctionInfoWithIDUniqueId(compiler::TNode<SharedFunctionInfoWithID> p_o, compiler::TNode<Int32T> p_v);
327 : compiler::TNode<SharedFunctionInfo> LoadJSFunctionSharedFunctionInfo(compiler::TNode<JSFunction> p_o);
328 : void StoreJSFunctionSharedFunctionInfo(compiler::TNode<JSFunction> p_o, compiler::TNode<SharedFunctionInfo> p_v);
329 : compiler::TNode<Context> LoadJSFunctionContext(compiler::TNode<JSFunction> p_o);
330 : void StoreJSFunctionContext(compiler::TNode<JSFunction> p_o, compiler::TNode<Context> p_v);
331 : compiler::TNode<Smi> LoadJSFunctionFeedbackCell(compiler::TNode<JSFunction> p_o);
332 : void StoreJSFunctionFeedbackCell(compiler::TNode<JSFunction> p_o, compiler::TNode<Smi> p_v);
333 : compiler::TNode<Code> LoadJSFunctionCode(compiler::TNode<JSFunction> p_o);
334 : void StoreJSFunctionCode(compiler::TNode<JSFunction> p_o, compiler::TNode<Code> p_v);
335 : compiler::TNode<HeapObject> LoadJSFunctionPrototypeOrInitialMap(compiler::TNode<JSFunction> p_o);
336 : void StoreJSFunctionPrototypeOrInitialMap(compiler::TNode<JSFunction> p_o, compiler::TNode<HeapObject> p_v);
337 : compiler::TNode<JSReceiver> LoadJSBoundFunctionBoundTargetFunction(compiler::TNode<JSBoundFunction> p_o);
338 : void StoreJSBoundFunctionBoundTargetFunction(compiler::TNode<JSBoundFunction> p_o, compiler::TNode<JSReceiver> p_v);
339 : compiler::TNode<Object> LoadJSBoundFunctionBoundThis(compiler::TNode<JSBoundFunction> p_o);
340 : void StoreJSBoundFunctionBoundThis(compiler::TNode<JSBoundFunction> p_o, compiler::TNode<Object> p_v);
341 : compiler::TNode<FixedArray> LoadJSBoundFunctionBoundArguments(compiler::TNode<JSBoundFunction> p_o);
342 : void StoreJSBoundFunctionBoundArguments(compiler::TNode<JSBoundFunction> p_o, compiler::TNode<FixedArray> p_v);
343 : compiler::TNode<Smi> LoadFixedTypedArrayBaseBasePointer(compiler::TNode<FixedTypedArrayBase> p_o);
344 : void StoreFixedTypedArrayBaseBasePointer(compiler::TNode<FixedTypedArrayBase> p_o, compiler::TNode<Smi> p_v);
345 : compiler::TNode<RawPtrT> LoadFixedTypedArrayBaseExternalPointer(compiler::TNode<FixedTypedArrayBase> p_o);
346 : void StoreFixedTypedArrayBaseExternalPointer(compiler::TNode<FixedTypedArrayBase> p_o, compiler::TNode<RawPtrT> p_v);
347 : compiler::TNode<UintPtrT> LoadJSArrayBufferByteLength(compiler::TNode<JSArrayBuffer> p_o);
348 : void StoreJSArrayBufferByteLength(compiler::TNode<JSArrayBuffer> p_o, compiler::TNode<UintPtrT> p_v);
349 : compiler::TNode<RawPtrT> LoadJSArrayBufferBackingStore(compiler::TNode<JSArrayBuffer> p_o);
350 : void StoreJSArrayBufferBackingStore(compiler::TNode<JSArrayBuffer> p_o, compiler::TNode<RawPtrT> p_v);
351 : compiler::TNode<JSArrayBuffer> LoadJSArrayBufferViewBuffer(compiler::TNode<JSArrayBufferView> p_o);
352 : void StoreJSArrayBufferViewBuffer(compiler::TNode<JSArrayBufferView> p_o, compiler::TNode<JSArrayBuffer> p_v);
353 : compiler::TNode<UintPtrT> LoadJSArrayBufferViewByteOffset(compiler::TNode<JSArrayBufferView> p_o);
354 : void StoreJSArrayBufferViewByteOffset(compiler::TNode<JSArrayBufferView> p_o, compiler::TNode<UintPtrT> p_v);
355 : compiler::TNode<UintPtrT> LoadJSArrayBufferViewByteLength(compiler::TNode<JSArrayBufferView> p_o);
356 : void StoreJSArrayBufferViewByteLength(compiler::TNode<JSArrayBufferView> p_o, compiler::TNode<UintPtrT> p_v);
357 : compiler::TNode<Smi> LoadJSTypedArrayLength(compiler::TNode<JSTypedArray> p_o);
358 : void StoreJSTypedArrayLength(compiler::TNode<JSTypedArray> p_o, compiler::TNode<Smi> p_v);
359 : void _method_JSTypedArray_AttachOffHeapBuffer(compiler::TNode<JSTypedArray> p_this, compiler::TNode<JSArrayBuffer> p_buffer, compiler::TNode<Map> p_map, compiler::TNode<Smi> p_length, compiler::TNode<UintPtrT> p_byteOffset);
360 : compiler::TNode<Object> LoadJSAccessorPropertyDescriptorGet(compiler::TNode<JSAccessorPropertyDescriptor> p_o);
361 : void StoreJSAccessorPropertyDescriptorGet(compiler::TNode<JSAccessorPropertyDescriptor> p_o, compiler::TNode<Object> p_v);
362 : compiler::TNode<Object> LoadJSAccessorPropertyDescriptorSet(compiler::TNode<JSAccessorPropertyDescriptor> p_o);
363 : void StoreJSAccessorPropertyDescriptorSet(compiler::TNode<JSAccessorPropertyDescriptor> p_o, compiler::TNode<Object> p_v);
364 : compiler::TNode<Object> LoadJSAccessorPropertyDescriptorEnumerable(compiler::TNode<JSAccessorPropertyDescriptor> p_o);
365 : void StoreJSAccessorPropertyDescriptorEnumerable(compiler::TNode<JSAccessorPropertyDescriptor> p_o, compiler::TNode<Object> p_v);
366 : compiler::TNode<Object> LoadJSAccessorPropertyDescriptorConfigurable(compiler::TNode<JSAccessorPropertyDescriptor> p_o);
367 : void StoreJSAccessorPropertyDescriptorConfigurable(compiler::TNode<JSAccessorPropertyDescriptor> p_o, compiler::TNode<Object> p_v);
368 : compiler::TNode<Object> LoadJSCollectionTable(compiler::TNode<JSCollection> p_o);
369 : void StoreJSCollectionTable(compiler::TNode<JSCollection> p_o, compiler::TNode<Object> p_v);
370 : compiler::TNode<Object> LoadJSDateValue(compiler::TNode<JSDate> p_o);
371 : void StoreJSDateValue(compiler::TNode<JSDate> p_o, compiler::TNode<Object> p_v);
372 : compiler::TNode<Object> LoadJSDateYear(compiler::TNode<JSDate> p_o);
373 : void StoreJSDateYear(compiler::TNode<JSDate> p_o, compiler::TNode<Object> p_v);
374 : compiler::TNode<Object> LoadJSDateMonth(compiler::TNode<JSDate> p_o);
375 : void StoreJSDateMonth(compiler::TNode<JSDate> p_o, compiler::TNode<Object> p_v);
376 : compiler::TNode<Object> LoadJSDateDay(compiler::TNode<JSDate> p_o);
377 : void StoreJSDateDay(compiler::TNode<JSDate> p_o, compiler::TNode<Object> p_v);
378 : compiler::TNode<Object> LoadJSDateWeekday(compiler::TNode<JSDate> p_o);
379 : void StoreJSDateWeekday(compiler::TNode<JSDate> p_o, compiler::TNode<Object> p_v);
380 : compiler::TNode<Object> LoadJSDateHour(compiler::TNode<JSDate> p_o);
381 : void StoreJSDateHour(compiler::TNode<JSDate> p_o, compiler::TNode<Object> p_v);
382 : compiler::TNode<Object> LoadJSDateMin(compiler::TNode<JSDate> p_o);
383 : void StoreJSDateMin(compiler::TNode<JSDate> p_o, compiler::TNode<Object> p_v);
384 : compiler::TNode<Object> LoadJSDateSec(compiler::TNode<JSDate> p_o);
385 : void StoreJSDateSec(compiler::TNode<JSDate> p_o, compiler::TNode<Object> p_v);
386 : compiler::TNode<Object> LoadJSDateCacheStamp(compiler::TNode<JSDate> p_o);
387 : void StoreJSDateCacheStamp(compiler::TNode<JSDate> p_o, compiler::TNode<Object> p_v);
388 : compiler::TNode<JSReceiver> LoadJSAsyncFromSyncIteratorSyncIterator(compiler::TNode<JSAsyncFromSyncIterator> p_o);
389 : void StoreJSAsyncFromSyncIteratorSyncIterator(compiler::TNode<JSAsyncFromSyncIterator> p_o, compiler::TNode<JSReceiver> p_v);
390 : compiler::TNode<Object> LoadJSAsyncFromSyncIteratorNext(compiler::TNode<JSAsyncFromSyncIterator> p_o);
391 : void StoreJSAsyncFromSyncIteratorNext(compiler::TNode<JSAsyncFromSyncIterator> p_o, compiler::TNode<Object> p_v);
392 : compiler::TNode<String> LoadJSStringIteratorString(compiler::TNode<JSStringIterator> p_o);
393 : void StoreJSStringIteratorString(compiler::TNode<JSStringIterator> p_o, compiler::TNode<String> p_v);
394 : compiler::TNode<Smi> LoadJSStringIteratorNextIndex(compiler::TNode<JSStringIterator> p_o);
395 : void StoreJSStringIteratorNextIndex(compiler::TNode<JSStringIterator> p_o, compiler::TNode<Smi> p_v);
396 : compiler::TNode<Object> LoadJSDataPropertyDescriptorValue(compiler::TNode<JSDataPropertyDescriptor> p_o);
397 : void StoreJSDataPropertyDescriptorValue(compiler::TNode<JSDataPropertyDescriptor> p_o, compiler::TNode<Object> p_v);
398 : compiler::TNode<Object> LoadJSDataPropertyDescriptorWritable(compiler::TNode<JSDataPropertyDescriptor> p_o);
399 : void StoreJSDataPropertyDescriptorWritable(compiler::TNode<JSDataPropertyDescriptor> p_o, compiler::TNode<Object> p_v);
400 : compiler::TNode<Object> LoadJSDataPropertyDescriptorEnumerable(compiler::TNode<JSDataPropertyDescriptor> p_o);
401 : void StoreJSDataPropertyDescriptorEnumerable(compiler::TNode<JSDataPropertyDescriptor> p_o, compiler::TNode<Object> p_v);
402 : compiler::TNode<Object> LoadJSDataPropertyDescriptorConfigurable(compiler::TNode<JSDataPropertyDescriptor> p_o);
403 : void StoreJSDataPropertyDescriptorConfigurable(compiler::TNode<JSDataPropertyDescriptor> p_o, compiler::TNode<Object> p_v);
404 : compiler::TNode<Object> LoadTemplateInfoTag(compiler::TNode<TemplateInfo> p_o);
405 : void StoreTemplateInfoTag(compiler::TNode<TemplateInfo> p_o, compiler::TNode<Object> p_v);
406 : compiler::TNode<Object> LoadTemplateInfoSerialNumber(compiler::TNode<TemplateInfo> p_o);
407 : void StoreTemplateInfoSerialNumber(compiler::TNode<TemplateInfo> p_o, compiler::TNode<Object> p_v);
408 : compiler::TNode<Smi> LoadTemplateInfoNumberOfProperties(compiler::TNode<TemplateInfo> p_o);
409 : void StoreTemplateInfoNumberOfProperties(compiler::TNode<TemplateInfo> p_o, compiler::TNode<Smi> p_v);
410 : compiler::TNode<Object> LoadTemplateInfoPropertyList(compiler::TNode<TemplateInfo> p_o);
411 : void StoreTemplateInfoPropertyList(compiler::TNode<TemplateInfo> p_o, compiler::TNode<Object> p_v);
412 : compiler::TNode<Object> LoadTemplateInfoPropertyAccessors(compiler::TNode<TemplateInfo> p_o);
413 : void StoreTemplateInfoPropertyAccessors(compiler::TNode<TemplateInfo> p_o, compiler::TNode<Object> p_v);
414 : compiler::TNode<Object> LoadFunctionTemplateRareDataPrototypeTemplate(compiler::TNode<FunctionTemplateRareData> p_o);
415 : void StoreFunctionTemplateRareDataPrototypeTemplate(compiler::TNode<FunctionTemplateRareData> p_o, compiler::TNode<Object> p_v);
416 : compiler::TNode<Object> LoadFunctionTemplateRareDataPrototypeProviderTemplate(compiler::TNode<FunctionTemplateRareData> p_o);
417 : void StoreFunctionTemplateRareDataPrototypeProviderTemplate(compiler::TNode<FunctionTemplateRareData> p_o, compiler::TNode<Object> p_v);
418 : compiler::TNode<Object> LoadFunctionTemplateRareDataParentTemplate(compiler::TNode<FunctionTemplateRareData> p_o);
419 : void StoreFunctionTemplateRareDataParentTemplate(compiler::TNode<FunctionTemplateRareData> p_o, compiler::TNode<Object> p_v);
420 : compiler::TNode<Object> LoadFunctionTemplateRareDataNamedPropertyHandler(compiler::TNode<FunctionTemplateRareData> p_o);
421 : void StoreFunctionTemplateRareDataNamedPropertyHandler(compiler::TNode<FunctionTemplateRareData> p_o, compiler::TNode<Object> p_v);
422 : compiler::TNode<Object> LoadFunctionTemplateRareDataIndexedPropertyHandler(compiler::TNode<FunctionTemplateRareData> p_o);
423 : void StoreFunctionTemplateRareDataIndexedPropertyHandler(compiler::TNode<FunctionTemplateRareData> p_o, compiler::TNode<Object> p_v);
424 : compiler::TNode<Object> LoadFunctionTemplateRareDataInstanceTemplate(compiler::TNode<FunctionTemplateRareData> p_o);
425 : void StoreFunctionTemplateRareDataInstanceTemplate(compiler::TNode<FunctionTemplateRareData> p_o, compiler::TNode<Object> p_v);
426 : compiler::TNode<Object> LoadFunctionTemplateRareDataInstanceCallHandler(compiler::TNode<FunctionTemplateRareData> p_o);
427 : void StoreFunctionTemplateRareDataInstanceCallHandler(compiler::TNode<FunctionTemplateRareData> p_o, compiler::TNode<Object> p_v);
428 : compiler::TNode<Object> LoadFunctionTemplateRareDataAccessCheckInfo(compiler::TNode<FunctionTemplateRareData> p_o);
429 : void StoreFunctionTemplateRareDataAccessCheckInfo(compiler::TNode<FunctionTemplateRareData> p_o, compiler::TNode<Object> p_v);
430 : compiler::TNode<Object> LoadFunctionTemplateInfoCallCode(compiler::TNode<FunctionTemplateInfo> p_o);
431 : void StoreFunctionTemplateInfoCallCode(compiler::TNode<FunctionTemplateInfo> p_o, compiler::TNode<Object> p_v);
432 : compiler::TNode<Object> LoadFunctionTemplateInfoClassName(compiler::TNode<FunctionTemplateInfo> p_o);
433 : void StoreFunctionTemplateInfoClassName(compiler::TNode<FunctionTemplateInfo> p_o, compiler::TNode<Object> p_v);
434 : compiler::TNode<Object> LoadFunctionTemplateInfoSignature(compiler::TNode<FunctionTemplateInfo> p_o);
435 : void StoreFunctionTemplateInfoSignature(compiler::TNode<FunctionTemplateInfo> p_o, compiler::TNode<Object> p_v);
436 : compiler::TNode<Object> LoadFunctionTemplateInfoFunctionTemplateRareData(compiler::TNode<FunctionTemplateInfo> p_o);
437 : void StoreFunctionTemplateInfoFunctionTemplateRareData(compiler::TNode<FunctionTemplateInfo> p_o, compiler::TNode<Object> p_v);
438 : compiler::TNode<Object> LoadFunctionTemplateInfoSharedFunctionInfo(compiler::TNode<FunctionTemplateInfo> p_o);
439 : void StoreFunctionTemplateInfoSharedFunctionInfo(compiler::TNode<FunctionTemplateInfo> p_o, compiler::TNode<Object> p_v);
440 : compiler::TNode<Smi> LoadFunctionTemplateInfoFlag(compiler::TNode<FunctionTemplateInfo> p_o);
441 : void StoreFunctionTemplateInfoFlag(compiler::TNode<FunctionTemplateInfo> p_o, compiler::TNode<Smi> p_v);
442 : compiler::TNode<Smi> LoadFunctionTemplateInfoLength(compiler::TNode<FunctionTemplateInfo> p_o);
443 : void StoreFunctionTemplateInfoLength(compiler::TNode<FunctionTemplateInfo> p_o, compiler::TNode<Smi> p_v);
444 : compiler::TNode<Object> LoadFunctionTemplateInfoCachedPropertyName(compiler::TNode<FunctionTemplateInfo> p_o);
445 : void StoreFunctionTemplateInfoCachedPropertyName(compiler::TNode<FunctionTemplateInfo> p_o, compiler::TNode<Object> p_v);
446 : compiler::TNode<Object> LoadObjectTemplateInfoConstructor(compiler::TNode<ObjectTemplateInfo> p_o);
447 : void StoreObjectTemplateInfoConstructor(compiler::TNode<ObjectTemplateInfo> p_o, compiler::TNode<Object> p_v);
448 : compiler::TNode<Object> LoadObjectTemplateInfoData(compiler::TNode<ObjectTemplateInfo> p_o);
449 : void StoreObjectTemplateInfoData(compiler::TNode<ObjectTemplateInfo> p_o, compiler::TNode<Object> p_v);
450 : compiler::TNode<Smi> LoadPropertyArrayLengthAndHash(compiler::TNode<PropertyArray> p_o);
451 : void StorePropertyArrayLengthAndHash(compiler::TNode<PropertyArray> p_o, compiler::TNode<Smi> p_v);
452 : compiler::TNode<RawPtrT> LoadForeignForeignAddress(compiler::TNode<Foreign> p_o);
453 : void StoreForeignForeignAddress(compiler::TNode<Foreign> p_o, compiler::TNode<RawPtrT> p_v);
454 : compiler::TNode<Object> LoadInterceptorInfoGetter(compiler::TNode<InterceptorInfo> p_o);
455 : void StoreInterceptorInfoGetter(compiler::TNode<InterceptorInfo> p_o, compiler::TNode<Object> p_v);
456 : compiler::TNode<Object> LoadInterceptorInfoSetter(compiler::TNode<InterceptorInfo> p_o);
457 : void StoreInterceptorInfoSetter(compiler::TNode<InterceptorInfo> p_o, compiler::TNode<Object> p_v);
458 : compiler::TNode<Object> LoadInterceptorInfoQuery(compiler::TNode<InterceptorInfo> p_o);
459 : void StoreInterceptorInfoQuery(compiler::TNode<InterceptorInfo> p_o, compiler::TNode<Object> p_v);
460 : compiler::TNode<Object> LoadInterceptorInfoDescriptor(compiler::TNode<InterceptorInfo> p_o);
461 : void StoreInterceptorInfoDescriptor(compiler::TNode<InterceptorInfo> p_o, compiler::TNode<Object> p_v);
462 : compiler::TNode<Object> LoadInterceptorInfoDeleter(compiler::TNode<InterceptorInfo> p_o);
463 : void StoreInterceptorInfoDeleter(compiler::TNode<InterceptorInfo> p_o, compiler::TNode<Object> p_v);
464 : compiler::TNode<Object> LoadInterceptorInfoEnumerator(compiler::TNode<InterceptorInfo> p_o);
465 : void StoreInterceptorInfoEnumerator(compiler::TNode<InterceptorInfo> p_o, compiler::TNode<Object> p_v);
466 : compiler::TNode<Object> LoadInterceptorInfoDefiner(compiler::TNode<InterceptorInfo> p_o);
467 : void StoreInterceptorInfoDefiner(compiler::TNode<InterceptorInfo> p_o, compiler::TNode<Object> p_v);
468 : compiler::TNode<Object> LoadInterceptorInfoData(compiler::TNode<InterceptorInfo> p_o);
469 : void StoreInterceptorInfoData(compiler::TNode<InterceptorInfo> p_o, compiler::TNode<Object> p_v);
470 : compiler::TNode<Smi> LoadInterceptorInfoFlags(compiler::TNode<InterceptorInfo> p_o);
471 : void StoreInterceptorInfoFlags(compiler::TNode<InterceptorInfo> p_o, compiler::TNode<Smi> p_v);
472 : compiler::TNode<Object> LoadAccessCheckInfoCallback(compiler::TNode<AccessCheckInfo> p_o);
473 : void StoreAccessCheckInfoCallback(compiler::TNode<AccessCheckInfo> p_o, compiler::TNode<Object> p_v);
474 : compiler::TNode<Object> LoadAccessCheckInfoNamedInterceptor(compiler::TNode<AccessCheckInfo> p_o);
475 : void StoreAccessCheckInfoNamedInterceptor(compiler::TNode<AccessCheckInfo> p_o, compiler::TNode<Object> p_v);
476 : compiler::TNode<Object> LoadAccessCheckInfoIndexedInterceptor(compiler::TNode<AccessCheckInfo> p_o);
477 : void StoreAccessCheckInfoIndexedInterceptor(compiler::TNode<AccessCheckInfo> p_o, compiler::TNode<Object> p_v);
478 : compiler::TNode<Object> LoadAccessCheckInfoData(compiler::TNode<AccessCheckInfo> p_o);
479 : void StoreAccessCheckInfoData(compiler::TNode<AccessCheckInfo> p_o, compiler::TNode<Object> p_v);
480 : compiler::TNode<Smi> LoadArrayBoilerplateDescriptionFlags(compiler::TNode<ArrayBoilerplateDescription> p_o);
481 : void StoreArrayBoilerplateDescriptionFlags(compiler::TNode<ArrayBoilerplateDescription> p_o, compiler::TNode<Smi> p_v);
482 : compiler::TNode<FixedArrayBase> LoadArrayBoilerplateDescriptionConstantElements(compiler::TNode<ArrayBoilerplateDescription> p_o);
483 : void StoreArrayBoilerplateDescriptionConstantElements(compiler::TNode<ArrayBoilerplateDescription> p_o, compiler::TNode<FixedArrayBase> p_v);
484 : compiler::TNode<Smi> LoadAliasedArgumentsEntryAliasedContextSlot(compiler::TNode<AliasedArgumentsEntry> p_o);
485 : void StoreAliasedArgumentsEntryAliasedContextSlot(compiler::TNode<AliasedArgumentsEntry> p_o, compiler::TNode<Smi> p_v);
486 : compiler::TNode<Object> LoadCellValue(compiler::TNode<Cell> p_o);
487 : void StoreCellValue(compiler::TNode<Cell> p_o, compiler::TNode<Object> p_v);
488 : compiler::TNode<Object> LoadDataHandlerSmiHandler(compiler::TNode<DataHandler> p_o);
489 : void StoreDataHandlerSmiHandler(compiler::TNode<DataHandler> p_o, compiler::TNode<Object> p_v);
490 : compiler::TNode<Object> LoadDataHandlerValidityCell(compiler::TNode<DataHandler> p_o);
491 : void StoreDataHandlerValidityCell(compiler::TNode<DataHandler> p_o, compiler::TNode<Object> p_v);
492 : compiler::TNode<Object> LoadDataHandlerData1(compiler::TNode<DataHandler> p_o);
493 : void StoreDataHandlerData1(compiler::TNode<DataHandler> p_o, compiler::TNode<Object> p_v);
494 : compiler::TNode<Object> LoadDataHandlerData2(compiler::TNode<DataHandler> p_o);
495 : void StoreDataHandlerData2(compiler::TNode<DataHandler> p_o, compiler::TNode<Object> p_v);
496 : compiler::TNode<Object> LoadDataHandlerData3(compiler::TNode<DataHandler> p_o);
497 : void StoreDataHandlerData3(compiler::TNode<DataHandler> p_o, compiler::TNode<Object> p_v);
498 : compiler::TNode<JSFunction> LoadJSGeneratorObjectFunction(compiler::TNode<JSGeneratorObject> p_o);
499 : void StoreJSGeneratorObjectFunction(compiler::TNode<JSGeneratorObject> p_o, compiler::TNode<JSFunction> p_v);
500 : compiler::TNode<Context> LoadJSGeneratorObjectContext(compiler::TNode<JSGeneratorObject> p_o);
501 : void StoreJSGeneratorObjectContext(compiler::TNode<JSGeneratorObject> p_o, compiler::TNode<Context> p_v);
502 : compiler::TNode<Object> LoadJSGeneratorObjectReceiver(compiler::TNode<JSGeneratorObject> p_o);
503 : void StoreJSGeneratorObjectReceiver(compiler::TNode<JSGeneratorObject> p_o, compiler::TNode<Object> p_v);
504 : compiler::TNode<Object> LoadJSGeneratorObjectInputOrDebugPos(compiler::TNode<JSGeneratorObject> p_o);
505 : void StoreJSGeneratorObjectInputOrDebugPos(compiler::TNode<JSGeneratorObject> p_o, compiler::TNode<Object> p_v);
506 : compiler::TNode<Smi> LoadJSGeneratorObjectResumeMode(compiler::TNode<JSGeneratorObject> p_o);
507 : void StoreJSGeneratorObjectResumeMode(compiler::TNode<JSGeneratorObject> p_o, compiler::TNode<Smi> p_v);
508 : compiler::TNode<Smi> LoadJSGeneratorObjectContinuation(compiler::TNode<JSGeneratorObject> p_o);
509 : void StoreJSGeneratorObjectContinuation(compiler::TNode<JSGeneratorObject> p_o, compiler::TNode<Smi> p_v);
510 : compiler::TNode<FixedArray> LoadJSGeneratorObjectParametersAndRegisters(compiler::TNode<JSGeneratorObject> p_o);
511 : void StoreJSGeneratorObjectParametersAndRegisters(compiler::TNode<JSGeneratorObject> p_o, compiler::TNode<FixedArray> p_v);
512 : compiler::TNode<JSPromise> LoadJSAsyncFunctionObjectPromise(compiler::TNode<JSAsyncFunctionObject> p_o);
513 : void StoreJSAsyncFunctionObjectPromise(compiler::TNode<JSAsyncFunctionObject> p_o, compiler::TNode<JSPromise> p_v);
514 : compiler::TNode<HeapObject> LoadJSAsyncGeneratorObjectQueue(compiler::TNode<JSAsyncGeneratorObject> p_o);
515 : void StoreJSAsyncGeneratorObjectQueue(compiler::TNode<JSAsyncGeneratorObject> p_o, compiler::TNode<HeapObject> p_v);
516 : compiler::TNode<Smi> LoadJSAsyncGeneratorObjectIsAwaiting(compiler::TNode<JSAsyncGeneratorObject> p_o);
517 : void StoreJSAsyncGeneratorObjectIsAwaiting(compiler::TNode<JSAsyncGeneratorObject> p_o, compiler::TNode<Smi> p_v);
518 : compiler::TNode<Object> LoadJSPromiseReactionsOrResult(compiler::TNode<JSPromise> p_o);
519 : void StoreJSPromiseReactionsOrResult(compiler::TNode<JSPromise> p_o, compiler::TNode<Object> p_v);
520 : compiler::TNode<Smi> LoadJSPromiseFlags(compiler::TNode<JSPromise> p_o);
521 : void StoreJSPromiseFlags(compiler::TNode<JSPromise> p_o, compiler::TNode<Smi> p_v);
522 : compiler::TNode<Foreign> LoadCallbackTaskCallback(compiler::TNode<CallbackTask> p_o);
523 : void StoreCallbackTaskCallback(compiler::TNode<CallbackTask> p_o, compiler::TNode<Foreign> p_v);
524 : compiler::TNode<Foreign> LoadCallbackTaskData(compiler::TNode<CallbackTask> p_o);
525 : void StoreCallbackTaskData(compiler::TNode<CallbackTask> p_o, compiler::TNode<Foreign> p_v);
526 : compiler::TNode<JSReceiver> LoadCallableTaskCallable(compiler::TNode<CallableTask> p_o);
527 : void StoreCallableTaskCallable(compiler::TNode<CallableTask> p_o, compiler::TNode<JSReceiver> p_v);
528 : compiler::TNode<Context> LoadCallableTaskContext(compiler::TNode<CallableTask> p_o);
529 : void StoreCallableTaskContext(compiler::TNode<CallableTask> p_o, compiler::TNode<Context> p_v);
530 : compiler::TNode<Smi> LoadStackFrameInfoLineNumber(compiler::TNode<StackFrameInfo> p_o);
531 : void StoreStackFrameInfoLineNumber(compiler::TNode<StackFrameInfo> p_o, compiler::TNode<Smi> p_v);
532 : compiler::TNode<Smi> LoadStackFrameInfoColumnNumber(compiler::TNode<StackFrameInfo> p_o);
533 : void StoreStackFrameInfoColumnNumber(compiler::TNode<StackFrameInfo> p_o, compiler::TNode<Smi> p_v);
534 : compiler::TNode<Smi> LoadStackFrameInfoScriptId(compiler::TNode<StackFrameInfo> p_o);
535 : void StoreStackFrameInfoScriptId(compiler::TNode<StackFrameInfo> p_o, compiler::TNode<Smi> p_v);
536 : compiler::TNode<Object> LoadStackFrameInfoScriptName(compiler::TNode<StackFrameInfo> p_o);
537 : void StoreStackFrameInfoScriptName(compiler::TNode<StackFrameInfo> p_o, compiler::TNode<Object> p_v);
538 : compiler::TNode<Object> LoadStackFrameInfoScriptNameOrSourceUrl(compiler::TNode<StackFrameInfo> p_o);
539 : void StoreStackFrameInfoScriptNameOrSourceUrl(compiler::TNode<StackFrameInfo> p_o, compiler::TNode<Object> p_v);
540 : compiler::TNode<Object> LoadStackFrameInfoFunctionName(compiler::TNode<StackFrameInfo> p_o);
541 : void StoreStackFrameInfoFunctionName(compiler::TNode<StackFrameInfo> p_o, compiler::TNode<Object> p_v);
542 : compiler::TNode<Smi> LoadStackFrameInfoFlag(compiler::TNode<StackFrameInfo> p_o);
543 : void StoreStackFrameInfoFlag(compiler::TNode<StackFrameInfo> p_o, compiler::TNode<Smi> p_v);
544 : compiler::TNode<Smi> LoadStackFrameInfoId(compiler::TNode<StackFrameInfo> p_o);
545 : void StoreStackFrameInfoId(compiler::TNode<StackFrameInfo> p_o, compiler::TNode<Smi> p_v);
546 : compiler::TNode<Smi> LoadClassPositionsStart(compiler::TNode<ClassPositions> p_o);
547 : void StoreClassPositionsStart(compiler::TNode<ClassPositions> p_o, compiler::TNode<Smi> p_v);
548 : compiler::TNode<Smi> LoadClassPositionsEnd(compiler::TNode<ClassPositions> p_o);
549 : void StoreClassPositionsEnd(compiler::TNode<ClassPositions> p_o, compiler::TNode<Smi> p_v);
550 : compiler::TNode<Smi> LoadWasmExceptionTagIndex(compiler::TNode<WasmExceptionTag> p_o);
551 : void StoreWasmExceptionTagIndex(compiler::TNode<WasmExceptionTag> p_o, compiler::TNode<Smi> p_v);
552 : compiler::TNode<HeapObject> LoadAsyncGeneratorRequestNext(compiler::TNode<AsyncGeneratorRequest> p_o);
553 : void StoreAsyncGeneratorRequestNext(compiler::TNode<AsyncGeneratorRequest> p_o, compiler::TNode<HeapObject> p_v);
554 : compiler::TNode<Smi> LoadAsyncGeneratorRequestResumeMode(compiler::TNode<AsyncGeneratorRequest> p_o);
555 : void StoreAsyncGeneratorRequestResumeMode(compiler::TNode<AsyncGeneratorRequest> p_o, compiler::TNode<Smi> p_v);
556 : compiler::TNode<Object> LoadAsyncGeneratorRequestValue(compiler::TNode<AsyncGeneratorRequest> p_o);
557 : void StoreAsyncGeneratorRequestValue(compiler::TNode<AsyncGeneratorRequest> p_o, compiler::TNode<Object> p_v);
558 : compiler::TNode<JSPromise> LoadAsyncGeneratorRequestPromise(compiler::TNode<AsyncGeneratorRequest> p_o);
559 : void StoreAsyncGeneratorRequestPromise(compiler::TNode<AsyncGeneratorRequest> p_o, compiler::TNode<JSPromise> p_v);
560 : compiler::TNode<HeapObject> LoadModuleInfoEntryExportName(compiler::TNode<ModuleInfoEntry> p_o);
561 : void StoreModuleInfoEntryExportName(compiler::TNode<ModuleInfoEntry> p_o, compiler::TNode<HeapObject> p_v);
562 : compiler::TNode<HeapObject> LoadModuleInfoEntryLocalName(compiler::TNode<ModuleInfoEntry> p_o);
563 : void StoreModuleInfoEntryLocalName(compiler::TNode<ModuleInfoEntry> p_o, compiler::TNode<HeapObject> p_v);
564 : compiler::TNode<HeapObject> LoadModuleInfoEntryImportName(compiler::TNode<ModuleInfoEntry> p_o);
565 : void StoreModuleInfoEntryImportName(compiler::TNode<ModuleInfoEntry> p_o, compiler::TNode<HeapObject> p_v);
566 : compiler::TNode<Smi> LoadModuleInfoEntryModuleRequest(compiler::TNode<ModuleInfoEntry> p_o);
567 : void StoreModuleInfoEntryModuleRequest(compiler::TNode<ModuleInfoEntry> p_o, compiler::TNode<Smi> p_v);
568 : compiler::TNode<Smi> LoadModuleInfoEntryCellIndex(compiler::TNode<ModuleInfoEntry> p_o);
569 : void StoreModuleInfoEntryCellIndex(compiler::TNode<ModuleInfoEntry> p_o, compiler::TNode<Smi> p_v);
570 : compiler::TNode<Smi> LoadModuleInfoEntryBegPos(compiler::TNode<ModuleInfoEntry> p_o);
571 : void StoreModuleInfoEntryBegPos(compiler::TNode<ModuleInfoEntry> p_o, compiler::TNode<Smi> p_v);
572 : compiler::TNode<Smi> LoadModuleInfoEntryEndPos(compiler::TNode<ModuleInfoEntry> p_o);
573 : void StoreModuleInfoEntryEndPos(compiler::TNode<ModuleInfoEntry> p_o, compiler::TNode<Smi> p_v);
574 : compiler::TNode<HeapObject> LoadPromiseCapabilityPromise(compiler::TNode<PromiseCapability> p_o);
575 : void StorePromiseCapabilityPromise(compiler::TNode<PromiseCapability> p_o, compiler::TNode<HeapObject> p_v);
576 : compiler::TNode<Object> LoadPromiseCapabilityResolve(compiler::TNode<PromiseCapability> p_o);
577 : void StorePromiseCapabilityResolve(compiler::TNode<PromiseCapability> p_o, compiler::TNode<Object> p_v);
578 : compiler::TNode<Object> LoadPromiseCapabilityReject(compiler::TNode<PromiseCapability> p_o);
579 : void StorePromiseCapabilityReject(compiler::TNode<PromiseCapability> p_o, compiler::TNode<Object> p_v);
580 : compiler::TNode<Object> LoadPromiseReactionNext(compiler::TNode<PromiseReaction> p_o);
581 : void StorePromiseReactionNext(compiler::TNode<PromiseReaction> p_o, compiler::TNode<Object> p_v);
582 : compiler::TNode<HeapObject> LoadPromiseReactionRejectHandler(compiler::TNode<PromiseReaction> p_o);
583 : void StorePromiseReactionRejectHandler(compiler::TNode<PromiseReaction> p_o, compiler::TNode<HeapObject> p_v);
584 : compiler::TNode<HeapObject> LoadPromiseReactionFulfillHandler(compiler::TNode<PromiseReaction> p_o);
585 : void StorePromiseReactionFulfillHandler(compiler::TNode<PromiseReaction> p_o, compiler::TNode<HeapObject> p_v);
586 : compiler::TNode<HeapObject> LoadPromiseReactionPromiseOrCapability(compiler::TNode<PromiseReaction> p_o);
587 : void StorePromiseReactionPromiseOrCapability(compiler::TNode<PromiseReaction> p_o, compiler::TNode<HeapObject> p_v);
588 : compiler::TNode<HeapObject> LoadJSRegExpData(compiler::TNode<JSRegExp> p_o);
589 : void StoreJSRegExpData(compiler::TNode<JSRegExp> p_o, compiler::TNode<HeapObject> p_v);
590 : compiler::TNode<HeapObject> LoadJSRegExpSource(compiler::TNode<JSRegExp> p_o);
591 : void StoreJSRegExpSource(compiler::TNode<JSRegExp> p_o, compiler::TNode<HeapObject> p_v);
592 : compiler::TNode<Object> LoadJSRegExpFlags(compiler::TNode<JSRegExp> p_o);
593 : void StoreJSRegExpFlags(compiler::TNode<JSRegExp> p_o, compiler::TNode<Object> p_v);
594 : compiler::TNode<Object> LoadJSRegExpResultIndex(compiler::TNode<JSRegExpResult> p_o);
595 : void StoreJSRegExpResultIndex(compiler::TNode<JSRegExpResult> p_o, compiler::TNode<Object> p_v);
596 : compiler::TNode<Object> LoadJSRegExpResultInput(compiler::TNode<JSRegExpResult> p_o);
597 : void StoreJSRegExpResultInput(compiler::TNode<JSRegExpResult> p_o, compiler::TNode<Object> p_v);
598 : compiler::TNode<Object> LoadJSRegExpResultGroups(compiler::TNode<JSRegExpResult> p_o);
599 : void StoreJSRegExpResultGroups(compiler::TNode<JSRegExpResult> p_o, compiler::TNode<Object> p_v);
600 : compiler::TNode<Object> LoadJSRegExpStringIteratorIteratingRegExp(compiler::TNode<JSRegExpStringIterator> p_o);
601 : void StoreJSRegExpStringIteratorIteratingRegExp(compiler::TNode<JSRegExpStringIterator> p_o, compiler::TNode<Object> p_v);
602 : compiler::TNode<String> LoadJSRegExpStringIteratorIteratedString(compiler::TNode<JSRegExpStringIterator> p_o);
603 : void StoreJSRegExpStringIteratorIteratedString(compiler::TNode<JSRegExpStringIterator> p_o, compiler::TNode<String> p_v);
604 : compiler::TNode<Smi> LoadJSRegExpStringIteratorFlags(compiler::TNode<JSRegExpStringIterator> p_o);
605 : void StoreJSRegExpStringIteratorFlags(compiler::TNode<JSRegExpStringIterator> p_o, compiler::TNode<Smi> p_v);
606 : compiler::TNode<Object> LoadAccessorInfoName(compiler::TNode<AccessorInfo> p_o);
607 : void StoreAccessorInfoName(compiler::TNode<AccessorInfo> p_o, compiler::TNode<Object> p_v);
608 : compiler::TNode<Smi> LoadAccessorInfoFlags(compiler::TNode<AccessorInfo> p_o);
609 : void StoreAccessorInfoFlags(compiler::TNode<AccessorInfo> p_o, compiler::TNode<Smi> p_v);
610 : compiler::TNode<Object> LoadAccessorInfoExpectedReceiverType(compiler::TNode<AccessorInfo> p_o);
611 : void StoreAccessorInfoExpectedReceiverType(compiler::TNode<AccessorInfo> p_o, compiler::TNode<Object> p_v);
612 : compiler::TNode<Object> LoadAccessorInfoSetter(compiler::TNode<AccessorInfo> p_o);
613 : void StoreAccessorInfoSetter(compiler::TNode<AccessorInfo> p_o, compiler::TNode<Object> p_v);
614 : compiler::TNode<Object> LoadAccessorInfoGetter(compiler::TNode<AccessorInfo> p_o);
615 : void StoreAccessorInfoGetter(compiler::TNode<AccessorInfo> p_o, compiler::TNode<Object> p_v);
616 : compiler::TNode<Object> LoadAccessorInfoJsGetter(compiler::TNode<AccessorInfo> p_o);
617 : void StoreAccessorInfoJsGetter(compiler::TNode<AccessorInfo> p_o, compiler::TNode<Object> p_v);
618 : compiler::TNode<Object> LoadAccessorInfoData(compiler::TNode<AccessorInfo> p_o);
619 : void StoreAccessorInfoData(compiler::TNode<AccessorInfo> p_o, compiler::TNode<Object> p_v);
620 : compiler::TNode<Object> LoadAccessorPairGetter(compiler::TNode<AccessorPair> p_o);
621 : void StoreAccessorPairGetter(compiler::TNode<AccessorPair> p_o, compiler::TNode<Object> p_v);
622 : compiler::TNode<Object> LoadAccessorPairSetter(compiler::TNode<AccessorPair> p_o);
623 : void StoreAccessorPairSetter(compiler::TNode<AccessorPair> p_o, compiler::TNode<Object> p_v);
624 : compiler::TNode<HeapObject> Cast10HeapObject(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o, compiler::CodeAssemblerLabel* label_CastError);
625 : compiler::TNode<Uint32T> Convert8ATuint327ATuint8(compiler::TNode<Uint32T> p_i);
626 : compiler::TNode<Uint32T> Convert8ATuint328ATuint16(compiler::TNode<Uint32T> p_i);
627 : compiler::TNode<Uint32T> Convert8ATuint328ATuint31(compiler::TNode<Uint32T> p_i);
628 : compiler::TNode<JSFunction> UnsafeCast10JSFunction(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o);
629 : compiler::TNode<JSReceiver> UnsafeCast13ATConstructor(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o);
630 : compiler::TNode<Map> UnsafeCast5ATMap(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o);
631 : compiler::TNode<JSArray> Cast7JSArray(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o, compiler::CodeAssemblerLabel* label_CastError);
632 : compiler::TNode<JSArgumentsObjectWithLength> Cast27JSArgumentsObjectWithLength(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o, compiler::CodeAssemblerLabel* label_CastError);
633 : compiler::TNode<BoolT> Is13ATFastJSArray20UT5ATSmi10HeapObject(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o);
634 : void BranchIf13ATFastJSArray20UT5ATSmi10HeapObject(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o, compiler::CodeAssemblerLabel* label_True, compiler::CodeAssemblerLabel* label_False);
635 : void BranchIfNot13ATFastJSArray20UT5ATSmi10HeapObject(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o, compiler::CodeAssemblerLabel* label_True, compiler::CodeAssemblerLabel* label_False);
636 : void BranchIf20ATFastJSArrayForCopy20UT5ATSmi10HeapObject(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o, compiler::CodeAssemblerLabel* label_True, compiler::CodeAssemblerLabel* label_False);
637 : compiler::TNode<BoolT> Is34ATFastJSArrayWithNoCustomIteration20UT5ATSmi10HeapObject(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o);
638 : compiler::TNode<Context> Cast9ATContext(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o, compiler::CodeAssemblerLabel* label_CastError);
639 : compiler::TNode<Object> UnsafeCast25UT9ATContext11ATFrameType(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o);
640 : compiler::TNode<JSReceiver> Cast10JSReceiver(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o, compiler::CodeAssemblerLabel* label_CastError);
641 : compiler::TNode<JSReceiver> Cast39UT15JSBoundFunction10JSFunction7JSProxy(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o, compiler::CodeAssemblerLabel* label_CastError);
642 : compiler::TNode<Smi> Convert5ATSmi17ATconstexpr_int31(int31_t p_i);
643 : compiler::TNode<JSArray> UnsafeCast7JSArray(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o);
644 : compiler::TNode<NumberDictionary> UnsafeCast18ATNumberDictionary(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o);
645 : compiler::TNode<FixedArray> UnsafeCast10FixedArray(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o);
646 : compiler::TNode<Smi> UnsafeCast5ATSmi(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o);
647 : compiler::TNode<FixedDoubleArray> UnsafeCast16FixedDoubleArray(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o);
648 : compiler::TNode<JSTypedArray> UnsafeCast12JSTypedArray(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o);
649 : compiler::TNode<String> Cast6String(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o, compiler::CodeAssemblerLabel* label_CastError);
650 : compiler::TNode<HeapObject> UnsafeCast10HeapObject(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o);
651 : compiler::TNode<JSReceiver> Cast13ATConstructor(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o, compiler::CodeAssemblerLabel* label_CastError);
652 : compiler::TNode<JSArray> Cast13ATFastJSArray(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o, compiler::CodeAssemblerLabel* label_CastError);
653 : compiler::TNode<FixedArray> Cast10FixedArray(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o, compiler::CodeAssemblerLabel* label_CastError);
654 : compiler::TNode<Context> UnsafeCast9ATContext(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o);
655 : compiler::TNode<JSArray> Cast20ATFastJSArrayForCopy(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o, compiler::CodeAssemblerLabel* label_CastError);
656 : compiler::TNode<JSDataView> Cast12ATJSDataView(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o, compiler::CodeAssemblerLabel* label_CastError);
657 : compiler::TNode<JSArray> Cast34ATFastJSArrayWithNoCustomIteration(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o, compiler::CodeAssemblerLabel* label_CastError);
658 : compiler::TNode<BoolT> Is10JSReceiver20UT5ATSmi10HeapObject(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o);
659 : compiler::TNode<Map> Cast5ATMap(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o, compiler::CodeAssemblerLabel* label_CastError);
660 : compiler::TNode<JSProxy> Cast7JSProxy(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o, compiler::CodeAssemblerLabel* label_CastError);
661 : compiler::TNode<JSProxy> UnsafeCast7JSProxy(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o);
662 : compiler::TNode<JSArrayBuffer> Cast13JSArrayBuffer(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o, compiler::CodeAssemblerLabel* label_CastError);
663 : compiler::TNode<Smi> Convert5ATSmi5ATSmi(compiler::TNode<Smi> p_i);
664 : compiler::TNode<IntPtrT> Convert8ATintptr17ATconstexpr_int31(int31_t p_i);
665 : compiler::TNode<JSObject> UnsafeCast8JSObject(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o);
666 : compiler::TNode<HeapNumber> UnsafeCast12ATHeapNumber(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o);
667 : compiler::TNode<JSReceiver> UnsafeCast39UT15JSBoundFunction10JSFunction7JSProxy(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o);
668 : compiler::TNode<HeapObject> Cast52UT11ATUndefined15JSBoundFunction10JSFunction7JSProxy(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o, compiler::CodeAssemblerLabel* label_CastError);
669 : void BranchIf34ATFastJSArrayWithNoCustomIteration20UT5ATSmi10HeapObject(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o, compiler::CodeAssemblerLabel* label_True, compiler::CodeAssemblerLabel* label_False);
670 : compiler::TNode<Number> UnsafeCast22UT12ATHeapNumber5ATSmi(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o);
671 : void BranchIf10JSReceiver20UT5ATSmi10HeapObject(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o, compiler::CodeAssemblerLabel* label_True, compiler::CodeAssemblerLabel* label_False);
672 : compiler::TNode<FixedTypedArrayBase> UnsafeCast19FixedTypedArrayBase(compiler::TNode<Context> p_context, compiler::TNode<Object> p_o);
673 : private:
674 : compiler::CodeAssemblerState* const state_;
675 : compiler::CodeAssembler ca_;
676 : };
677 :
678 : } // namespace internal
679 : } // namespace v8
680 :
681 : #endif // V8_TORQUE_BASE_FROM_DSL_BASE_H__
|