1; REQUIRES: x86
2;; Test that the referenced filename is correct (not <internal> or lto.tmp).
3
4; RUN: split-file %s %t
5; RUN: llvm-as %t/a.ll -o %ta.o
6; RUN: llvm-as %t/b.ll -o %tb.o
7; RUN: ld.lld --warn-backrefs --start-lib %tb.o --end-lib %ta.o -o /dev/null 2>&1 | FileCheck %s
8
9; CHECK: warning: backward reference detected: f in {{.*}}a.o refers to {{.*}}b.o
10
11;--- a.ll
12target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
13target triple = "x86_64-unknown-linux-gnu"
14
15declare void @f()
16
17define void @_start() {
18entry:
19  call void () @f()
20  ret void
21}
22
23;--- b.ll
24target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
25target triple = "x86_64-unknown-linux-gnu"
26
27define void @f() {
28entry:
29  ret void
30}
31