Loop unrolling and similar optimizations can cause allocations to be duplicated to multiple locations in the LLVM IR despite corresponding to a single allocation in the Julia IR.
After this change check_allocs(*, (Matrix{Float64},Matrix{Float64})) reports 14 allocations instead of 20.
Resolves https://github.com/JuliaComputing/AllocCheck.jl/issues/7
Loop unrolling and similar optimizations can cause allocations to be duplicated to multiple locations in the LLVM IR despite corresponding to a single allocation in the Julia IR.
After this change
check_allocs(*, (Matrix{Float64},Matrix{Float64}))
reports 14 allocations instead of 20.