| // Code generated by 'simdgen -o godefs -goroot $GOROOT -arch sve -arm64Path $ARM64_ISA_PATH go_sve.yaml types.yaml categories.yaml'; DO NOT EDIT. |
| |
| package main |
| |
| func simdARM64SVEOps(z11, z21, zkv, z2kk, z2kv, z2kvPred, z3kvPred regInfo) []opData { |
| return []opData{ |
| {name: "ZABSB", argLength: 2, reg: zkv, asm: "ZABS", typ: "Vec256"}, |
| {name: "ZABSD", argLength: 2, reg: zkv, asm: "ZABS", typ: "Vec256"}, |
| {name: "ZABSH", argLength: 2, reg: zkv, asm: "ZABS", typ: "Vec256"}, |
| {name: "ZABSMergingB", argLength: 3, reg: z2kvPred, asm: "ZABS", typ: "Vec256", resultInArg0: true}, |
| {name: "ZABSMergingD", argLength: 3, reg: z2kvPred, asm: "ZABS", typ: "Vec256", resultInArg0: true}, |
| {name: "ZABSMergingH", argLength: 3, reg: z2kvPred, asm: "ZABS", typ: "Vec256", resultInArg0: true}, |
| {name: "ZABSMergingS", argLength: 3, reg: z2kvPred, asm: "ZABS", typ: "Vec256", resultInArg0: true}, |
| {name: "ZABSS", argLength: 2, reg: zkv, asm: "ZABS", typ: "Vec256"}, |
| {name: "ZADDB", argLength: 2, reg: z21, asm: "ZADD", commutative: true, typ: "Vec256"}, |
| {name: "ZADDD", argLength: 2, reg: z21, asm: "ZADD", commutative: true, typ: "Vec256"}, |
| {name: "ZADDH", argLength: 2, reg: z21, asm: "ZADD", commutative: true, typ: "Vec256"}, |
| {name: "ZADDMergingB", argLength: 3, reg: z2kvPred, asm: "ZADD", commutative: true, typ: "Vec256"}, |
| {name: "ZADDMergingD", argLength: 3, reg: z2kvPred, asm: "ZADD", commutative: true, typ: "Vec256"}, |
| {name: "ZADDMergingH", argLength: 3, reg: z2kvPred, asm: "ZADD", commutative: true, typ: "Vec256"}, |
| {name: "ZADDMergingPrefixedB", argLength: 4, reg: z3kvPred, asm: "ZADD", typ: "Vec256", resultInArg0: true}, |
| {name: "ZADDMergingPrefixedD", argLength: 4, reg: z3kvPred, asm: "ZADD", typ: "Vec256", resultInArg0: true}, |
| {name: "ZADDMergingPrefixedH", argLength: 4, reg: z3kvPred, asm: "ZADD", typ: "Vec256", resultInArg0: true}, |
| {name: "ZADDMergingPrefixedS", argLength: 4, reg: z3kvPred, asm: "ZADD", typ: "Vec256", resultInArg0: true}, |
| {name: "ZADDMergingS", argLength: 3, reg: z2kvPred, asm: "ZADD", commutative: true, typ: "Vec256"}, |
| {name: "ZADDS", argLength: 2, reg: z21, asm: "ZADD", commutative: true, typ: "Vec256"}, |
| {name: "ZANDD", argLength: 2, reg: z21, asm: "ZAND", commutative: true, typ: "Vec256"}, |
| {name: "ZANDMergingB", argLength: 3, reg: z2kvPred, asm: "ZAND", commutative: true, typ: "Vec256"}, |
| {name: "ZANDMergingD", argLength: 3, reg: z2kvPred, asm: "ZAND", commutative: true, typ: "Vec256"}, |
| {name: "ZANDMergingH", argLength: 3, reg: z2kvPred, asm: "ZAND", commutative: true, typ: "Vec256"}, |
| {name: "ZANDMergingPrefixedB", argLength: 4, reg: z3kvPred, asm: "ZAND", typ: "Vec256", resultInArg0: true}, |
| {name: "ZANDMergingPrefixedD", argLength: 4, reg: z3kvPred, asm: "ZAND", typ: "Vec256", resultInArg0: true}, |
| {name: "ZANDMergingPrefixedH", argLength: 4, reg: z3kvPred, asm: "ZAND", typ: "Vec256", resultInArg0: true}, |
| {name: "ZANDMergingPrefixedS", argLength: 4, reg: z3kvPred, asm: "ZAND", typ: "Vec256", resultInArg0: true}, |
| {name: "ZANDMergingS", argLength: 3, reg: z2kvPred, asm: "ZAND", commutative: true, typ: "Vec256"}, |
| {name: "ZCMPEQB", argLength: 3, reg: z2kk, asm: "ZCMPEQ", commutative: true, typ: "Mask"}, |
| {name: "ZCMPEQD", argLength: 3, reg: z2kk, asm: "ZCMPEQ", commutative: true, typ: "Mask"}, |
| {name: "ZCMPEQH", argLength: 3, reg: z2kk, asm: "ZCMPEQ", commutative: true, typ: "Mask"}, |
| {name: "ZCMPEQS", argLength: 3, reg: z2kk, asm: "ZCMPEQ", commutative: true, typ: "Mask"}, |
| {name: "ZCMPGEB", argLength: 3, reg: z2kk, asm: "ZCMPGE", typ: "Mask"}, |
| {name: "ZCMPGED", argLength: 3, reg: z2kk, asm: "ZCMPGE", typ: "Mask"}, |
| {name: "ZCMPGEH", argLength: 3, reg: z2kk, asm: "ZCMPGE", typ: "Mask"}, |
| {name: "ZCMPGES", argLength: 3, reg: z2kk, asm: "ZCMPGE", typ: "Mask"}, |
| {name: "ZCMPGTB", argLength: 3, reg: z2kk, asm: "ZCMPGT", typ: "Mask"}, |
| {name: "ZCMPGTD", argLength: 3, reg: z2kk, asm: "ZCMPGT", typ: "Mask"}, |
| {name: "ZCMPGTH", argLength: 3, reg: z2kk, asm: "ZCMPGT", typ: "Mask"}, |
| {name: "ZCMPGTS", argLength: 3, reg: z2kk, asm: "ZCMPGT", typ: "Mask"}, |
| {name: "ZCMPHIB", argLength: 3, reg: z2kk, asm: "ZCMPHI", typ: "Mask"}, |
| {name: "ZCMPHID", argLength: 3, reg: z2kk, asm: "ZCMPHI", typ: "Mask"}, |
| {name: "ZCMPHIH", argLength: 3, reg: z2kk, asm: "ZCMPHI", typ: "Mask"}, |
| {name: "ZCMPHIS", argLength: 3, reg: z2kk, asm: "ZCMPHI", typ: "Mask"}, |
| {name: "ZCMPHSB", argLength: 3, reg: z2kk, asm: "ZCMPHS", typ: "Mask"}, |
| {name: "ZCMPHSD", argLength: 3, reg: z2kk, asm: "ZCMPHS", typ: "Mask"}, |
| {name: "ZCMPHSH", argLength: 3, reg: z2kk, asm: "ZCMPHS", typ: "Mask"}, |
| {name: "ZCMPHSS", argLength: 3, reg: z2kk, asm: "ZCMPHS", typ: "Mask"}, |
| {name: "ZCMPNEB", argLength: 3, reg: z2kk, asm: "ZCMPNE", commutative: true, typ: "Mask"}, |
| {name: "ZCMPNED", argLength: 3, reg: z2kk, asm: "ZCMPNE", commutative: true, typ: "Mask"}, |
| {name: "ZCMPNEH", argLength: 3, reg: z2kk, asm: "ZCMPNE", commutative: true, typ: "Mask"}, |
| {name: "ZCMPNES", argLength: 3, reg: z2kk, asm: "ZCMPNE", commutative: true, typ: "Mask"}, |
| {name: "ZEORD", argLength: 2, reg: z21, asm: "ZEOR", commutative: true, typ: "Vec256"}, |
| {name: "ZEORMergingB", argLength: 3, reg: z2kvPred, asm: "ZEOR", commutative: true, typ: "Vec256"}, |
| {name: "ZEORMergingD", argLength: 3, reg: z2kvPred, asm: "ZEOR", commutative: true, typ: "Vec256"}, |
| {name: "ZEORMergingH", argLength: 3, reg: z2kvPred, asm: "ZEOR", commutative: true, typ: "Vec256"}, |
| {name: "ZEORMergingPrefixedB", argLength: 4, reg: z3kvPred, asm: "ZEOR", typ: "Vec256", resultInArg0: true}, |
| {name: "ZEORMergingPrefixedD", argLength: 4, reg: z3kvPred, asm: "ZEOR", typ: "Vec256", resultInArg0: true}, |
| {name: "ZEORMergingPrefixedH", argLength: 4, reg: z3kvPred, asm: "ZEOR", typ: "Vec256", resultInArg0: true}, |
| {name: "ZEORMergingPrefixedS", argLength: 4, reg: z3kvPred, asm: "ZEOR", typ: "Vec256", resultInArg0: true}, |
| {name: "ZEORMergingS", argLength: 3, reg: z2kvPred, asm: "ZEOR", commutative: true, typ: "Vec256"}, |
| {name: "ZFABSD", argLength: 2, reg: zkv, asm: "ZFABS", typ: "Vec256"}, |
| {name: "ZFABSMergingD", argLength: 3, reg: z2kvPred, asm: "ZFABS", typ: "Vec256", resultInArg0: true}, |
| {name: "ZFABSMergingS", argLength: 3, reg: z2kvPred, asm: "ZFABS", typ: "Vec256", resultInArg0: true}, |
| {name: "ZFABSS", argLength: 2, reg: zkv, asm: "ZFABS", typ: "Vec256"}, |
| {name: "ZFADDD", argLength: 2, reg: z21, asm: "ZFADD", commutative: true, typ: "Vec256"}, |
| {name: "ZFADDMergingD", argLength: 3, reg: z2kvPred, asm: "ZFADD", commutative: true, typ: "Vec256"}, |
| {name: "ZFADDMergingPrefixedD", argLength: 4, reg: z3kvPred, asm: "ZFADD", typ: "Vec256", resultInArg0: true}, |
| {name: "ZFADDMergingPrefixedS", argLength: 4, reg: z3kvPred, asm: "ZFADD", typ: "Vec256", resultInArg0: true}, |
| {name: "ZFADDMergingS", argLength: 3, reg: z2kvPred, asm: "ZFADD", commutative: true, typ: "Vec256"}, |
| {name: "ZFADDS", argLength: 2, reg: z21, asm: "ZFADD", commutative: true, typ: "Vec256"}, |
| {name: "ZFCMEQD", argLength: 3, reg: z2kk, asm: "ZFCMEQ", commutative: true, typ: "Mask"}, |
| {name: "ZFCMEQS", argLength: 3, reg: z2kk, asm: "ZFCMEQ", commutative: true, typ: "Mask"}, |
| {name: "ZFCMGED", argLength: 3, reg: z2kk, asm: "ZFCMGE", typ: "Mask"}, |
| {name: "ZFCMGES", argLength: 3, reg: z2kk, asm: "ZFCMGE", typ: "Mask"}, |
| {name: "ZFCMGTD", argLength: 3, reg: z2kk, asm: "ZFCMGT", typ: "Mask"}, |
| {name: "ZFCMGTS", argLength: 3, reg: z2kk, asm: "ZFCMGT", typ: "Mask"}, |
| {name: "ZFCMNED", argLength: 3, reg: z2kk, asm: "ZFCMNE", commutative: true, typ: "Mask"}, |
| {name: "ZFCMNES", argLength: 3, reg: z2kk, asm: "ZFCMNE", commutative: true, typ: "Mask"}, |
| {name: "ZFNEGD", argLength: 2, reg: zkv, asm: "ZFNEG", typ: "Vec256"}, |
| {name: "ZFNEGMergingD", argLength: 3, reg: z2kvPred, asm: "ZFNEG", typ: "Vec256", resultInArg0: true}, |
| {name: "ZFNEGMergingS", argLength: 3, reg: z2kvPred, asm: "ZFNEG", typ: "Vec256", resultInArg0: true}, |
| {name: "ZFNEGS", argLength: 2, reg: zkv, asm: "ZFNEG", typ: "Vec256"}, |
| {name: "ZFRINTMD", argLength: 2, reg: zkv, asm: "ZFRINTM", typ: "Vec256"}, |
| {name: "ZFRINTMS", argLength: 2, reg: zkv, asm: "ZFRINTM", typ: "Vec256"}, |
| {name: "ZFRINTND", argLength: 2, reg: zkv, asm: "ZFRINTN", typ: "Vec256"}, |
| {name: "ZFRINTNS", argLength: 2, reg: zkv, asm: "ZFRINTN", typ: "Vec256"}, |
| {name: "ZFRINTPD", argLength: 2, reg: zkv, asm: "ZFRINTP", typ: "Vec256"}, |
| {name: "ZFRINTPS", argLength: 2, reg: zkv, asm: "ZFRINTP", typ: "Vec256"}, |
| {name: "ZFRINTZD", argLength: 2, reg: zkv, asm: "ZFRINTZ", typ: "Vec256"}, |
| {name: "ZFRINTZS", argLength: 2, reg: zkv, asm: "ZFRINTZ", typ: "Vec256"}, |
| {name: "ZFSQRTD", argLength: 2, reg: zkv, asm: "ZFSQRT", typ: "Vec256"}, |
| {name: "ZFSQRTMergingD", argLength: 3, reg: z2kvPred, asm: "ZFSQRT", typ: "Vec256", resultInArg0: true}, |
| {name: "ZFSQRTMergingS", argLength: 3, reg: z2kvPred, asm: "ZFSQRT", typ: "Vec256", resultInArg0: true}, |
| {name: "ZFSQRTS", argLength: 2, reg: zkv, asm: "ZFSQRT", typ: "Vec256"}, |
| {name: "ZFSUBD", argLength: 2, reg: z21, asm: "ZFSUB", typ: "Vec256"}, |
| {name: "ZFSUBMergingD", argLength: 3, reg: z2kvPred, asm: "ZFSUB", typ: "Vec256", resultInArg0: true}, |
| {name: "ZFSUBMergingS", argLength: 3, reg: z2kvPred, asm: "ZFSUB", typ: "Vec256", resultInArg0: true}, |
| {name: "ZFSUBS", argLength: 2, reg: z21, asm: "ZFSUB", typ: "Vec256"}, |
| {name: "ZNEGB", argLength: 2, reg: zkv, asm: "ZNEG", typ: "Vec256"}, |
| {name: "ZNEGD", argLength: 2, reg: zkv, asm: "ZNEG", typ: "Vec256"}, |
| {name: "ZNEGH", argLength: 2, reg: zkv, asm: "ZNEG", typ: "Vec256"}, |
| {name: "ZNEGMergingB", argLength: 3, reg: z2kvPred, asm: "ZNEG", typ: "Vec256", resultInArg0: true}, |
| {name: "ZNEGMergingD", argLength: 3, reg: z2kvPred, asm: "ZNEG", typ: "Vec256", resultInArg0: true}, |
| {name: "ZNEGMergingH", argLength: 3, reg: z2kvPred, asm: "ZNEG", typ: "Vec256", resultInArg0: true}, |
| {name: "ZNEGMergingS", argLength: 3, reg: z2kvPred, asm: "ZNEG", typ: "Vec256", resultInArg0: true}, |
| {name: "ZNEGS", argLength: 2, reg: zkv, asm: "ZNEG", typ: "Vec256"}, |
| {name: "ZORRD", argLength: 2, reg: z21, asm: "ZORR", commutative: true, typ: "Vec256"}, |
| {name: "ZORRMergingB", argLength: 3, reg: z2kvPred, asm: "ZORR", commutative: true, typ: "Vec256"}, |
| {name: "ZORRMergingD", argLength: 3, reg: z2kvPred, asm: "ZORR", commutative: true, typ: "Vec256"}, |
| {name: "ZORRMergingH", argLength: 3, reg: z2kvPred, asm: "ZORR", commutative: true, typ: "Vec256"}, |
| {name: "ZORRMergingPrefixedB", argLength: 4, reg: z3kvPred, asm: "ZORR", typ: "Vec256", resultInArg0: true}, |
| {name: "ZORRMergingPrefixedD", argLength: 4, reg: z3kvPred, asm: "ZORR", typ: "Vec256", resultInArg0: true}, |
| {name: "ZORRMergingPrefixedH", argLength: 4, reg: z3kvPred, asm: "ZORR", typ: "Vec256", resultInArg0: true}, |
| {name: "ZORRMergingPrefixedS", argLength: 4, reg: z3kvPred, asm: "ZORR", typ: "Vec256", resultInArg0: true}, |
| {name: "ZORRMergingS", argLength: 3, reg: z2kvPred, asm: "ZORR", commutative: true, typ: "Vec256"}, |
| {name: "ZSQADDB", argLength: 2, reg: z21, asm: "ZSQADD", commutative: true, typ: "Vec256"}, |
| {name: "ZSQADDD", argLength: 2, reg: z21, asm: "ZSQADD", commutative: true, typ: "Vec256"}, |
| {name: "ZSQADDH", argLength: 2, reg: z21, asm: "ZSQADD", commutative: true, typ: "Vec256"}, |
| {name: "ZSQADDMergingB", argLength: 3, reg: z2kvPred, asm: "ZSQADD", commutative: true, typ: "Vec256"}, |
| {name: "ZSQADDMergingD", argLength: 3, reg: z2kvPred, asm: "ZSQADD", commutative: true, typ: "Vec256"}, |
| {name: "ZSQADDMergingH", argLength: 3, reg: z2kvPred, asm: "ZSQADD", commutative: true, typ: "Vec256"}, |
| {name: "ZSQADDMergingPrefixedB", argLength: 4, reg: z3kvPred, asm: "ZSQADD", typ: "Vec256", resultInArg0: true}, |
| {name: "ZSQADDMergingPrefixedD", argLength: 4, reg: z3kvPred, asm: "ZSQADD", typ: "Vec256", resultInArg0: true}, |
| {name: "ZSQADDMergingPrefixedH", argLength: 4, reg: z3kvPred, asm: "ZSQADD", typ: "Vec256", resultInArg0: true}, |
| {name: "ZSQADDMergingPrefixedS", argLength: 4, reg: z3kvPred, asm: "ZSQADD", typ: "Vec256", resultInArg0: true}, |
| {name: "ZSQADDMergingS", argLength: 3, reg: z2kvPred, asm: "ZSQADD", commutative: true, typ: "Vec256"}, |
| {name: "ZSQADDS", argLength: 2, reg: z21, asm: "ZSQADD", commutative: true, typ: "Vec256"}, |
| {name: "ZSQSUBB", argLength: 2, reg: z21, asm: "ZSQSUB", typ: "Vec256"}, |
| {name: "ZSQSUBD", argLength: 2, reg: z21, asm: "ZSQSUB", typ: "Vec256"}, |
| {name: "ZSQSUBH", argLength: 2, reg: z21, asm: "ZSQSUB", typ: "Vec256"}, |
| {name: "ZSQSUBMergingB", argLength: 3, reg: z2kvPred, asm: "ZSQSUB", typ: "Vec256", resultInArg0: true}, |
| {name: "ZSQSUBMergingD", argLength: 3, reg: z2kvPred, asm: "ZSQSUB", typ: "Vec256", resultInArg0: true}, |
| {name: "ZSQSUBMergingH", argLength: 3, reg: z2kvPred, asm: "ZSQSUB", typ: "Vec256", resultInArg0: true}, |
| {name: "ZSQSUBMergingS", argLength: 3, reg: z2kvPred, asm: "ZSQSUB", typ: "Vec256", resultInArg0: true}, |
| {name: "ZSQSUBS", argLength: 2, reg: z21, asm: "ZSQSUB", typ: "Vec256"}, |
| {name: "ZSUBB", argLength: 2, reg: z21, asm: "ZSUB", typ: "Vec256"}, |
| {name: "ZSUBD", argLength: 2, reg: z21, asm: "ZSUB", typ: "Vec256"}, |
| {name: "ZSUBH", argLength: 2, reg: z21, asm: "ZSUB", typ: "Vec256"}, |
| {name: "ZSUBMergingB", argLength: 3, reg: z2kvPred, asm: "ZSUB", typ: "Vec256", resultInArg0: true}, |
| {name: "ZSUBMergingD", argLength: 3, reg: z2kvPred, asm: "ZSUB", typ: "Vec256", resultInArg0: true}, |
| {name: "ZSUBMergingH", argLength: 3, reg: z2kvPred, asm: "ZSUB", typ: "Vec256", resultInArg0: true}, |
| {name: "ZSUBMergingS", argLength: 3, reg: z2kvPred, asm: "ZSUB", typ: "Vec256", resultInArg0: true}, |
| {name: "ZSUBS", argLength: 2, reg: z21, asm: "ZSUB", typ: "Vec256"}, |
| {name: "ZUQADDB", argLength: 2, reg: z21, asm: "ZUQADD", commutative: true, typ: "Vec256"}, |
| {name: "ZUQADDD", argLength: 2, reg: z21, asm: "ZUQADD", commutative: true, typ: "Vec256"}, |
| {name: "ZUQADDH", argLength: 2, reg: z21, asm: "ZUQADD", commutative: true, typ: "Vec256"}, |
| {name: "ZUQADDMergingB", argLength: 3, reg: z2kvPred, asm: "ZUQADD", commutative: true, typ: "Vec256"}, |
| {name: "ZUQADDMergingD", argLength: 3, reg: z2kvPred, asm: "ZUQADD", commutative: true, typ: "Vec256"}, |
| {name: "ZUQADDMergingH", argLength: 3, reg: z2kvPred, asm: "ZUQADD", commutative: true, typ: "Vec256"}, |
| {name: "ZUQADDMergingPrefixedB", argLength: 4, reg: z3kvPred, asm: "ZUQADD", typ: "Vec256", resultInArg0: true}, |
| {name: "ZUQADDMergingPrefixedD", argLength: 4, reg: z3kvPred, asm: "ZUQADD", typ: "Vec256", resultInArg0: true}, |
| {name: "ZUQADDMergingPrefixedH", argLength: 4, reg: z3kvPred, asm: "ZUQADD", typ: "Vec256", resultInArg0: true}, |
| {name: "ZUQADDMergingPrefixedS", argLength: 4, reg: z3kvPred, asm: "ZUQADD", typ: "Vec256", resultInArg0: true}, |
| {name: "ZUQADDMergingS", argLength: 3, reg: z2kvPred, asm: "ZUQADD", commutative: true, typ: "Vec256"}, |
| {name: "ZUQADDS", argLength: 2, reg: z21, asm: "ZUQADD", commutative: true, typ: "Vec256"}, |
| {name: "ZUQSUBB", argLength: 2, reg: z21, asm: "ZUQSUB", typ: "Vec256"}, |
| {name: "ZUQSUBD", argLength: 2, reg: z21, asm: "ZUQSUB", typ: "Vec256"}, |
| {name: "ZUQSUBH", argLength: 2, reg: z21, asm: "ZUQSUB", typ: "Vec256"}, |
| {name: "ZUQSUBMergingB", argLength: 3, reg: z2kvPred, asm: "ZUQSUB", typ: "Vec256", resultInArg0: true}, |
| {name: "ZUQSUBMergingD", argLength: 3, reg: z2kvPred, asm: "ZUQSUB", typ: "Vec256", resultInArg0: true}, |
| {name: "ZUQSUBMergingH", argLength: 3, reg: z2kvPred, asm: "ZUQSUB", typ: "Vec256", resultInArg0: true}, |
| {name: "ZUQSUBMergingS", argLength: 3, reg: z2kvPred, asm: "ZUQSUB", typ: "Vec256", resultInArg0: true}, |
| {name: "ZUQSUBS", argLength: 2, reg: z21, asm: "ZUQSUB", typ: "Vec256"}, |
| } |
| } |