---
# System prepended metadata

title: Disentangle Steps to Combined IR

---

# Disentangle Steps to Combined IR

1. ITIR Fencil to Program:
    - adds outer apply_stencil, assign stmts, conditional
2. From CombinedIR annotate inner apply_stencils with concrete domain 
3. In cycle 22 (as of previous discussions): lower to CombinedIR
4. We can start writing a new CombinedIR2SDFG translation via domain annotated tests (no execution)
5. New ITIR type system (doesn't depend on other things, weakly on 1)
6. Temporary placement in GT4Py on CombinedIR (after 3)
7. Work on full CombinedIR2SDFG backend (after 5, 4, 3, 1; for sure not cycle 21)


## Scratch
- Edoardo starting to work on combined IR after the `apply_stencil` node is there
- Hannes does first part of program and apply_stencil, then (or Enrique immediately) switches to domain annotation pass standalone
- Enrique helps JAX2DaCe getting started with Philip
- Enrique helps Edoardo with Combined IR to SDFG
- Maybe Till gets freed from type system earlier and can start lowering to combined IR


```graphviz
digraph {
  rankdir="RL"
  3 -> 1
  3 -> 2
  5 -> 1 [style=dashed]
  6 -> 3
  7 -> 5
  7 -> 4
  7 -> 3
}

```

## TODO
- eventually we need a field reduce in combined IR