blob: 6613e380eefa3d5af837d723fa16c2029903c526 [file] [edit]
# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
# RUN: llc -mtriple=x86_64-- -run-pass x86-fixup-inst-tuning -mcpu=znver1 -o - %s | FileCheck %s --check-prefix=ZNVER
# RUN: llc -mtriple=x86_64-- -run-pass x86-fixup-inst-tuning -mcpu=znver3 -o - %s | FileCheck %s --check-prefix=ZNVER
# RUN: llc -mtriple=x86_64-- -run-pass x86-fixup-inst-tuning -mcpu=haswell -o - %s | FileCheck %s --check-prefix=INTEL
# RUN: llc -mtriple=x86_64-- -run-pass x86-fixup-inst-tuning -mcpu=alderlake -o - %s | FileCheck %s --check-prefix=INTEL
--- |
define void @test_vpermq_0x44() { ret void }
define void @test_vpermpd_0x44() { ret void }
define void @test_vpermq_other_imm() { ret void }
...
---
name: test_vpermq_0x44
body: |
bb.0:
liveins: $ymm0
; ZNVER-LABEL: name: test_vpermq_0x44
; ZNVER: liveins: $ymm0
; ZNVER-NEXT: {{ $}}
; ZNVER-NEXT: $ymm0 = VINSERTI128rri $ymm0, $xmm0, 1
; ZNVER-NEXT: RET64 $ymm0
;
; INTEL-LABEL: name: test_vpermq_0x44
; INTEL: liveins: $ymm0
; INTEL-NEXT: {{ $}}
; INTEL-NEXT: $ymm0 = VPERMQYri $ymm0, 68
; INTEL-NEXT: RET64 $ymm0
$ymm0 = VPERMQYri $ymm0, 68
RET64 $ymm0
...
---
name: test_vpermpd_0x44
body: |
bb.0:
liveins: $ymm0
; ZNVER-LABEL: name: test_vpermpd_0x44
; ZNVER: liveins: $ymm0
; ZNVER-NEXT: {{ $}}
; ZNVER-NEXT: $ymm0 = VINSERTF128rri $ymm0, $xmm0, 1
; ZNVER-NEXT: RET64 $ymm0
;
; INTEL-LABEL: name: test_vpermpd_0x44
; INTEL: liveins: $ymm0
; INTEL-NEXT: {{ $}}
; INTEL-NEXT: $ymm0 = VPERMPDYri $ymm0, 68
; INTEL-NEXT: RET64 $ymm0
$ymm0 = VPERMPDYri $ymm0, 68
RET64 $ymm0
...
---
name: test_vpermq_other_imm
body: |
bb.0:
liveins: $ymm0, $ymm1
; ZNVER-LABEL: name: test_vpermq_other_imm
; ZNVER: liveins: $ymm0, $ymm1
; ZNVER-NEXT: {{ $}}
; ZNVER-NEXT: $ymm0 = VPERMQYri $ymm0, 228
; ZNVER-NEXT: $ymm1 = VPERMQYri $ymm1, 0
; ZNVER-NEXT: RET64 $ymm0, $ymm1
;
; INTEL-LABEL: name: test_vpermq_other_imm
; INTEL: liveins: $ymm0, $ymm1
; INTEL-NEXT: {{ $}}
; INTEL-NEXT: $ymm0 = VPERMQYri $ymm0, 228
; INTEL-NEXT: $ymm1 = VPERMQYri $ymm1, 0
; INTEL-NEXT: RET64 $ymm0, $ymm1
$ymm0 = VPERMQYri $ymm0, 228
$ymm1 = VPERMQYri $ymm1, 0
RET64 $ymm0, $ymm1
...