[llvm-readelf] - Report a warning when .hash section contains a chain with a cycle.
[llvm-complete.git] / test / tools / llvm-lipo / replace-invalid-input.test
blob38e9805bcba7de7d2d4fa1b4297b0442b866e7f6
1 # RUN: yaml2obj %p/Inputs/i386-slice.yaml > %t-32.o
2 # RUN: yaml2obj %p/Inputs/arm64-slice.yaml > %t-arm64.o
3 # RUN: yaml2obj %p/Inputs/i386-x86_64-universal.yaml > %t-universal.o
5 # RUN: not llvm-lipo %t-universal.o -replace %t-32.o 2>&1 | FileCheck --check-prefix=MISSING_ARG %s
6 # MISSING_ARG: error: replace is missing an argument: expects -replace arch_type file_name
8 # RUN: not llvm-lipo %t-universal.o -replace i386 %t-32.o 2>&1 | FileCheck --check-prefix=OUTPUT_FILE %s
9 # OUTPUT_FILE: error: replace expects a single output file to be specified
11 # RUN: not llvm-lipo %t-universal.o %t-universal.o -replace i386 %t-32.o -o %t.o 2>&1 | FileCheck --check-prefix=INPUT_ARGS %s
12 # INPUT_ARGS: error: replace expects a single input file
14 # RUN: not llvm-lipo %t-universal.o -replace i386 %t-33.o  -o %t.o 2>&1 | FileCheck --check-prefix=INVALID_FILE %s
15 # INVALID_FILE: {{[nN]}}o such file or directory
17 # RUN: not llvm-lipo %t-universal.o -replace i3866 %t-32.o -o %t.o 2>&1 | FileCheck --check-prefix=INVALID_ARCH %s
18 # INVALID_ARCH: error: Invalid architecture: i3866
20 # RUN: not llvm-lipo %t-universal.o -replace arm64 %t-32.o -o %t.o 2>&1 | FileCheck --check-prefix=ARCH_NOT_MATCHED %s
21 # ARCH_NOT_MATCHED: error: specified architecture: arm64 for file: {{.*}} does not match the file's architecture (i386)
23 # RUN: not llvm-lipo %t-universal.o -replace arm64 %t-arm64.o -o %t.o 2>&1 | FileCheck --check-prefix=ARCH_NOT_IN_INPUT %s
24 # ARCH_NOT_IN_INPUT: error: -replace arm64 <file_name> specified but fat file: {{.*}} does not contain that architecture
26 # RUN: not llvm-lipo %t-universal.o -replace i386 %t-32.o -replace arm64 %t-universal.o -o %t.o 2>&1 | FileCheck --check-prefix=REPLACE_UNIVERSAL %s
27 # REPLACE_UNIVERSAL: replacement file: {{.*}} is a fat file (must be a thin file)
29 # RUN: not llvm-lipo %t-universal.o -replace i386 %t-32.o -replace i386 %t-32.o -o %t.o 2>&1 | FileCheck --check-prefix=ARCH_DUPLICATE %s
30 # ARCH_DUPLICATE: error: -replace i386 <file_name> specified multiple times: