<p dir="auto">The following was unexpected:</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="@generated function bar(args...)
    :( args[1] )
end

julia&gt; @code_llvm bar(1,2,3)

define %jl_value_t* @julia_bar_21185(%jl_value_t*, %jl_value_t**, i32) {
top:
  %3 = alloca [3 x %jl_value_t*], align 8
  %.sub = getelementptr inbounds [3 x %jl_value_t*]* %3, i64 0, i64 0
  %4 = getelementptr [3 x %jl_value_t*]* %3, i64 0, i64 2
  store %jl_value_t* inttoptr (i64 2 to %jl_value_t*), %jl_value_t** %.sub, align 8
  %5 = getelementptr [3 x %jl_value_t*]* %3, i64 0, i64 1
  %6 = load %jl_value_t*** @jl_pgcstack, align 8
  %.c = bitcast %jl_value_t** %6 to %jl_value_t*
  store %jl_value_t* %.c, %jl_value_t** %5, align 8
  store %jl_value_t** %.sub, %jl_value_t*** @jl_pgcstack, align 8
  store %jl_value_t* null, %jl_value_t** %4, align 8
  %7 = icmp eq i32 %2, 0
  br i1 %7, label %fail, label %pass

fail:                                             ; preds = %top
  call void @jl_bounds_error_tuple_int(%jl_value_t** %1, i64 0, i64 1)
  unreachable

pass:                                             ; preds = %top
  %8 = load %jl_value_t** %1, align 8
  %9 = load %jl_value_t** %5, align 8
  %10 = getelementptr inbounds %jl_value_t* %9, i64 0, i32 0
  store %jl_value_t** %10, %jl_value_t*** @jl_pgcstack, align 8
  ret %jl_value_t* %8
}"><pre class="notranslate"><code class="notranslate">@generated function bar(args...)
    :( args[1] )
end

julia&gt; @code_llvm bar(1,2,3)

define %jl_value_t* @julia_bar_21185(%jl_value_t*, %jl_value_t**, i32) {
top:
  %3 = alloca [3 x %jl_value_t*], align 8
  %.sub = getelementptr inbounds [3 x %jl_value_t*]* %3, i64 0, i64 0
  %4 = getelementptr [3 x %jl_value_t*]* %3, i64 0, i64 2
  store %jl_value_t* inttoptr (i64 2 to %jl_value_t*), %jl_value_t** %.sub, align 8
  %5 = getelementptr [3 x %jl_value_t*]* %3, i64 0, i64 1
  %6 = load %jl_value_t*** @jl_pgcstack, align 8
  %.c = bitcast %jl_value_t** %6 to %jl_value_t*
  store %jl_value_t* %.c, %jl_value_t** %5, align 8
  store %jl_value_t** %.sub, %jl_value_t*** @jl_pgcstack, align 8
  store %jl_value_t* null, %jl_value_t** %4, align 8
  %7 = icmp eq i32 %2, 0
  br i1 %7, label %fail, label %pass

fail:                                             ; preds = %top
  call void @jl_bounds_error_tuple_int(%jl_value_t** %1, i64 0, i64 1)
  unreachable

pass:                                             ; preds = %top
  %8 = load %jl_value_t** %1, align 8
  %9 = load %jl_value_t** %5, align 8
  %10 = getelementptr inbounds %jl_value_t* %9, i64 0, i32 0
  store %jl_value_t** %10, %jl_value_t*** @jl_pgcstack, align 8
  ret %jl_value_t* %8
}
</code></pre></div>
<p dir="auto">I was hoping that the code would look more like this:</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="function bar2(a,b,c)
    return a
end

julia&gt; @code_llvm bar2(1,2,3)

define i64 @julia_bar2_21186(i64, i64, i64) {
top:
  ret i64 %0
}"><pre class="notranslate"><code class="notranslate">function bar2(a,b,c)
    return a
end

julia&gt; @code_llvm bar2(1,2,3)

define i64 @julia_bar2_21186(i64, i64, i64) {
top:
  ret i64 %0
}
</code></pre></div>
<p dir="auto">Am I doing anything wrong?</p>
<p dir="auto">CC <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/joehuchette/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/joehuchette">@joehuchette</a></p>
<p dir="auto">It seems that for both <code class="notranslate">f(args...)</code> and <code class="notranslate">f(args)</code> (called with a tuple), the function is specialized to take a tuple as argument. However, in the first case, the argument is always boxed into a <code class="notranslate">jl_value_t*</code> before passing in while for the second case (at least after) the tuple type change, no boxing/gc frame is necessary.</p>
<p dir="auto">From the output from the example code below, it seems that the function is already specialized on the types of the arguments although they are somehow still using the generic <code class="notranslate">jl_value_t*</code> type as the type for both input and output.</p>
<p dir="auto">Example code</p>
<div class="highlight highlight-source-julia notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="@noinline f1(args...) = args
@noinline f2(args) = args

g1() = f1(1, 2, 3)
g2() = f2((1, 2, 3))

function time_func(f::Function, args...)
    println(f)
    f(args...)
    gc()
    @time for i in 1:1000000
        f(args...)
    end
    gc()
end

@code_llvm g1()
@code_llvm f1(1, 2, 3)

@code_llvm g2()
@code_llvm f2((1, 2, 3))

time_func(g1)
time_func(g2)"><pre class="notranslate"><span class="pl-c1">@noinline</span> <span class="pl-en">f1</span>(args<span class="pl-k">...</span>) <span class="pl-k">=</span> args
<span class="pl-c1">@noinline</span> <span class="pl-en">f2</span>(args) <span class="pl-k">=</span> args

<span class="pl-en">g1</span>() <span class="pl-k">=</span> <span class="pl-c1">f1</span>(<span class="pl-c1">1</span>, <span class="pl-c1">2</span>, <span class="pl-c1">3</span>)
<span class="pl-en">g2</span>() <span class="pl-k">=</span> <span class="pl-c1">f2</span>((<span class="pl-c1">1</span>, <span class="pl-c1">2</span>, <span class="pl-c1">3</span>))

<span class="pl-k">function</span> <span class="pl-en">time_func</span>(f<span class="pl-k">::</span><span class="pl-c1">Function</span>, args<span class="pl-k">...</span>)
    <span class="pl-c1">println</span>(f)
    <span class="pl-c1">f</span>(args<span class="pl-k">...</span>)
    <span class="pl-c1">gc</span>()
    <span class="pl-c1">@time</span> <span class="pl-k">for</span> i <span class="pl-k">in</span> <span class="pl-c1">1</span><span class="pl-k">:</span><span class="pl-c1">1000000</span>
        <span class="pl-c1">f</span>(args<span class="pl-k">...</span>)
    <span class="pl-k">end</span>
    <span class="pl-c1">gc</span>()
<span class="pl-k">end</span>

<span class="pl-c1">@code_llvm</span> <span class="pl-c1">g1</span>()
<span class="pl-c1">@code_llvm</span> <span class="pl-c1">f1</span>(<span class="pl-c1">1</span>, <span class="pl-c1">2</span>, <span class="pl-c1">3</span>)

<span class="pl-c1">@code_llvm</span> <span class="pl-c1">g2</span>()
<span class="pl-c1">@code_llvm</span> <span class="pl-c1">f2</span>((<span class="pl-c1">1</span>, <span class="pl-c1">2</span>, <span class="pl-c1">3</span>))

<span class="pl-c1">time_func</span>(g1)
<span class="pl-c1">time_func</span>(g2)</pre></div>
<p dir="auto">Output</p>
<div class="highlight highlight-source-llvm notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="define [3 x i64] @julia_g1_44267() {
top:
  %0 = alloca [5 x %jl_value_t*], align 8
  %.sub = getelementptr inbounds [5 x %jl_value_t*]* %0, i64 0, i64 0
  %1 = getelementptr [5 x %jl_value_t*]* %0, i64 0, i64 2
  %2 = bitcast [5 x %jl_value_t*]* %0 to i64*
  store i64 6, i64* %2, align 8
  %3 = getelementptr [5 x %jl_value_t*]* %0, i64 0, i64 1
  %4 = bitcast %jl_value_t** %3 to %jl_value_t***
  %5 = load %jl_value_t*** @jl_pgcstack, align 8
  store %jl_value_t** %5, %jl_value_t*** %4, align 8
  store %jl_value_t** %.sub, %jl_value_t*** @jl_pgcstack, align 8
  %6 = getelementptr [5 x %jl_value_t*]* %0, i64 0, i64 3
  %7 = getelementptr [5 x %jl_value_t*]* %0, i64 0, i64 4
  store %jl_value_t* inttoptr (i64 139909651832960 to %jl_value_t*), %jl_value_t** %1, align 8
  store %jl_value_t* inttoptr (i64 139909651833008 to %jl_value_t*), %jl_value_t** %6, align 8
  store %jl_value_t* inttoptr (i64 139909651833056 to %jl_value_t*), %jl_value_t** %7, align 8
  %8 = call %jl_value_t* @julia_f1_44268(%jl_value_t* inttoptr (i64 139909684716976 to %jl_value_t*), %jl_value_t** %1, i32 3)
  %9 = bitcast %jl_value_t* %8 to [3 x i64]*
  %10 = load [3 x i64]* %9, align 8
  %11 = load %jl_value_t*** %4, align 8
  store %jl_value_t** %11, %jl_value_t*** @jl_pgcstack, align 8
  ret [3 x i64] %10
}

define %jl_value_t* @julia_f1_44268(%jl_value_t*, %jl_value_t**, i32) {
top:
  %3 = alloca [3 x %jl_value_t*], align 8
  %.sub = getelementptr inbounds [3 x %jl_value_t*]* %3, i64 0, i64 0
  %4 = getelementptr [3 x %jl_value_t*]* %3, i64 0, i64 2
  %5 = bitcast [3 x %jl_value_t*]* %3 to i64*
  store i64 2, i64* %5, align 8
  %6 = getelementptr [3 x %jl_value_t*]* %3, i64 0, i64 1
  %7 = bitcast %jl_value_t** %6 to %jl_value_t***
  %8 = load %jl_value_t*** @jl_pgcstack, align 8
  store %jl_value_t** %8, %jl_value_t*** %7, align 8
  store %jl_value_t** %.sub, %jl_value_t*** @jl_pgcstack, align 8
  store %jl_value_t* null, %jl_value_t** %4, align 8
  %9 = call %jl_value_t* @jl_f_tuple(%jl_value_t* null, %jl_value_t** %1, i32 %2)
  store %jl_value_t* %9, %jl_value_t** %4, align 8
  %10 = load %jl_value_t*** %7, align 8
  store %jl_value_t** %10, %jl_value_t*** @jl_pgcstack, align 8
  ret %jl_value_t* %9
}

define [3 x i64] @julia_g2_44275() {
top:
  %0 = call [3 x i64] @julia_f2_44276([3 x i64] [i64 1, i64 2, i64 3])
  ret [3 x i64] %0
}

define [3 x i64] @julia_f2_44276([3 x i64]) {
top:
  ret [3 x i64] %0
}
g1
elapsed time: 0.193401883 seconds (61 MB allocated, 14.06% gc time in 2 pauses with 0 full sweep)
g2
elapsed time: 0.025389954 seconds (30 MB allocated, 1.64% gc time in 1 pauses with 0 full sweep)"><pre class="notranslate"><span class="pl-k">define</span> [<span class="pl-c1">3</span> x <span class="pl-k">i64</span>] <span class="pl-c1">@julia_g1_44267</span>() {
top:
  <span class="pl-c1">%0</span> = <span class="pl-k">alloca</span> [<span class="pl-c1">5</span> x <span class="pl-k">%jl_value_t*</span>], <span class="pl-k">align</span> <span class="pl-c1">8</span>
  <span class="pl-c1">%.sub</span> = <span class="pl-k">getelementptr</span> <span class="pl-k">inbounds</span> [<span class="pl-c1">5</span> x <span class="pl-k">%jl_value_t*</span>]* <span class="pl-c1">%0</span>, <span class="pl-k">i64</span> <span class="pl-c1">0</span>, <span class="pl-k">i64</span> <span class="pl-c1">0</span>
  <span class="pl-c1">%1</span> = <span class="pl-k">getelementptr</span> [<span class="pl-c1">5</span> x <span class="pl-k">%jl_value_t*</span>]* <span class="pl-c1">%0</span>, <span class="pl-k">i64</span> <span class="pl-c1">0</span>, <span class="pl-k">i64</span> <span class="pl-c1">2</span>
  <span class="pl-c1">%2</span> = <span class="pl-k">bitcast</span> [<span class="pl-c1">5</span> x <span class="pl-k">%jl_value_t*</span>]* <span class="pl-c1">%0</span> <span class="pl-k">to</span> <span class="pl-k">i64*</span>
  <span class="pl-k">store</span> <span class="pl-k">i64</span> <span class="pl-c1">6</span>, <span class="pl-k">i64*</span> <span class="pl-c1">%2</span>, <span class="pl-k">align</span> <span class="pl-c1">8</span>
  <span class="pl-c1">%3</span> = <span class="pl-k">getelementptr</span> [<span class="pl-c1">5</span> x <span class="pl-k">%jl_value_t*</span>]* <span class="pl-c1">%0</span>, <span class="pl-k">i64</span> <span class="pl-c1">0</span>, <span class="pl-k">i64</span> <span class="pl-c1">1</span>
  <span class="pl-c1">%4</span> = <span class="pl-k">bitcast</span> <span class="pl-k">%jl_value_t**</span> <span class="pl-c1">%3</span> <span class="pl-k">to</span> <span class="pl-k">%jl_value_t***</span>
  <span class="pl-c1">%5</span> = <span class="pl-k">load</span> <span class="pl-k">%jl_value_t***</span> <span class="pl-c1">@jl_pgcstack</span>, <span class="pl-k">align</span> <span class="pl-c1">8</span>
  <span class="pl-k">store</span> <span class="pl-k">%jl_value_t**</span> <span class="pl-c1">%5</span>, <span class="pl-k">%jl_value_t***</span> <span class="pl-c1">%4</span>, <span class="pl-k">align</span> <span class="pl-c1">8</span>
  <span class="pl-k">store</span> <span class="pl-k">%jl_value_t**</span> <span class="pl-c1">%.sub</span>, <span class="pl-k">%jl_value_t***</span> <span class="pl-c1">@jl_pgcstack</span>, <span class="pl-k">align</span> <span class="pl-c1">8</span>
  <span class="pl-c1">%6</span> = <span class="pl-k">getelementptr</span> [<span class="pl-c1">5</span> x <span class="pl-k">%jl_value_t*</span>]* <span class="pl-c1">%0</span>, <span class="pl-k">i64</span> <span class="pl-c1">0</span>, <span class="pl-k">i64</span> <span class="pl-c1">3</span>
  <span class="pl-c1">%7</span> = <span class="pl-k">getelementptr</span> [<span class="pl-c1">5</span> x <span class="pl-k">%jl_value_t*</span>]* <span class="pl-c1">%0</span>, <span class="pl-k">i64</span> <span class="pl-c1">0</span>, <span class="pl-k">i64</span> <span class="pl-c1">4</span>
  <span class="pl-k">store</span> <span class="pl-k">%jl_value_t*</span> <span class="pl-k">inttoptr</span> (<span class="pl-k">i64</span> <span class="pl-c1">139909651832960</span> <span class="pl-k">to</span> <span class="pl-k">%jl_value_t*</span>), <span class="pl-k">%jl_value_t**</span> <span class="pl-c1">%1</span>, <span class="pl-k">align</span> <span class="pl-c1">8</span>
  <span class="pl-k">store</span> <span class="pl-k">%jl_value_t*</span> <span class="pl-k">inttoptr</span> (<span class="pl-k">i64</span> <span class="pl-c1">139909651833008</span> <span class="pl-k">to</span> <span class="pl-k">%jl_value_t*</span>), <span class="pl-k">%jl_value_t**</span> <span class="pl-c1">%6</span>, <span class="pl-k">align</span> <span class="pl-c1">8</span>
  <span class="pl-k">store</span> <span class="pl-k">%jl_value_t*</span> <span class="pl-k">inttoptr</span> (<span class="pl-k">i64</span> <span class="pl-c1">139909651833056</span> <span class="pl-k">to</span> <span class="pl-k">%jl_value_t*</span>), <span class="pl-k">%jl_value_t**</span> <span class="pl-c1">%7</span>, <span class="pl-k">align</span> <span class="pl-c1">8</span>
  <span class="pl-c1">%8</span> = <span class="pl-k">call</span> <span class="pl-k">%jl_value_t*</span> <span class="pl-c1">@julia_f1_44268</span>(<span class="pl-k">%jl_value_t*</span> <span class="pl-k">inttoptr</span> (<span class="pl-k">i64</span> <span class="pl-c1">139909684716976</span> <span class="pl-k">to</span> <span class="pl-k">%jl_value_t*</span>), <span class="pl-k">%jl_value_t**</span> <span class="pl-c1">%1</span>, <span class="pl-k">i32</span> <span class="pl-c1">3</span>)
  <span class="pl-c1">%9</span> = <span class="pl-k">bitcast</span> <span class="pl-k">%jl_value_t*</span> <span class="pl-c1">%8</span> <span class="pl-k">to</span> [<span class="pl-c1">3</span> x <span class="pl-k">i64</span>]*
  <span class="pl-c1">%10</span> = <span class="pl-k">load</span> [<span class="pl-c1">3</span> x <span class="pl-k">i64</span>]* <span class="pl-c1">%9</span>, <span class="pl-k">align</span> <span class="pl-c1">8</span>
  <span class="pl-c1">%11</span> = <span class="pl-k">load</span> <span class="pl-k">%jl_value_t***</span> <span class="pl-c1">%4</span>, <span class="pl-k">align</span> <span class="pl-c1">8</span>
  <span class="pl-k">store</span> <span class="pl-k">%jl_value_t**</span> <span class="pl-c1">%11</span>, <span class="pl-k">%jl_value_t***</span> <span class="pl-c1">@jl_pgcstack</span>, <span class="pl-k">align</span> <span class="pl-c1">8</span>
  <span class="pl-k">ret</span> [<span class="pl-c1">3</span> x <span class="pl-k">i64</span>] <span class="pl-c1">%10</span>
}

<span class="pl-k">define</span> <span class="pl-k">%jl_value_t*</span> <span class="pl-c1">@julia_f1_44268</span>(<span class="pl-k">%jl_value_t*</span>, <span class="pl-k">%jl_value_t**</span>, <span class="pl-k">i32</span>) {
top:
  <span class="pl-c1">%3</span> = <span class="pl-k">alloca</span> [<span class="pl-c1">3</span> x <span class="pl-k">%jl_value_t*</span>], <span class="pl-k">align</span> <span class="pl-c1">8</span>
  <span class="pl-c1">%.sub</span> = <span class="pl-k">getelementptr</span> <span class="pl-k">inbounds</span> [<span class="pl-c1">3</span> x <span class="pl-k">%jl_value_t*</span>]* <span class="pl-c1">%3</span>, <span class="pl-k">i64</span> <span class="pl-c1">0</span>, <span class="pl-k">i64</span> <span class="pl-c1">0</span>
  <span class="pl-c1">%4</span> = <span class="pl-k">getelementptr</span> [<span class="pl-c1">3</span> x <span class="pl-k">%jl_value_t*</span>]* <span class="pl-c1">%3</span>, <span class="pl-k">i64</span> <span class="pl-c1">0</span>, <span class="pl-k">i64</span> <span class="pl-c1">2</span>
  <span class="pl-c1">%5</span> = <span class="pl-k">bitcast</span> [<span class="pl-c1">3</span> x <span class="pl-k">%jl_value_t*</span>]* <span class="pl-c1">%3</span> <span class="pl-k">to</span> <span class="pl-k">i64*</span>
  <span class="pl-k">store</span> <span class="pl-k">i64</span> <span class="pl-c1">2</span>, <span class="pl-k">i64*</span> <span class="pl-c1">%5</span>, <span class="pl-k">align</span> <span class="pl-c1">8</span>
  <span class="pl-c1">%6</span> = <span class="pl-k">getelementptr</span> [<span class="pl-c1">3</span> x <span class="pl-k">%jl_value_t*</span>]* <span class="pl-c1">%3</span>, <span class="pl-k">i64</span> <span class="pl-c1">0</span>, <span class="pl-k">i64</span> <span class="pl-c1">1</span>
  <span class="pl-c1">%7</span> = <span class="pl-k">bitcast</span> <span class="pl-k">%jl_value_t**</span> <span class="pl-c1">%6</span> <span class="pl-k">to</span> <span class="pl-k">%jl_value_t***</span>
  <span class="pl-c1">%8</span> = <span class="pl-k">load</span> <span class="pl-k">%jl_value_t***</span> <span class="pl-c1">@jl_pgcstack</span>, <span class="pl-k">align</span> <span class="pl-c1">8</span>
  <span class="pl-k">store</span> <span class="pl-k">%jl_value_t**</span> <span class="pl-c1">%8</span>, <span class="pl-k">%jl_value_t***</span> <span class="pl-c1">%7</span>, <span class="pl-k">align</span> <span class="pl-c1">8</span>
  <span class="pl-k">store</span> <span class="pl-k">%jl_value_t**</span> <span class="pl-c1">%.sub</span>, <span class="pl-k">%jl_value_t***</span> <span class="pl-c1">@jl_pgcstack</span>, <span class="pl-k">align</span> <span class="pl-c1">8</span>
  <span class="pl-k">store</span> <span class="pl-k">%jl_value_t*</span> <span class="pl-k">null</span>, <span class="pl-k">%jl_value_t**</span> <span class="pl-c1">%4</span>, <span class="pl-k">align</span> <span class="pl-c1">8</span>
  <span class="pl-c1">%9</span> = <span class="pl-k">call</span> <span class="pl-k">%jl_value_t*</span> <span class="pl-c1">@jl_f_tuple</span>(<span class="pl-k">%jl_value_t*</span> <span class="pl-k">null</span>, <span class="pl-k">%jl_value_t**</span> <span class="pl-c1">%1</span>, <span class="pl-k">i32</span> <span class="pl-c1">%2</span>)
  <span class="pl-k">store</span> <span class="pl-k">%jl_value_t*</span> <span class="pl-c1">%9</span>, <span class="pl-k">%jl_value_t**</span> <span class="pl-c1">%4</span>, <span class="pl-k">align</span> <span class="pl-c1">8</span>
  <span class="pl-c1">%10</span> = <span class="pl-k">load</span> <span class="pl-k">%jl_value_t***</span> <span class="pl-c1">%7</span>, <span class="pl-k">align</span> <span class="pl-c1">8</span>
  <span class="pl-k">store</span> <span class="pl-k">%jl_value_t**</span> <span class="pl-c1">%10</span>, <span class="pl-k">%jl_value_t***</span> <span class="pl-c1">@jl_pgcstack</span>, <span class="pl-k">align</span> <span class="pl-c1">8</span>
  <span class="pl-k">ret</span> <span class="pl-k">%jl_value_t*</span> <span class="pl-c1">%9</span>
}

<span class="pl-k">define</span> [<span class="pl-c1">3</span> x <span class="pl-k">i64</span>] <span class="pl-c1">@julia_g2_44275</span>() {
top:
  <span class="pl-c1">%0</span> = <span class="pl-k">call</span> [<span class="pl-c1">3</span> x <span class="pl-k">i64</span>] <span class="pl-c1">@julia_f2_44276</span>([<span class="pl-c1">3</span> x <span class="pl-k">i64</span>] [<span class="pl-k">i64</span> <span class="pl-c1">1</span>, <span class="pl-k">i64</span> <span class="pl-c1">2</span>, <span class="pl-k">i64</span> <span class="pl-c1">3</span>])
  <span class="pl-k">ret</span> [<span class="pl-c1">3</span> x <span class="pl-k">i64</span>] <span class="pl-c1">%0</span>
}

<span class="pl-k">define</span> [<span class="pl-c1">3</span> x <span class="pl-k">i64</span>] <span class="pl-c1">@julia_f2_44276</span>([<span class="pl-c1">3</span> x <span class="pl-k">i64</span>]) {
top:
  <span class="pl-k">ret</span> [<span class="pl-c1">3</span> x <span class="pl-k">i64</span>] <span class="pl-c1">%0</span>
}
g1
elapsed time: <span class="pl-c1">0</span>.<span class="pl-c1">193401883</span> seconds (<span class="pl-c1">61</span> MB allocated, <span class="pl-c1">14</span>.<span class="pl-c1">06</span>% <span class="pl-k">gc</span> time in <span class="pl-c1">2</span> pauses with <span class="pl-c1">0</span> full sweep)
g2
elapsed time: <span class="pl-c1">0</span>.<span class="pl-c1">025389954</span> seconds (<span class="pl-c1">30</span> MB allocated, <span class="pl-c1">1</span>.<span class="pl-c1">64</span>% <span class="pl-k">gc</span> time in <span class="pl-c1">1</span> pauses with <span class="pl-c1">0</span> full sweep)</pre></div>
<p dir="auto">(Related to <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="75589625" data-permission-text="Title is private" data-url="https://github.com/JuliaLang/julia/issues/11244" data-hovercard-type="pull_request" data-hovercard-url="/JuliaLang/julia/pull/11244/hovercard" href="https://github.com/JuliaLang/julia/pull/11244">#11244</a>)</p>