xref: /aosp_15_r20/external/llvm/test/LTO/X86/symver-asm.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: llvm-as < %s >%t1
2*9880d681SAndroid Build Coastguard Worker; RUN: llvm-lto -o %t2 %t1
3*9880d681SAndroid Build Coastguard Worker; RUN: llvm-nm %t2 | FileCheck %s
4*9880d681SAndroid Build Coastguard Worker
5*9880d681SAndroid Build Coastguard Workertarget triple = "x86_64-unknown-linux-gnu"
6*9880d681SAndroid Build Coastguard Worker
7*9880d681SAndroid Build Coastguard Workermodule asm ".symver io_cancel_0_4,io_cancel@@LIBAIO_0.4"
8*9880d681SAndroid Build Coastguard Worker
9*9880d681SAndroid Build Coastguard Worker; Even without -exported-symbol, io_cancel_0_4 should be noticed by LTOModule's
10*9880d681SAndroid Build Coastguard Worker; RecordStreamer, so it shouldn't get eliminated. However, the object file will
11*9880d681SAndroid Build Coastguard Worker; contain the aliased symver as well as the original.
12*9880d681SAndroid Build Coastguard Workerdefine i32 @io_cancel_0_4() {
13*9880d681SAndroid Build Coastguard Worker; CHECK: io_cancel@@LIBAIO_0.4
14*9880d681SAndroid Build Coastguard Worker; CHECK: io_cancel_0_4
15*9880d681SAndroid Build Coastguard Worker  ret i32 0
16*9880d681SAndroid Build Coastguard Worker}
17