summaryrefslogtreecommitdiffstats
path: root/llvm/test
diff options
context:
space:
mode:
authorSimon Pilgrim <llvm-dev@redking.me.uk>2017-11-28 23:12:12 +0000
committerSimon Pilgrim <llvm-dev@redking.me.uk>2017-11-28 23:12:12 +0000
commita675071b7abd66d82926eb88b34783f334823fb7 (patch)
tree89d1654eb737fc59ad7379e0256dfa9daa002cee /llvm/test
parentf490c6efee54282a657bc96c8ca65e8623a56d80 (diff)
downloadbcm5719-llvm-a675071b7abd66d82926eb88b34783f334823fb7.tar.gz
bcm5719-llvm-a675071b7abd66d82926eb88b34783f334823fb7.zip
[X86] Add CLFLUSHOPT schedule tests
llvm-svn: 319250
Diffstat (limited to 'llvm/test')
-rw-r--r--llvm/test/CodeGen/X86/clflushopt-schedule.ll36
1 files changed, 36 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/X86/clflushopt-schedule.ll b/llvm/test/CodeGen/X86/clflushopt-schedule.ll
new file mode 100644
index 00000000000..57f9ee1b25e
--- /dev/null
+++ b/llvm/test/CodeGen/X86/clflushopt-schedule.ll
@@ -0,0 +1,36 @@
+; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
+; RUN: llc < %s -mtriple=x86_64-unknown-unknown -print-schedule -mcpu=x86-64 -mattr=+clflushopt | FileCheck %s --check-prefix=CHECK --check-prefix=GENERIC
+; RUN: llc < %s -mtriple=x86_64-unknown-unknown -print-schedule -mcpu=goldmont | FileCheck %s --check-prefix=CHECK --check-prefix=GLM
+; RUN: llc < %s -mtriple=x86_64-unknown-unknown -print-schedule -mcpu=skylake | FileCheck %s --check-prefix=CHECK --check-prefix=SKYLAKE
+; RUN: llc < %s -mtriple=x86_64-unknown-unknown -print-schedule -mcpu=skx | FileCheck %s --check-prefix=CHECK --check-prefix=SKX
+; RUN: llc < %s -mtriple=x86_64-unknown-unknown -print-schedule -mcpu=znver1 | FileCheck %s --check-prefix=CHECK --check-prefix=ZNVER1
+
+define void @clflushopt(i8* %p) nounwind {
+; GENERIC-LABEL: clflushopt:
+; GENERIC: # BB#0:
+; GENERIC-NEXT: clflushopt (%rdi) # sched: [5:1.00]
+; GENERIC-NEXT: retq # sched: [1:1.00]
+;
+; GLM-LABEL: clflushopt:
+; GLM: # BB#0:
+; GLM-NEXT: clflushopt (%rdi)
+; GLM-NEXT: retq # sched: [4:1.00]
+;
+; SKYLAKE-LABEL: clflushopt:
+; SKYLAKE: # BB#0:
+; SKYLAKE-NEXT: clflushopt (%rdi) # sched: [2:1.00]
+; SKYLAKE-NEXT: retq # sched: [7:1.00]
+;
+; SKX-LABEL: clflushopt:
+; SKX: # BB#0:
+; SKX-NEXT: clflushopt (%rdi) # sched: [2:1.00]
+; SKX-NEXT: retq # sched: [7:1.00]
+;
+; ZNVER1-LABEL: clflushopt:
+; ZNVER1: # BB#0:
+; ZNVER1-NEXT: clflushopt (%rdi)
+; ZNVER1-NEXT: retq # sched: [1:0.50]
+ tail call void @llvm.x86.clflushopt(i8* %p)
+ ret void
+}
+declare void @llvm.x86.clflushopt(i8*) nounwind
OpenPOWER on IntegriCloud