24 DCHECK_EQ(node->opcode(), IrOpcode::kAllocateRaw);
28 std::vector<Edge> value_edges;
29 for (
Edge edge : node->use_edges()) {
31 if ((edge.from()->opcode() == IrOpcode::kPhi &&
32 edge.from()->use_edges().empty()) ||
34 (edge.from()->opcode() == IrOpcode::kStoreToObject ||
35 edge.from()->opcode() == IrOpcode::kInitializeImmutableInObject))) {
38 value_edges.push_back(edge);
47 for (
Edge edge : value_edges) {
49 Node* use = edge.from();
51 if (use->opcode() == IrOpcode::kPhi) {
52 DCHECK(use->use_edges().empty());
59 DCHECK(use->opcode() == IrOpcode::kStoreToObject ||
60 use->opcode() == IrOpcode::kInitializeImmutableInObject);