// RUN: %target-sil-opt -enable-sil-verify-all %s -early-redundant-load-elim | %FileCheck %s

sil_stage canonical

import Builtin
import Swift
import SwiftShims


// Check that earlyl redundant load elimination ignores arrays.


// CHECK-LABEL: test_array
// CHECK: %1 = load
// CHECK: %2 = load
// CHECK: %3 = tuple (%1 {{.*}}, %2 {{.*}})
sil @test_array : $@convention(thin) (@inout Array<Int>) -> (Array<Int>, Array<Int>) {
bb0(%0 : $*Array<Int>):
  %1 = load %0 : $*Array<Int>
  %2 = load %0 : $*Array<Int>
  %3 = tuple (%1: $Array<Int>, %2: $Array<Int>)
  return %3 : $(Array<Int>, Array<Int>)
}

// CHECK-LABEL: test_non_array
// CHECK: %1 = load
// CHECK: %2 = tuple (%1 {{.*}}, %1 {{.*}})
sil @test_non_array : $@convention(thin) (@inout Int) -> (Int, Int) {
bb0(%0 : $*Int):
  %1 = load %0 : $*Int
  %2 = load %0 : $*Int
  %3 = tuple (%1: $Int, %2: $Int)
  return %3 : $(Int, Int)
}


