Lines Matching defs:object

80 bool IsConstantObject(Node* object) {
81 return object->opcode() == IrOpcode::kParameter ||
82 object->opcode() == IrOpcode::kLoadImmutable ||
83 NodeProperties::IsConstant(object);
86 bool IsFreshObject(Node* object) {
87 DCHECK_IMPLIES(NodeProperties::IsFreshObject(object),
88 !IsConstantObject(object));
89 return NodeProperties::IsFreshObject(object);
124 Node* object, Node* offset, MachineRepresentation repr) const {
130 if (Helpers::IsFreshObject(object)) {
132 // - The same object/offset
134 // - The same object, unkwown offset
136 result->KillOffsetInFresh(object, num_offset, repr);
138 result->fresh_unknown_entries_.Set(object, InnerMap(zone_));
140 } else if (Helpers::IsConstantObject(object)) {
150 // - Any object with the same or unknown offset
160 if (Helpers::IsFreshObject(object)) {
162 // - The same object with any known/unknown offset
168 map_copy.Set(object, FieldInfo());
171 result->fresh_unknown_entries_.Set(object, InnerMap(zone_));
174 } else if (Helpers::IsConstantObject(object)) {
191 Node* object, Node* offset, Node* value, MachineRepresentation repr) const {
196 ConstantOffsetInfos& infos = Helpers::IsFreshObject(object)
198 : Helpers::IsConstantObject(object)
201 Update(infos, offset_num, object, FieldInfo(value, repr));
204 Helpers::IsFreshObject(object)
206 : Helpers::IsConstantObject(object)
209 Update(infos, object, offset, FieldInfo(value, repr));
215 Node* object, Node* offset) const {
219 const ConstantOffsetInfos& infos = Helpers::IsFreshObject(object)
221 : Helpers::IsConstantObject(object)
224 return infos.Get(num_offset).Get(object);
226 const UnknownOffsetInfos& infos = Helpers::IsFreshObject(object)
228 : Helpers::IsConstantObject(object)
231 return infos.Get(object).Get(offset);
273 Node* const object, uint32_t offset, MachineRepresentation repr) {
275 Update(fresh_entries_, offset + i, object, {});
281 const FieldInfo& info = fresh_entries_.Get(i).Get(object);
285 Update(fresh_entries_, i, object, {});
295 Node* object = inner_entry.first;
298 PrintF(" #%d:%s+(%d) -> #%d:%s [repr=%s]\n", object->id(),
299 object->op()->mnemonic(), offset, info.value->id(),
311 Node* object = outer_entry.first;
314 PrintF(" #%d:%s+#%d:%s -> #%d:%s [repr=%s]\n", object->id(),
315 object->op()->mnemonic(), offset->id(), offset->op()->mnemonic(),
335 Node* object = NodeProperties::GetValueInput(node, 0);
343 ->Lookup(object, offset)
349 FieldInfo lookup_result = half_state->Lookup(object, offset);
360 // the object altogether.
361 Revisit(object);
365 half_state = half_state->AddField(object, offset, node, representation);
379 Node* object = NodeProperties::GetValueInput(node, 0);
388 DCHECK(state->immutable_state.Lookup(object, offset).IsEmpty());
390 state->mutable_state.KillField(object, offset, repr);
391 mutable_state = mutable_state->AddField(object, offset, value, repr);
397 DCHECK(state->mutable_state.Lookup(object, offset).IsEmpty());
399 DCHECK(state->immutable_state.Lookup(object, offset).IsEmpty());
401 state->immutable_state.AddField(object, offset, value, repr);
511 Node* object = NodeProperties::GetValueInput(current, 0);
516 state->mutable_state.KillField(object, offset, repr);
521 // We are not allowed to reset an immutable (object, offset) pair.
522 Node* object = NodeProperties::GetValueInput(current, 0);
524 CHECK(state->immutable_state.Lookup(object, offset).IsEmpty());