1 Processing of the -arch option happens at debug map parsing time, thus just 2 looking at the dumped debug maps is enough to validate their effects. 3 4 RUN: llvm-dsymutil -oso-prepend-path %p -dump-debug-map %p/Inputs/fat-test.arm.dylib | FileCheck %s -check-prefix=ARM64 -check-prefix=ARMV7S -check-prefix=ARMV7 -check-prefix=CHECK 5 RUN: llvm-dsymutil -oso-prepend-path %p -dump-debug-map %p/Inputs/fat-test.arm.dylib -arch all | FileCheck %s -check-prefix=ARM64 -check-prefix=ARMV7S -check-prefix=ARMV7 -check-prefix=CHECK 6 RUN: llvm-dsymutil -oso-prepend-path %p -dump-debug-map %p/Inputs/fat-test.arm.dylib -arch='*' | FileCheck %s -check-prefix=ARM64 -check-prefix=ARMV7S -check-prefix=ARMV7 -check-prefix=CHECK 7 RUN: llvm-dsymutil -oso-prepend-path %p -dump-debug-map %p/Inputs/fat-test.arm.dylib -arch arm64 | FileCheck %s -check-prefix=ARM64 -check-prefix=CHECK 8 RUN: llvm-dsymutil -oso-prepend-path %p -dump-debug-map %p/Inputs/fat-test.arm.dylib -arch arm | FileCheck %s -check-prefix=ARMV7S -check-prefix=ARMV7 -check-prefix=CHECK 9 RUN: llvm-dsymutil -oso-prepend-path %p -dump-debug-map %p/Inputs/fat-test.arm.dylib -arch armv7 | FileCheck %s -check-prefix=ARMV7 -check-prefix=CHECK 10 RUN: llvm-dsymutil -oso-prepend-path %p -dump-debug-map %p/Inputs/fat-test.arm.dylib -arch arm64 -arch armv7s | FileCheck %s -check-prefix=ARM64 -check-prefix=ARMV7S -check-prefix=CHECK 11 RUN: not llvm-dsymutil -oso-prepend-path %p -dump-debug-map %p/Inputs/fat-test.arm.dylib -arch arm42 2>&1 | FileCheck %s -check-prefix=BADARCH 12 RUN: not llvm-dsymutil -oso-prepend-path %p -dump-debug-map %p/Inputs/fat-test.arm.dylib -arch i386 2>&1 | FileCheck %s -check-prefix=EMPTY 13 14 15 ARMV7: --- 16 ARMV7-NOT: ... 17 ARMV7: triple: 'thumbv7-apple-darwin' 18 ARMV7-NOT: ... 19 ARMV7: sym: _armv7_var 20 ARMV7-NOT: --- 21 22 ARMV7S: --- 23 ARMV7S-NOT: ... 24 ARMV7S: triple: 'thumbv7s-apple-darwin' 25 ARMV7S-NOT: ... 26 ARMV7S: sym: _armv7s_var 27 ARMV7S-NOT: --- 28 29 ARM64: --- 30 ARM64-NOT: ... 31 ARM64: triple: 'arm64-apple-darwin' 32 ARM64-NOT: ... 33 ARM64: sym: _arm64_var 34 ARM64-NOT: --- 35 36 CHECK: ... 37 38 BADARCH: error: Unsupported cpu architecture: 'arm42' 39 EMPTY: error: no architecture to link 40