1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py 2; RUN: llc < %s -mtriple=i386-apple-darwin -mattr=+gfni,+avx -show-mc-encoding | FileCheck %s 3 4declare <16 x i8> @llvm.x86.vgf2p8affineinvqb.128(<16 x i8>, <16 x i8>, i8) 5define <16 x i8> @test_vgf2p8affineinvqb_128(<16 x i8> %src1, <16 x i8> %src2) { 6; CHECK-LABEL: test_vgf2p8affineinvqb_128: 7; CHECK: ## %bb.0: 8; CHECK-NEXT: vgf2p8affineinvqb $11, %xmm1, %xmm0, %xmm0 ## encoding: [0xc4,0xe3,0xf9,0xcf,0xc1,0x0b] 9; CHECK-NEXT: retl ## encoding: [0xc3] 10 %1 = call <16 x i8> @llvm.x86.vgf2p8affineinvqb.128(<16 x i8> %src1, <16 x i8> %src2, i8 11) 11 ret <16 x i8> %1 12} 13 14declare <32 x i8> @llvm.x86.vgf2p8affineinvqb.256(<32 x i8>, <32 x i8>, i8) 15define <32 x i8> @test_vgf2p8affineinvqb_256(<32 x i8> %src1, <32 x i8> %src2) { 16; CHECK-LABEL: test_vgf2p8affineinvqb_256: 17; CHECK: ## %bb.0: 18; CHECK-NEXT: vgf2p8affineinvqb $11, %ymm1, %ymm0, %ymm0 ## encoding: [0xc4,0xe3,0xfd,0xcf,0xc1,0x0b] 19; CHECK-NEXT: retl ## encoding: [0xc3] 20 %1 = call <32 x i8> @llvm.x86.vgf2p8affineinvqb.256(<32 x i8> %src1, <32 x i8> %src2, i8 11) 21 ret <32 x i8> %1 22} 23 24declare <16 x i8> @llvm.x86.vgf2p8affineqb.128(<16 x i8>, <16 x i8>, i8) 25define <16 x i8> @test_vgf2p8affineqb(<16 x i8> %src1, <16 x i8> %src2) { 26; CHECK-LABEL: test_vgf2p8affineqb: 27; CHECK: ## %bb.0: 28; CHECK-NEXT: vgf2p8affineqb $11, %xmm1, %xmm0, %xmm0 ## encoding: [0xc4,0xe3,0xf9,0xce,0xc1,0x0b] 29; CHECK-NEXT: retl ## encoding: [0xc3] 30 %1 = call <16 x i8> @llvm.x86.vgf2p8affineqb.128(<16 x i8> %src1, <16 x i8> %src2, i8 11) 31 ret <16 x i8> %1 32} 33 34declare <32 x i8> @llvm.x86.vgf2p8affineqb.256(<32 x i8>, <32 x i8>, i8) 35define <32 x i8> @test_vgf2p8affineqb_256(<32 x i8> %src1, <32 x i8> %src2) { 36; CHECK-LABEL: test_vgf2p8affineqb_256: 37; CHECK: ## %bb.0: 38; CHECK-NEXT: vgf2p8affineqb $11, %ymm1, %ymm0, %ymm0 ## encoding: [0xc4,0xe3,0xfd,0xce,0xc1,0x0b] 39; CHECK-NEXT: retl ## encoding: [0xc3] 40 %1 = call <32 x i8> @llvm.x86.vgf2p8affineqb.256(<32 x i8> %src1, <32 x i8> %src2, i8 11) 41 ret <32 x i8> %1 42} 43 44declare <16 x i8> @llvm.x86.vgf2p8mulb.128(<16 x i8>, <16 x i8>) 45define <16 x i8> @test_vgf2p8mulb_128(<16 x i8> %src1, <16 x i8> %src2) { 46; CHECK-LABEL: test_vgf2p8mulb_128: 47; CHECK: ## %bb.0: 48; CHECK-NEXT: vgf2p8mulb %xmm1, %xmm0, %xmm0 ## encoding: [0xc4,0xe2,0x79,0xcf,0xc1] 49; CHECK-NEXT: retl ## encoding: [0xc3] 50 %1 = call <16 x i8> @llvm.x86.vgf2p8mulb.128(<16 x i8> %src1, <16 x i8> %src2) 51 ret <16 x i8> %1 52} 53 54declare <32 x i8> @llvm.x86.vgf2p8mulb.256(<32 x i8>, <32 x i8>) 55define <32 x i8> @test_vgf2p8mulb_256(<32 x i8> %src1, <32 x i8> %src2) { 56; CHECK-LABEL: test_vgf2p8mulb_256: 57; CHECK: ## %bb.0: 58; CHECK-NEXT: vgf2p8mulb %ymm1, %ymm0, %ymm0 ## encoding: [0xc4,0xe2,0x7d,0xcf,0xc1] 59; CHECK-NEXT: retl ## encoding: [0xc3] 60 %1 = call <32 x i8> @llvm.x86.vgf2p8mulb.256(<32 x i8> %src1, <32 x i8> %src2) 61 ret <32 x i8> %1 62} 63 64