Simon Pilgrim | a675071 | 2017-11-28 23:12:12 +0000 | [diff] [blame] | 1 | ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py |
| 2 | ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -print-schedule -mcpu=x86-64 -mattr=+clflushopt | FileCheck %s --check-prefix=CHECK --check-prefix=GENERIC |
| 3 | ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -print-schedule -mcpu=goldmont | FileCheck %s --check-prefix=CHECK --check-prefix=GLM |
| 4 | ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -print-schedule -mcpu=skylake | FileCheck %s --check-prefix=CHECK --check-prefix=SKYLAKE |
| 5 | ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -print-schedule -mcpu=skx | FileCheck %s --check-prefix=CHECK --check-prefix=SKX |
| 6 | ; RUN: llc < %s -mtriple=x86_64-unknown-unknown -print-schedule -mcpu=znver1 | FileCheck %s --check-prefix=CHECK --check-prefix=ZNVER1 |
| 7 | |
| 8 | define void @clflushopt(i8* %p) nounwind { |
| 9 | ; GENERIC-LABEL: clflushopt: |
Francis Visoiu Mistrih | 25528d6 | 2017-12-04 17:18:51 +0000 | [diff] [blame] | 10 | ; GENERIC: # %bb.0: |
Simon Pilgrim | a675071 | 2017-11-28 23:12:12 +0000 | [diff] [blame] | 11 | ; GENERIC-NEXT: clflushopt (%rdi) # sched: [5:1.00] |
| 12 | ; GENERIC-NEXT: retq # sched: [1:1.00] |
| 13 | ; |
| 14 | ; GLM-LABEL: clflushopt: |
Francis Visoiu Mistrih | 25528d6 | 2017-12-04 17:18:51 +0000 | [diff] [blame] | 15 | ; GLM: # %bb.0: |
Simon Pilgrim | b9aa93c | 2017-11-28 23:25:42 +0000 | [diff] [blame] | 16 | ; GLM-NEXT: clflushopt (%rdi) # sched: [3:1.00] |
Simon Pilgrim | a675071 | 2017-11-28 23:12:12 +0000 | [diff] [blame] | 17 | ; GLM-NEXT: retq # sched: [4:1.00] |
| 18 | ; |
| 19 | ; SKYLAKE-LABEL: clflushopt: |
Francis Visoiu Mistrih | 25528d6 | 2017-12-04 17:18:51 +0000 | [diff] [blame] | 20 | ; SKYLAKE: # %bb.0: |
Simon Pilgrim | a675071 | 2017-11-28 23:12:12 +0000 | [diff] [blame] | 21 | ; SKYLAKE-NEXT: clflushopt (%rdi) # sched: [2:1.00] |
| 22 | ; SKYLAKE-NEXT: retq # sched: [7:1.00] |
| 23 | ; |
| 24 | ; SKX-LABEL: clflushopt: |
Francis Visoiu Mistrih | 25528d6 | 2017-12-04 17:18:51 +0000 | [diff] [blame] | 25 | ; SKX: # %bb.0: |
Simon Pilgrim | a675071 | 2017-11-28 23:12:12 +0000 | [diff] [blame] | 26 | ; SKX-NEXT: clflushopt (%rdi) # sched: [2:1.00] |
| 27 | ; SKX-NEXT: retq # sched: [7:1.00] |
| 28 | ; |
| 29 | ; ZNVER1-LABEL: clflushopt: |
Francis Visoiu Mistrih | 25528d6 | 2017-12-04 17:18:51 +0000 | [diff] [blame] | 30 | ; ZNVER1: # %bb.0: |
Simon Pilgrim | b9aa93c | 2017-11-28 23:25:42 +0000 | [diff] [blame] | 31 | ; ZNVER1-NEXT: clflushopt (%rdi) # sched: [8:0.50] |
Simon Pilgrim | a675071 | 2017-11-28 23:12:12 +0000 | [diff] [blame] | 32 | ; ZNVER1-NEXT: retq # sched: [1:0.50] |
| 33 | tail call void @llvm.x86.clflushopt(i8* %p) |
| 34 | ret void |
| 35 | } |
| 36 | declare void @llvm.x86.clflushopt(i8*) nounwind |