| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
📍 Job mac-m1_mini_2020-perf/jetstream-main.crossbench complete.
See results at: https://pinpoint-dot-chromeperf.appspot.com/job/15b56e7db10000
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
kHeapObject, // Can be a HeapNumberNit: should we follow the same name as NodeType and call it AnyHeapObject?
for (int i = 0; i < phi->input_count(); ++i) {
ValueNode* input = phi->input_node(i)->UnwrapIdentities();
NodeType input_type =
block->state()->known_node_aspects()->GetType(broker(), input);
if (i == 0) {
new_type = input_type;
} else {
new_type = UnionType(new_type, input_type);
}
}I am a bit confused. My understand is that we are merging a **single** predecessor here. What I would expect is: getting the predecessor_id from block using current_block_ then you can get a the input and the type in the previous/current block:
```
ValueNode* input = phi->input_node(predecessor_id);
NodeType input_type = known_node_aspects()->GetType(broker(), input);
```
Otherwise this code will run (loop) for all predecessors.
for (Phi* phi : *block->state()->phis()) {Add a little comment before explaining what this is doing.
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |