Files
swift-mirror/test/SILOptimizer/no-external-defs-onone.sil
Saleem Abdulrasool 2c0999f67f test: port most SILOptimizer tests for Windows
This adjusts the SILOptimizer test suite to work on Windows.  The
remaining SILOptimizer test failure is a memory issue in the standard
library.
2018-12-24 00:57:25 -08:00

43 lines
1.3 KiB
Plaintext

// RUN: %target-swift-frontend -module-name=test -Onone -emit-ir %s | %FileCheck %s
// CHECK-DAG: define linkonce_odr hidden swiftcc void @shared_external_test()
// CHECK-DAG: declare {{(dllimport )?}}swiftcc void @public_external_test()
// Non-public external symbols are emitted into clients.
// CHECK-DAG: define available_externally hidden swiftcc void @hidden_external_test()
// CHECK-NOT: public_external_unused_test
sil public_external @public_external_test : $@convention(thin) () -> () {
%0 = tuple()
return %0 : $()
}
sil hidden_external @hidden_external_test : $@convention(thin) () -> () {
%0 = tuple()
return %0 : $()
}
sil shared_external @shared_external_test : $@convention(thin) () -> () {
%0 = tuple()
return %0 : $()
}
sil public_external @public_external_unused_test : $@convention(thin) () -> () {
%0 = tuple()
return %0 : $()
}
sil public @use_all_symbols : $@convention(thin) () -> () {
%0 = function_ref @public_external_test : $@convention(thin) () -> ()
%1 = function_ref @hidden_external_test : $@convention(thin) () -> ()
%2 = function_ref @shared_external_test : $@convention(thin) () -> ()
apply %0() : $@convention(thin) () -> ()
apply %1() : $@convention(thin) () -> ()
apply %2() : $@convention(thin) () -> ()
%24 = tuple()
return %24 : $()
}