23 lines · plain
1; RUN: llc -mtriple=arm64ec-pc-windows-msvc < %s | FileCheck %s2 3; Validates when local linkage functions get a thunk generated.4 5; Being called does not cause a thunk to be generated or the symbol name to be mangled.6; CHECK-NOT: "#does_not_have_addr_taken":7; CHECK-NOT: $ientry_thunk$cdecl$v$f;8define internal void @does_not_have_addr_taken(float) nounwind {9 ret void10}11define void @calls_does_not_have_addr_taken() nounwind {12 call void @does_not_have_addr_taken(float 0.0)13 ret void14}15 16; Having an address taken does cause a thunk to be generated and the symbol name to be mangled.17; CHECK: "#has_addr_taken":18; CHECK: $ientry_thunk$cdecl$v$i8;19define internal void @has_addr_taken(i64) nounwind {20 ret void21}22@points_to_has_addr_taken = global ptr @has_addr_taken23