From 3b5e180d9279b54eeb3066f33b2285bbbb292a31 Mon Sep 17 00:00:00 2001 From: Keno Fischer Date: Fri, 11 May 2018 14:02:34 -0400 Subject: [PATCH] One more bugfix from #26969 --- base/compiler/ssair/inlining2.jl | 1 + base/compiler/ssair/show.jl | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/base/compiler/ssair/inlining2.jl b/base/compiler/ssair/inlining2.jl index 6f4293cf8f99f..20243203e6f7c 100644 --- a/base/compiler/ssair/inlining2.jl +++ b/base/compiler/ssair/inlining2.jl @@ -857,6 +857,7 @@ function assemble_inline_todo!(ir::IRCode, linetable::Vector{LineInfoNode}, sv:: # Now, if profitable union split the atypes into dispatch tuples and match the appropriate method nu = countunionsplit(atypes) if nu != 1 && nu <= sv.params.MAX_UNION_SPLITTING + fully_covered = true for sig in UnionSplitSignature(atypes) metharg′ = argtypes_to_type(sig) if !isdispatchtuple(metharg′) diff --git a/base/compiler/ssair/show.jl b/base/compiler/ssair/show.jl index 26b734586e596..d5322dad9b259 100644 --- a/base/compiler/ssair/show.jl +++ b/base/compiler/ssair/show.jl @@ -88,7 +88,7 @@ function Base.show(io::IO, code::IRCode) end new_nodes = code.new_nodes[filter(i->isassigned(code.new_nodes, i), 1:length(code.new_nodes))] foreach(nn -> scan_ssa_use!(used, nn.node), new_nodes) - perm = sortperm(new_nodes, by = x->x[1]) + perm = sortperm(new_nodes, by = x->x.pos) new_nodes_perm = Iterators.Stateful(perm) if isempty(used) @@ -122,7 +122,7 @@ function Base.show(io::IO, code::IRCode) print_sep = true end floop = true - while !isempty(new_nodes_perm) && new_nodes[peek(new_nodes_perm)][1] == idx + while !isempty(new_nodes_perm) && new_nodes[peek(new_nodes_perm)].pos == idx node_idx = popfirst!(new_nodes_perm) new_node = new_nodes[node_idx] node_idx += length(code.stmts)