brintos

brintos / llvm-project-archived public Read only

0
0
Text · 6.0 KiB · 66b9d79 Raw
95 lines · c
1// RUN: not %clang_cc1 -triple powerpc64le-unknown-linux-gnu -target-feature -mma \2// RUN:   -target-cpu pwr10 %s -emit-llvm-only 2>&1 | \3// RUN:   FileCheck --check-prefixes=CHECK,ISA_FUTURE  %s4// RUN: not %clang_cc1 -triple powerpc64le-unknown-linux-gnu -target-feature -mma \5// RUN:   -target-cpu future %s -emit-llvm-only 2>&1 | \6// RUN:   FileCheck --check-prefixes=CHECK,ISA_FUTURE  %s7// RUN: not %clang_cc1 -triple powerpc64le-unknown-linux-gnu -target-feature \8// RUN:   -isa-future-instructions -target-cpu future %s -emit-llvm-only 2>&1 | \9// RUN:   FileCheck --check-prefix=ISA_FUTURE %s10 11//__attribute__((target("no-mma")))12__attribute__((target("no-mma")))13void test_mma(unsigned char *vdmrpp, unsigned char *vdmrp, unsigned char *vpp, vector unsigned char vc) {14  __dmr2048 vdmrpair = *((__dmr2048 *)vdmrpp);15  __dmr1024 vdmr = *((__dmr1024 *)vdmrp);16  __vector_pair vp = *((__vector_pair *)vpp);17  __builtin_mma_dmxvi8gerx4(&vdmr, vp, vc);18  __builtin_mma_pmdmxvi8gerx4(&vdmr, vp, vc, 0, 0, 0);19  __builtin_mma_dmxvi8gerx4pp(&vdmr, vp, vc);20  __builtin_mma_pmdmxvi8gerx4pp(&vdmr, vp, vc, 0, 0, 0);21  __builtin_mma_dmxvi8gerx4spp(&vdmr, vp, vc);22  __builtin_mma_pmdmxvi8gerx4spp(&vdmr, vp, vc, 0, 0, 0);23  __builtin_mma_dmsetdmrz(&vdmr);24  __builtin_mma_dmmr(&vdmr, (__dmr1024*)vpp);25  __builtin_mma_dmxor(&vdmr, (__dmr1024*)vpp);26  __builtin_mma_build_dmr(&vdmr, vc, vc, vc, vc, vc, vc, vc, vc);27  __builtin_mma_disassemble_dmr(vdmrp, &vdmr);28  __builtin_mma_dmsha2hash(&vdmr, &vdmr, 0);29  __builtin_mma_dmsha3hash(&vdmrpair, 0);30  __builtin_mma_dmxxshapad(&vdmr, vc, 0, 0, 0);31 32// CHECK: error: '__builtin_mma_dmxvi8gerx4' needs target feature mma,paired-vector-memops33// CHECK: error: '__builtin_mma_pmdmxvi8gerx4' needs target feature mma,paired-vector-memops34// CHECK: error: '__builtin_mma_dmxvi8gerx4pp' needs target feature mma,paired-vector-memops35// CHECK: error: '__builtin_mma_pmdmxvi8gerx4pp' needs target feature mma,paired-vector-memops36// CHECK: error: '__builtin_mma_dmxvi8gerx4spp' needs target feature mma,paired-vector-memops37// CHECK: error: '__builtin_mma_pmdmxvi8gerx4spp' needs target feature mma,paired-vector-memops38// ISA_FUTURE: error: '__builtin_mma_dmsetdmrz' needs target feature mma,isa-future-instructions39// ISA_FUTURE: error: '__builtin_mma_dmmr' needs target feature mma,isa-future-instructions40// ISA_FUTURE: error: '__builtin_mma_dmxor' needs target feature mma,isa-future-instructions41// ISA_FUTURE: error: '__builtin_mma_build_dmr' needs target feature mma,isa-future-instructions42// ISA_FUTURE: error: '__builtin_mma_disassemble_dmr' needs target feature mma,isa-future-instructions43// CHECK: error: '__builtin_mma_dmsha2hash' needs target feature mma,isa-future-instructions44// CHECK: error: '__builtin_mma_dmsha3hash' needs target feature mma,isa-future-instructions45// CHECK: error: '__builtin_mma_dmxxshapad' needs target feature mma,isa-future-instructions46 47  // DMF VSX Vector bfloat16 GER 2x builtins.48 49  __builtin_mma_dmxvbf16gerx2(&vdmr, vp, vc);50  __builtin_mma_dmxvbf16gerx2nn(&vdmr, vp, vc);51  __builtin_mma_dmxvbf16gerx2np(&vdmr, vp, vc);52  __builtin_mma_dmxvbf16gerx2pn(&vdmr, vp, vc);53  __builtin_mma_dmxvbf16gerx2pp(&vdmr, vp, vc);54  __builtin_mma_pmdmxvbf16gerx2(&vdmr, vp, vc, 0, 0, 0);55  __builtin_mma_pmdmxvbf16gerx2nn(&vdmr, vp, vc, 0, 0, 0);56  __builtin_mma_pmdmxvbf16gerx2np(&vdmr, vp, vc, 0, 0, 0);57  __builtin_mma_pmdmxvbf16gerx2pn(&vdmr, vp, vc, 0, 0, 0);58  __builtin_mma_pmdmxvbf16gerx2pp(&vdmr, vp, vc, 0, 0, 0);59 60// ISA_FUTURE: error: '__builtin_mma_dmxvbf16gerx2' needs target feature mma,isa-future-instructions61// ISA_FUTURE: error: '__builtin_mma_dmxvbf16gerx2nn' needs target feature mma,isa-future-instructions62// ISA_FUTURE: error: '__builtin_mma_dmxvbf16gerx2np' needs target feature mma,isa-future-instructions63// ISA_FUTURE: error: '__builtin_mma_dmxvbf16gerx2pn' needs target feature mma,isa-future-instructions64// ISA_FUTURE: error: '__builtin_mma_dmxvbf16gerx2pp' needs target feature mma,isa-future-instructions65// ISA_FUTURE: error: '__builtin_mma_pmdmxvbf16gerx2' needs target feature mma,isa-future-instructions66// ISA_FUTURE: error: '__builtin_mma_pmdmxvbf16gerx2nn' needs target feature mma,isa-future-instructions67// ISA_FUTURE: error: '__builtin_mma_pmdmxvbf16gerx2np' needs target feature mma,isa-future-instructions68// ISA_FUTURE: error: '__builtin_mma_pmdmxvbf16gerx2pn' needs target feature mma,isa-future-instructions69// ISA_FUTURE: error: '__builtin_mma_pmdmxvbf16gerx2pp' needs target feature mma,isa-future-instructions70 71  // DMF VSX Vector 16-bitFloating-point GER 2x builtins.72 73  __builtin_mma_dmxvf16gerx2(&vdmr, vp, vc);74  __builtin_mma_dmxvf16gerx2nn(&vdmr, vp, vc);75  __builtin_mma_dmxvf16gerx2np(&vdmr, vp, vc);76  __builtin_mma_dmxvf16gerx2pn(&vdmr, vp, vc);77  __builtin_mma_dmxvf16gerx2pp(&vdmr, vp, vc);78  __builtin_mma_pmdmxvf16gerx2(&vdmr, vp, vc, 0, 0, 0);79  __builtin_mma_pmdmxvf16gerx2nn(&vdmr, vp, vc, 0, 0, 0);80  __builtin_mma_pmdmxvf16gerx2np(&vdmr, vp, vc, 0, 0, 0);81  __builtin_mma_pmdmxvf16gerx2pn(&vdmr, vp, vc, 0, 0, 0);82  __builtin_mma_pmdmxvf16gerx2pp(&vdmr, vp, vc, 0, 0, 0);83 84// ISA_FUTURE: error: '__builtin_mma_dmxvf16gerx2' needs target feature mma,isa-future-instructions85// ISA_FUTURE: error: '__builtin_mma_dmxvf16gerx2nn' needs target feature mma,isa-future-instructions86// ISA_FUTURE: error: '__builtin_mma_dmxvf16gerx2np' needs target feature mma,isa-future-instructions87// ISA_FUTURE: error: '__builtin_mma_dmxvf16gerx2pn' needs target feature mma,isa-future-instructions88// ISA_FUTURE: error: '__builtin_mma_dmxvf16gerx2pp' needs target feature mma,isa-future-instructions89// ISA_FUTURE: error: '__builtin_mma_pmdmxvf16gerx2' needs target feature mma,isa-future-instructions90// ISA_FUTURE: error: '__builtin_mma_pmdmxvf16gerx2nn' needs target feature mma,isa-future-instructions91// ISA_FUTURE: error: '__builtin_mma_pmdmxvf16gerx2np' needs target feature mma,isa-future-instructions92// ISA_FUTURE: error: '__builtin_mma_pmdmxvf16gerx2pn' needs target feature mma,isa-future-instructions93// ISA_FUTURE: error: '__builtin_mma_pmdmxvf16gerx2pp' needs target feature mma,isa-future-instructions94}95