25 lines · plain
1; RUN: llc -mtriple arm64ec-windows-msvc -o - %s | FileCheck %s2 3; Arm64EC Regression Test: The Arm64EC Call Lowering was placing "available4; externally" items in COMDATs, which is not permitted by the module verifier.5 6define available_externally float @f() {7entry:8 ret float 0x09}10 11define i32 @caller() {12entry:13 call float @f()14 ret i32 015}16 17; Normal function gets an entry thunk, but not an exit thunk.18; CHECK-DAG: $ientry_thunk$cdecl$i8$v:19; CHECK-NOT: $iexit_thunk$cdecl$i8$v:20 21; Available Externally function gets an exit thunk, but not an entry thunk.22; CHECK-DAG: $iexit_thunk$cdecl$f$v:23; CHECK-DAG: "#f$exit_thunk":24; CHECK-NOT: $ientry_thunk$cdecl$f$v:25