Skip to content

Commit

Permalink
Add a compiler pass for iterate(::CartesianIndices)
Browse files Browse the repository at this point in the history
This replaces iteration over CartesianIndices{N} with a set of N nested
one-dimensional loops. Fixes #9080. It also paves the way for
loop-reordering and other transformations.
  • Loading branch information
timholy committed Apr 10, 2020
1 parent a6a2d26 commit 71a76ce
Show file tree
Hide file tree
Showing 3 changed files with 452 additions and 5 deletions.
1 change: 1 addition & 0 deletions base/compiler/compiler.jl
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,7 @@ include("compiler/tfuncs.jl")

include("compiler/abstractinterpretation.jl")
include("compiler/typeinfer.jl")
include("compiler/loops.jl")
include("compiler/optimize.jl") # TODO: break this up further + extract utilities

include("compiler/bootstrap.jl")
Expand Down
Loading

0 comments on commit 71a76ce

Please sign in to comment.