xref: /llvm-project/llvm/test/tools/llvm-ar/lto-kind-from-triple.test (revision fe5599eac6a57ad5a354e3b6fec9e97332304bac)
1## Ensure that we generate a GNU style archive if the first input is a bitcode
2## file with a GNU target triple (absence of __.SYMDEF in the archive).
3
4# RUN: echo -e 'target triple = "x86_64-unknown-linux-gnu" \n define void @_Z3foov() { ret void }' > %t.gnu.ll
5# RUN: llvm-as -o %t.gnu.o %t.gnu.ll
6
7# RUN: rm -f %t.ar
8# RUN: llvm-ar crs %t.ar %t.gnu.o
9# RUN: not grep -q __.SYMDEF %t.ar
10
11## Ensure that we generate a MachO style archive if the first input is a
12## bitcode file with a MachO target triple (presence of __.SYMDEF in the
13## archive).
14
15# RUN: echo -e 'target triple = "x86_64-apple-macosx10.9" \n define void @_Z3foov() { ret void }' > %t.macho.ll
16# RUN: llvm-as -o %t.macho.o %t.macho.ll
17
18# RUN: rm -f %t.ar
19# RUN: llvm-ar crs %t.ar %t.macho.o
20# RUN: grep -q __.SYMDEF %t.ar
21
22## Verify that archive format is based on the first input's target triple.
23
24# RUN: rm -f %t.ar
25# RUN: llvm-ar crs %t.ar %t.gnu.o %t.macho.o
26# RUN: not grep -q __.SYMDEF %t.ar
27