// Checks that non-fully supported passes on AArch64 are handled appropriately. // REQUIRES: system-linux,asserts,target=aarch64{{.*}} RUN: %clang %cflags %p/../Inputs/hello.c -o %t -Wl,-q,-z,undefs RUN: not llvm-bolt %t -o %t.bolt --frame-opt=all 2>&1 | FileCheck %s --check-prefix=CHECK-FRAME-OPT RUN: not llvm-bolt %t -o %t.bolt --three-way-branch 2>&1 | FileCheck %s --check-prefix=CHECK-THREE-WAY RUN: not llvm-bolt %t -o %t.bolt --jt-footprint-reduction 2>&1 | FileCheck %s --check-prefix=CHECK-JT-FOOTPRINT-REDUCTION RUN: not llvm-bolt %t -o %t.bolt --indirect-call-promotion=all 2>&1 | FileCheck %s --check-prefix=CHECK-INDIRECT-CALL-PROMOTION RUN: not llvm-bolt %t -o %t.bolt --memcpy1-spec=main 2>&1 | FileCheck %s --check-prefix=CHECK-MEMCPY1-SPEC CHECK-FRAME-OPT: BOLT-ERROR: frame-optimizer is supported only on X86 CHECK-THREE-WAY: BOLT-ERROR: three way branch is supported only on X86 CHECK-JT-FOOTPRINT-REDUCTION: BOLT-ERROR: jt-footprint-reduction is supported only on X86 CHECK-INDIRECT-CALL-PROMOTION: BOLT-ERROR: indirect-call-promotion is supported only on X86 CHECK-MEMCPY1-SPEC: BOLT-ERROR: specialize-memcpy is currently supported only on X86 // Passes specific to X86 arch RUN: not llvm-bolt %t -o %t.bolt --cmov-conversion 2>&1 | FileCheck %s --check-prefix=CHECK-CMOV-CONV RUN: not llvm-bolt %t -o %t.bolt --reg-reassign 2>&1 | FileCheck %s --check-prefix=CHECK-REG-REASSIGN RUN: not llvm-bolt %t -o %t.bolt --insert-retpolines 2>&1 | FileCheck %s --check-prefix=CHECK-RETPOLINE RUN: not llvm-bolt %t -o %t.bolt --stoke --stoke-out=%t.stoke.csv 2>&1 | FileCheck %s --check-prefix=CHECK-STOKE CHECK-CMOV-CONV: BOLT-ERROR: CMOV conversion is specific to X86 CHECK-REG-REASSIGN: BOLT-ERROR: reg-reassign is specific to X86 CHECK-RETPOLINE: BOLT-ERROR: retpoline-insertion is specific to X86 CHECK-STOKE: BOLT-ERROR: stoke-get-stat is specific to X86 RUN: not llvm-bolt %t -o %t.bolt split-functions --split-strategy=cdsplit 2>&1 | FileCheck %s --check-prefix=CHECK-CDSPLIT CHECK-CDSPLIT: BOLT-ERROR: CDSplit is not supported with LongJmp. Try with '--compact-code-model'