Do not assign `ExecutionStreamAssignments` to `HloComputations` that are only reachable through embedded calls.
Do not assign `ExecutionStreamAssignments` to `HloComputations` that are only reachable through embedded calls.

`ExecutionStreamAssignment` relies on the the input `HloModule` being flat. In other words, each computation must be called by a single instruction. This is generally achieved by processing the `HloModule` with `FlattenCallGraph`. However, this pass only flattens sequential calls.

The good news is that we don't need to assign `ExecutionStreamIds` to instructions invoked via embedded calls because they end up in the same kernel as the parent instruction. So this change ignores all instructions reachable through embedded calls (e.g. fusions, sorts, etc.).
