1# REQUIRES: aarch64, x86 2# RUN: rm -rf %t; mkdir -p %t 3# RUN: llvm-mc -filetype=obj -triple=x86_64-apple-darwin %s -o %t/test.o 4# RUN: llvm-mc -filetype=obj -triple=arm64_32-apple-watchos %s -o %t/watchos-test.o 5 6# RUN: %lld -lSystem -o %t/test %t/test.o 7# RUN: llvm-objdump --macho --all-headers %t/test | FileCheck %s --check-prefix=NO-ENCRYPTION -DSUFFIX=_64 8 9# RUN: %lld -lSystem -encryptable -o %t/test %t/test.o 10# RUN: llvm-objdump --macho --all-headers %t/test | FileCheck %s --check-prefix=ENCRYPTION -DSUFFIX=_64 -D#PAGE_SIZE=4096 11 12# RUN: %lld-watchos -lSystem -o %t/watchos-test %t/watchos-test.o 13# RUN: llvm-objdump --macho --all-headers %t/watchos-test | FileCheck %s --check-prefix=ENCRYPTION -DSUFFIX= -D#PAGE_SIZE=16384 14 15# RUN: %lld-watchos -lSystem -no_encryption -o %t/watchos-test %t/watchos-test.o 16# RUN: llvm-objdump --macho --all-headers %t/watchos-test | FileCheck %s --check-prefix=NO-ENCRYPTION -DSUFFIX= 17 18# ENCRYPTION: segname __TEXT 19# ENCRYPTION-NEXT: vmaddr 20# ENCRYPTION-NEXT: vmsize 21# ENCRYPTION-NEXT: fileoff 0 22# ENCRYPTION-NEXT: filesize [[#TEXT_SIZE:]] 23 24# ENCRYPTION: cmd LC_ENCRYPTION_INFO[[SUFFIX]]{{$}} 25# ENCRYPTION-NEXT: cmdsize 26# ENCRYPTION-NEXT: cryptoff [[#PAGE_SIZE]] 27# ENCRYPTION-NEXT: cryptsize [[#TEXT_SIZE - PAGE_SIZE]] 28# ENCRYPTION-NEXT: cryptid 0 29 30# NO-ENCRYPTION-NOT: LC_ENCRYPTION_INFO[[SUFFIX]]{{$}} 31 32.globl _main 33.p2align 2 34_main: 35 ret 36