summaryrefslogtreecommitdiff
path: root/test/CodeGen/AArch64/GlobalISel/gisel-commandline-option.ll
diff options
context:
space:
mode:
Diffstat (limited to 'test/CodeGen/AArch64/GlobalISel/gisel-commandline-option.ll')
-rw-r--r--test/CodeGen/AArch64/GlobalISel/gisel-commandline-option.ll48
1 files changed, 48 insertions, 0 deletions
diff --git a/test/CodeGen/AArch64/GlobalISel/gisel-commandline-option.ll b/test/CodeGen/AArch64/GlobalISel/gisel-commandline-option.ll
new file mode 100644
index 0000000000000..3ecdb7bbedfb5
--- /dev/null
+++ b/test/CodeGen/AArch64/GlobalISel/gisel-commandline-option.ll
@@ -0,0 +1,48 @@
+; RUN: llc -mtriple=aarch64-- -debug-pass=Structure %s -o /dev/null 2>&1 \
+; RUN: -O0 -aarch64-enable-global-isel-at-O=0 \
+; RUN: | FileCheck %s --check-prefix ENABLED --check-prefix NOFALLBACK
+
+; RUN: llc -mtriple=aarch64-- -debug-pass=Structure %s -o /dev/null 2>&1 \
+; RUN: -O0 -aarch64-enable-global-isel-at-O=0 -global-isel-abort=2 \
+; RUN: | FileCheck %s --check-prefix ENABLED --check-prefix FALLBACK
+
+; RUN: llc -mtriple=aarch64-- -debug-pass=Structure %s -o /dev/null 2>&1 \
+; RUN: -global-isel \
+; RUN: | FileCheck %s --check-prefix ENABLED --check-prefix NOFALLBACK
+
+; RUN: llc -mtriple=aarch64-- -debug-pass=Structure %s -o /dev/null 2>&1 \
+; RUN: -global-isel -global-isel-abort=2 \
+; RUN: | FileCheck %s --check-prefix ENABLED --check-prefix FALLBACK
+
+; RUN: llc -mtriple=aarch64-- -debug-pass=Structure %s -o /dev/null 2>&1 \
+; RUN: -O1 -aarch64-enable-global-isel-at-O=3 \
+; RUN: | FileCheck %s --check-prefix ENABLED
+
+; RUN: llc -mtriple=aarch64-- -debug-pass=Structure %s -o /dev/null 2>&1 \
+; RUN: -O1 -aarch64-enable-global-isel-at-O=0 \
+; RUN: | FileCheck %s --check-prefix DISABLED
+
+; RUN: llc -mtriple=aarch64-- -debug-pass=Structure %s -o /dev/null 2>&1 \
+; RUN: -aarch64-enable-global-isel-at-O=-1 \
+; RUN: | FileCheck %s --check-prefix DISABLED
+
+; RUN: llc -mtriple=aarch64-- -debug-pass=Structure %s -o /dev/null 2>&1 \
+; RUN: | FileCheck %s --check-prefix DISABLED
+
+; ENABLED: IRTranslator
+; ENABLED-NEXT: Legalizer
+; ENABLED-NEXT: RegBankSelect
+; ENABLED-NEXT: InstructionSelect
+; ENABLED-NEXT: ResetMachineFunction
+
+; FALLBACK: AArch64 Instruction Selection
+; NOFALLBACK-NOT: AArch64 Instruction Selection
+
+; DISABLED-NOT: IRTranslator
+
+; DISABLED: AArch64 Instruction Selection
+; DISABLED: Expand ISel Pseudo-instructions
+
+define void @empty() {
+ ret void
+}