ca631e41d8b47f719c73dc545ae77034dacf12c0
[oota-llvm.git] / test / tools / dsymutil / fat-binary-output.test
1 RUN: llvm-dsymutil -verbose -no-output %p/Inputs/fat-test.dylib -oso-prepend-path %p | FileCheck %s
2
3 This test doesn't produce any filesytstem output, we just look at the verbose
4 log output.
5
6 For each arch in the binary, check that we emit the right triple with the right
7 file and the right symbol inside it (each slice has a different symbol, so that
8 means that the logic is looking at the right file slice too).
9
10 After the link of each architecture, check that lipo is correctly invoked to
11 generate the fat output binary.
12
13 CHECK: triple:          'x86_64-apple-darwin'
14 CHECK:   - filename:        [[INPUTS_PATH:.*]]fat-test.o
15 CHECK:   DW_AT_name{{.*}} "x86_64_var"
16
17 CHECK: triple:          'i386-apple-darwin'
18 CHECK:   - filename:        [[INPUTS_PATH]]fat-test.o
19 CHECK:   DW_AT_name{{.*}} "i386_var"
20
21 CHECK: triple:          'x86_64h-apple-darwin'
22 CHECK:   - filename:        [[INPUTS_PATH]]fat-test.o
23 CHECK:   DW_AT_name{{.*}} "x86_64h_var"
24
25 CHECK: Running lipo
26 CHECK-NEXT: lipo -create
27 CHECK-SAME: [[INPUTS_PATH]]fat-test.dylib.tmp{{......}}.dwarf
28 CHECK-SAME: [[INPUTS_PATH]]fat-test.dylib.tmp{{......}}.dwarf
29 CHECK-SAME: [[INPUTS_PATH]]fat-test.dylib.tmp{{......}}.dwarf
30 CHECK-SAME: -segalign x86_64 20 -segalign i386 20 -segalign x86_64h 20
31 CHECK-SAME: -output [[INPUTS_PATH]]fat-test.dylib.dwarf
32