ISPC can be really good at SIMD-ing complicated control flow (ray tracers being the archetypal example).
I'm interested in eventually working on something like that for Julia.
In the mean time, it should be possible to deliberately write code to be compatible with something like SIMD.jl.
I think I'd work on a project of trying to get that working via multiple dispatch with at least a moderately complex project, and let those experiences inform the kind of transforms an automatic compiler would need to both work and get good performance.