brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.6 KiB · ad37e79 Raw
54 lines · plain
1; RUN: not llvm-as %s -o /dev/null 2>&1 | FileCheck %s2; Check handling of bswap with unsupported sizes.3 4declare i8 @llvm.bswap.i8(i8)5declare <2 x i8> @llvm.bswap.v2i8(<2 x i8>)6 7declare i12 @llvm.bswap.i12(i12)8declare <2 x i12> @llvm.bswap.v2i12(<2 x i12>)9 10declare i18 @llvm.bswap.i18(i18)11declare <2 x i18> @llvm.bswap.v2i18(<2 x i18>)12 13define i8 @bswap_i8(i8 %arg) {14; CHECK: bswap must be an even number of bytes15; CHECK-NEXT: %res = call i8 @llvm.bswap.i8(i8 %arg)16  %res = call i8 @llvm.bswap.i8(i8 %arg)17  ret i8 %res18}19 20define <2 x i8> @bswap_v2i8(<2 x i8> %arg) {21; CHECK: bswap must be an even number of bytes22; CHECK-NEXT: %res = call <2 x i8> @llvm.bswap.v2i8(<2 x i8> %arg)23  %res = call <2 x i8> @llvm.bswap.v2i8(<2 x i8> %arg)24  ret <2 x i8> %res25}26 27define i12 @bswap_i12(i12 %arg) {28; CHECK: bswap must be an even number of bytes29; CHECK-NEXT: %res = call i12 @llvm.bswap.i12(i12 %arg)30  %res = call i12 @llvm.bswap.i12(i12 %arg)31  ret i12 %res32}33 34define <2 x i12> @bswap_v2i12(<2 x i12> %arg) {35; CHECK: bswap must be an even number of bytes36; CHECK-NEXT: %res = call <2 x i12> @llvm.bswap.v2i12(<2 x i12> %arg)37  %res = call <2 x i12> @llvm.bswap.v2i12(<2 x i12> %arg)38  ret <2 x i12> %res39}40 41define i18 @bswap_i18(i18 %arg) {42; CHECK: bswap must be an even number of bytes43; CHECK-NEXT: %res = call i18 @llvm.bswap.i18(i18 %arg)44  %res = call i18 @llvm.bswap.i18(i18 %arg)45  ret i18 %res46}47 48define <2 x i18> @bswap_v2i18(<2 x i18> %arg) {49; CHECK: bswap must be an even number of bytes50; CHECK-NEXT: %res = call <2 x i18> @llvm.bswap.v2i18(<2 x i18> %arg)51  %res = call <2 x i18> @llvm.bswap.v2i18(<2 x i18> %arg)52  ret <2 x i18> %res53}54