diff options
author | Ulrich Weigand <ulrich.weigand@de.ibm.com> | 2017-07-17 17:42:48 +0000 |
---|---|---|
committer | Ulrich Weigand <ulrich.weigand@de.ibm.com> | 2017-07-17 17:42:48 +0000 |
commit | 33435c4c9c1dcecd109aef3d23d46ea43618d9ae (patch) | |
tree | 0e6a868ea02a04314fca2d6bc2a926c66aad666d /llvm/test/MC/SystemZ | |
parent | 2b3482fe8576f8e5de0d296baae5dfb290b9948a (diff) | |
download | bcm5719-llvm-33435c4c9c1dcecd109aef3d23d46ea43618d9ae.tar.gz bcm5719-llvm-33435c4c9c1dcecd109aef3d23d46ea43618d9ae.zip |
[SystemZ] Add support for IBM z14 processor (2/3)
This adds support for the new 32-bit vector float instructions of z14.
This includes:
- Enabling the instructions for the assembler/disassembler.
- CodeGen for the instructions, including new LLVM intrinsics.
- Scheduler description support for the instructions.
- Update to the vector cost function calculations.
In general, CodeGen support for the new v4f32 instructions closely
matches support for the existing v2f64 instructions.
llvm-svn: 308195
Diffstat (limited to 'llvm/test/MC/SystemZ')
-rw-r--r-- | llvm/test/MC/SystemZ/insn-bad-z13.s | 262 | ||||
-rw-r--r-- | llvm/test/MC/SystemZ/insn-bad-z14.s | 138 | ||||
-rw-r--r-- | llvm/test/MC/SystemZ/insn-good-z14.s | 950 |
3 files changed, 1350 insertions, 0 deletions
diff --git a/llvm/test/MC/SystemZ/insn-bad-z13.s b/llvm/test/MC/SystemZ/insn-bad-z13.s index 7bf5b5303dd..456567af2e2 100644 --- a/llvm/test/MC/SystemZ/insn-bad-z13.s +++ b/llvm/test/MC/SystemZ/insn-bad-z13.s @@ -955,6 +955,40 @@ vfaezhs %v0, %v0 vfaezhs %v0, %v0, %v0, 0, 0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vfasb %v0, %v0, %v0 + + vfasb %v0, %v0, %v0 + +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vfcesb %v0, %v0, %v0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vfcesbs %v0, %v0, %v0 + + vfcesb %v0, %v0, %v0 + vfcesbs %v0, %v0, %v0 + +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vfchsb %v0, %v0, %v0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vfchsbs %v0, %v0, %v0 + + vfchsb %v0, %v0, %v0 + vfchsbs %v0, %v0, %v0 + +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vfchesb %v0, %v0, %v0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vfchesbs %v0, %v0, %v0 + + vfchesb %v0, %v0, %v0 + vfchesbs %v0, %v0, %v0 + +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vfdsb %v0, %v0, %v0 + + vfdsb %v0, %v0, %v0 + #CHECK: error: invalid operand #CHECK: vfee %v0, %v0, %v0, 0, -1 #CHECK: error: invalid operand @@ -1258,60 +1292,150 @@ vfidb %v0, %v0, 16, 0 #CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vfisb %v0, %v0, 0, 0 + + vfisb %v0, %v0, 0, 0 + +#CHECK: error: instruction requires: vector-enhancements-1 #CHECK: vfkedb %v0, %v0, %v0 #CHECK: error: instruction requires: vector-enhancements-1 #CHECK: vfkedbs %v0, %v0, %v0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vfkesb %v0, %v0, %v0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vfkesbs %v0, %v0, %v0 vfkedb %v0, %v0, %v0 vfkedbs %v0, %v0, %v0 + vfkesb %v0, %v0, %v0 + vfkesbs %v0, %v0, %v0 #CHECK: error: instruction requires: vector-enhancements-1 #CHECK: vfkhdb %v0, %v0, %v0 #CHECK: error: instruction requires: vector-enhancements-1 #CHECK: vfkhdbs %v0, %v0, %v0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vfkhsb %v0, %v0, %v0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vfkhsbs %v0, %v0, %v0 vfkhdb %v0, %v0, %v0 vfkhdbs %v0, %v0, %v0 + vfkhsb %v0, %v0, %v0 + vfkhsbs %v0, %v0, %v0 #CHECK: error: instruction requires: vector-enhancements-1 #CHECK: vfkhedb %v0, %v0, %v0 #CHECK: error: instruction requires: vector-enhancements-1 #CHECK: vfkhedbs %v0, %v0, %v0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vfkhesb %v0, %v0, %v0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vfkhesbs %v0, %v0, %v0 vfkhedb %v0, %v0, %v0 vfkhedbs %v0, %v0, %v0 + vfkhesb %v0, %v0, %v0 + vfkhesbs %v0, %v0, %v0 + +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vfpsosb %v0, %v0, 0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vflcsb %v0, %v0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vflnsb %v0, %v0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vflpsb %v0, %v0 + + vfpsosb %v0, %v0, 0 + vflcsb %v0, %v0 + vflnsb %v0, %v0 + vflpsb %v0, %v0 + +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vfll %v0, %v0, 0, 0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vflls %v0, %v0 + + vfll %v0, %v0, 0, 0 + vflls %v0, %v0 + +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vflr %v0, %v0, 0, 0, 0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vflrd %v0, %v0, 0, 0 + + vflr %v0, %v0, 0, 0, 0 + vflrd %v0, %v0, 0, 0 #CHECK: error: instruction requires: vector-enhancements-1 #CHECK: vfmax %v0, %v0, %v0, 0, 0, 0 #CHECK: error: instruction requires: vector-enhancements-1 #CHECK: vfmaxdb %v0, %v0, %v0, 0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vfmaxsb %v0, %v0, %v0, 0 vfmax %v0, %v0, %v0, 0, 0, 0 vfmaxdb %v0, %v0, %v0, 0 + vfmaxsb %v0, %v0, %v0, 0 #CHECK: error: instruction requires: vector-enhancements-1 #CHECK: vfmin %v0, %v0, %v0, 0, 0, 0 #CHECK: error: instruction requires: vector-enhancements-1 #CHECK: vfmindb %v0, %v0, %v0, 0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vfminsb %v0, %v0, %v0, 0 vfmin %v0, %v0, %v0, 0, 0, 0 vfmindb %v0, %v0, %v0, 0 + vfminsb %v0, %v0, %v0, 0 + +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vfmasb %v0, %v0, %v0, %v0 + + vfmasb %v0, %v0, %v0, %v0 + +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vfmsb %v0, %v0, %v0 + + vfmsb %v0, %v0, %v0 + +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vfmssb %v0, %v0, %v0, %v0 + + vfmssb %v0, %v0, %v0, %v0 #CHECK: error: instruction requires: vector-enhancements-1 #CHECK: vfnma %v0, %v0, %v0, %v0, 0, 0 #CHECK: error: instruction requires: vector-enhancements-1 #CHECK: vfnmadb %v0, %v0, %v0, %v0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vfnmasb %v0, %v0, %v0, %v0 vfnma %v0, %v0, %v0, %v0, 0, 0 vfnmadb %v0, %v0, %v0, %v0 + vfnmasb %v0, %v0, %v0, %v0 #CHECK: error: instruction requires: vector-enhancements-1 #CHECK: vfnms %v0, %v0, %v0, %v0, 0, 0 #CHECK: error: instruction requires: vector-enhancements-1 #CHECK: vfnmsdb %v0, %v0, %v0, %v0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vfnmssb %v0, %v0, %v0, %v0 vfnms %v0, %v0, %v0, %v0, 0, 0 vfnmsdb %v0, %v0, %v0, %v0 + vfnmssb %v0, %v0, %v0, %v0 + +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vfssb %v0, %v0, %v0 + + vfssb %v0, %v0, %v0 + +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vfsqsb %v0, %v0 + + vfsqsb %v0, %v0 #CHECK: error: invalid operand #CHECK: vftci %v0, %v0, 0, 0, -1 @@ -1341,6 +1465,11 @@ vftcidb %v0, %v0, -1 vftcidb %v0, %v0, 4096 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: vftcisb %v0, %v0, 0 + + vftcisb %v0, %v0, 0 + #CHECK: error: invalid operand #CHECK: vgbm %v0, -1 #CHECK: error: invalid operand @@ -2607,6 +2736,45 @@ wclgdb %v0, %v0, -1, 0 wclgdb %v0, %v0, 16, 0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wfasb %v0, %v0, %v0 + + wfasb %v0, %v0, %v0 + +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wfcsb %v0, %v0 + + wfcsb %v0, %v0 + +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wfcesb %v0, %v0, %v0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wfcesbs %v0, %v0, %v0 + + wfcesb %v0, %v0, %v0 + wfcesbs %v0, %v0, %v0 + +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wfchsb %v0, %v0, %v0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wfchsbs %v0, %v0, %v0 + + wfchsb %v0, %v0, %v0 + wfchsbs %v0, %v0, %v0 + +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wfchesb %v0, %v0, %v0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wfchesbs %v0, %v0, %v0 + + wfchesb %v0, %v0, %v0 + wfchesbs %v0, %v0, %v0 + +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wfdsb %v0, %v0, %v0 + + wfdsb %v0, %v0, %v0 + #CHECK: error: invalid operand #CHECK: wfidb %v0, %v0, 0, -1 #CHECK: error: invalid operand @@ -2622,48 +2790,137 @@ wfidb %v0, %v0, 16, 0 #CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wfisb %v0, %v0, 0, 0 + + wfisb %v0, %v0, 0, 0 + +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wfksb %v0, %v0 + + wfksb %v0, %v0 + +#CHECK: error: instruction requires: vector-enhancements-1 #CHECK: wfkedb %v0, %v0, %v0 #CHECK: error: instruction requires: vector-enhancements-1 #CHECK: wfkedbs %v0, %v0, %v0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wfkesb %v0, %v0, %v0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wfkesbs %v0, %v0, %v0 wfkedb %v0, %v0, %v0 wfkedbs %v0, %v0, %v0 + wfkesb %v0, %v0, %v0 + wfkesbs %v0, %v0, %v0 #CHECK: error: instruction requires: vector-enhancements-1 #CHECK: wfkhdb %v0, %v0, %v0 #CHECK: error: instruction requires: vector-enhancements-1 #CHECK: wfkhdbs %v0, %v0, %v0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wfkhsb %v0, %v0, %v0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wfkhsbs %v0, %v0, %v0 wfkhdb %v0, %v0, %v0 wfkhdbs %v0, %v0, %v0 + wfkhsb %v0, %v0, %v0 + wfkhsbs %v0, %v0, %v0 #CHECK: error: instruction requires: vector-enhancements-1 #CHECK: wfkhedb %v0, %v0, %v0 #CHECK: error: instruction requires: vector-enhancements-1 #CHECK: wfkhedbs %v0, %v0, %v0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wfkhesb %v0, %v0, %v0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wfkhesbs %v0, %v0, %v0 wfkhedb %v0, %v0, %v0 wfkhedbs %v0, %v0, %v0 + wfkhesb %v0, %v0, %v0 + wfkhesbs %v0, %v0, %v0 + +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wfpsosb %v0, %v0, 0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wflcsb %v0, %v0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wflnsb %v0, %v0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wflpsb %v0, %v0 + + wfpsosb %v0, %v0, 0 + wflcsb %v0, %v0 + wflnsb %v0, %v0 + wflpsb %v0, %v0 + +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wflls %v0, %v0 + + wflls %v0, %v0 + +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wflrd %v0, %v0, 0, 0 + + wflrd %v0, %v0, 0, 0 #CHECK: error: instruction requires: vector-enhancements-1 #CHECK: wfmaxdb %v0, %v0, %v0, 0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wfmaxsb %v0, %v0, %v0, 0 wfmaxdb %v0, %v0, %v0, 0 + wfmaxsb %v0, %v0, %v0, 0 #CHECK: error: instruction requires: vector-enhancements-1 #CHECK: wfmindb %v0, %v0, %v0, 0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wfminsb %v0, %v0, %v0, 0 wfmindb %v0, %v0, %v0, 0 + wfminsb %v0, %v0, %v0, 0 + +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wfmasb %v0, %v0, %v0, %v0 + + wfmasb %v0, %v0, %v0, %v0 + +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wfmsb %v0, %v0, %v0 + + wfmsb %v0, %v0, %v0 + +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wfmssb %v0, %v0, %v0, %v0 + + wfmssb %v0, %v0, %v0, %v0 #CHECK: error: instruction requires: vector-enhancements-1 #CHECK: wfnmadb %v0, %v0, %v0, %v0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wfnmasb %v0, %v0, %v0, %v0 wfnmadb %v0, %v0, %v0, %v0 + wfnmasb %v0, %v0, %v0, %v0 #CHECK: error: instruction requires: vector-enhancements-1 #CHECK: wfnmsdb %v0, %v0, %v0, %v0 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wfnmssb %v0, %v0, %v0, %v0 wfnmsdb %v0, %v0, %v0, %v0 + wfnmssb %v0, %v0, %v0, %v0 + +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wfssb %v0, %v0, %v0 + + wfssb %v0, %v0, %v0 + +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wfsqsb %v0, %v0 + + wfsqsb %v0, %v0 #CHECK: error: invalid operand #CHECK: wftcidb %v0, %v0, -1 @@ -2673,6 +2930,11 @@ wftcidb %v0, %v0, -1 wftcidb %v0, %v0, 4096 +#CHECK: error: instruction requires: vector-enhancements-1 +#CHECK: wftcisb %v0, %v0, 0 + + wftcisb %v0, %v0, 0 + #CHECK: error: invalid operand #CHECK: wledb %v0, %v0, 0, -1 #CHECK: error: invalid operand diff --git a/llvm/test/MC/SystemZ/insn-bad-z14.s b/llvm/test/MC/SystemZ/insn-bad-z14.s index 4e0a250810a..0e96fd3a40b 100644 --- a/llvm/test/MC/SystemZ/insn-bad-z14.s +++ b/llvm/test/MC/SystemZ/insn-bad-z14.s @@ -214,6 +214,68 @@ vdp %v0, %v0, %v0, 256, 0 #CHECK: error: invalid operand +#CHECK: vfisb %v0, %v0, 0, -1 +#CHECK: error: invalid operand +#CHECK: vfisb %v0, %v0, 0, 16 +#CHECK: error: invalid operand +#CHECK: vfisb %v0, %v0, -1, 0 +#CHECK: error: invalid operand +#CHECK: vfisb %v0, %v0, 16, 0 + + vfisb %v0, %v0, 0, -1 + vfisb %v0, %v0, 0, 16 + vfisb %v0, %v0, -1, 0 + vfisb %v0, %v0, 16, 0 + +#CHECK: error: invalid operand +#CHECK: vfll %v0, %v0, 0, -1 +#CHECK: error: invalid operand +#CHECK: vfll %v0, %v0, 0, 16 +#CHECK: error: invalid operand +#CHECK: vfll %v0, %v0, -1, 0 +#CHECK: error: invalid operand +#CHECK: vfll %v0, %v0, 16, 0 + + vfll %v0, %v0, 0, -1 + vfll %v0, %v0, 0, 16 + vfll %v0, %v0, -1, 0 + vfll %v0, %v0, 16, 0 + +#CHECK: error: invalid operand +#CHECK: vflr %v0, %v0, 0, 0, -1 +#CHECK: error: invalid operand +#CHECK: vflr %v0, %v0, 0, 0, 16 +#CHECK: error: invalid operand +#CHECK: vflr %v0, %v0, 0, -1, 0 +#CHECK: error: invalid operand +#CHECK: vflr %v0, %v0, 0, 16, 0 +#CHECK: error: invalid operand +#CHECK: vflr %v0, %v0, -1, 0, 0 +#CHECK: error: invalid operand +#CHECK: vflr %v0, %v0, 16, 0, 0 + + vflr %v0, %v0, 0, 0, -1 + vflr %v0, %v0, 0, 0, 16 + vflr %v0, %v0, 0, -1, 0 + vflr %v0, %v0, 0, 16, 0 + vflr %v0, %v0, -1, 0, 0 + vflr %v0, %v0, 16, 0, 0 + +#CHECK: error: invalid operand +#CHECK: vflrd %v0, %v0, 0, -1 +#CHECK: error: invalid operand +#CHECK: vflrd %v0, %v0, 0, 16 +#CHECK: error: invalid operand +#CHECK: vflrd %v0, %v0, -1, 0 +#CHECK: error: invalid operand +#CHECK: vflrd %v0, %v0, 16, 0 + + vflrd %v0, %v0, 0, -1 + vflrd %v0, %v0, 0, 16 + vflrd %v0, %v0, -1, 0 + vflrd %v0, %v0, 16, 0 + +#CHECK: error: invalid operand #CHECK: vfmax %v0, %v0, %v0, 0, 0, -1 #CHECK: error: invalid operand #CHECK: vfmax %v0, %v0, %v0, 0, 0, 16 @@ -242,6 +304,14 @@ vfmaxdb %v0, %v0, %v0, 16 #CHECK: error: invalid operand +#CHECK: vfmaxsb %v0, %v0, %v0, -1 +#CHECK: error: invalid operand +#CHECK: vfmaxsb %v0, %v0, %v0, 16 + + vfmaxsb %v0, %v0, %v0, -1 + vfmaxsb %v0, %v0, %v0, 16 + +#CHECK: error: invalid operand #CHECK: vfmin %v0, %v0, %v0, 0, 0, -1 #CHECK: error: invalid operand #CHECK: vfmin %v0, %v0, %v0, 0, 0, 16 @@ -270,6 +340,14 @@ vfmindb %v0, %v0, %v0, 16 #CHECK: error: invalid operand +#CHECK: vfminsb %v0, %v0, %v0, -1 +#CHECK: error: invalid operand +#CHECK: vfminsb %v0, %v0, %v0, 16 + + vfminsb %v0, %v0, %v0, -1 + vfminsb %v0, %v0, %v0, 16 + +#CHECK: error: invalid operand #CHECK: vfnma %v0, %v0, %v0, %v0, 0, -1 #CHECK: error: invalid operand #CHECK: vfnma %v0, %v0, %v0, %v0, 0, 16 @@ -298,6 +376,14 @@ vfnms %v0, %v0, %v0, %v0, 16, 0 #CHECK: error: invalid operand +#CHECK: vftcisb %v0, %v0, -1 +#CHECK: error: invalid operand +#CHECK: vftcisb %v0, %v0, 4096 + + vftcisb %v0, %v0, -1 + vftcisb %v0, %v0, 4096 + +#CHECK: error: invalid operand #CHECK: vlip %v0, 0, -1 #CHECK: error: invalid operand #CHECK: vlip %v0, 0, 16 @@ -545,6 +631,34 @@ vupkz %v0, 0(%r0), 0 #CHECK: error: invalid operand +#CHECK: wfisb %v0, %v0, 0, -1 +#CHECK: error: invalid operand +#CHECK: wfisb %v0, %v0, 0, 16 +#CHECK: error: invalid operand +#CHECK: wfisb %v0, %v0, -1, 0 +#CHECK: error: invalid operand +#CHECK: wfisb %v0, %v0, 16, 0 + + wfisb %v0, %v0, 0, -1 + wfisb %v0, %v0, 0, 16 + wfisb %v0, %v0, -1, 0 + wfisb %v0, %v0, 16, 0 + +#CHECK: error: invalid operand +#CHECK: wflrd %v0, %v0, 0, -1 +#CHECK: error: invalid operand +#CHECK: wflrd %v0, %v0, 0, 16 +#CHECK: error: invalid operand +#CHECK: wflrd %v0, %v0, -1, 0 +#CHECK: error: invalid operand +#CHECK: wflrd %v0, %v0, 16, 0 + + wflrd %v0, %v0, 0, -1 + wflrd %v0, %v0, 0, 16 + wflrd %v0, %v0, -1, 0 + wflrd %v0, %v0, 16, 0 + +#CHECK: error: invalid operand #CHECK: wfmaxdb %v0, %v0, %v0, -1 #CHECK: error: invalid operand #CHECK: wfmaxdb %v0, %v0, %v0, 16 @@ -553,6 +667,14 @@ wfmaxdb %v0, %v0, %v0, 16 #CHECK: error: invalid operand +#CHECK: wfmaxsb %v0, %v0, %v0, -1 +#CHECK: error: invalid operand +#CHECK: wfmaxsb %v0, %v0, %v0, 16 + + wfmaxsb %v0, %v0, %v0, -1 + wfmaxsb %v0, %v0, %v0, 16 + +#CHECK: error: invalid operand #CHECK: wfmindb %v0, %v0, %v0, -1 #CHECK: error: invalid operand #CHECK: wfmindb %v0, %v0, %v0, 16 @@ -560,3 +682,19 @@ wfmindb %v0, %v0, %v0, -1 wfmindb %v0, %v0, %v0, 16 +#CHECK: error: invalid operand +#CHECK: wfminsb %v0, %v0, %v0, -1 +#CHECK: error: invalid operand +#CHECK: wfminsb %v0, %v0, %v0, 16 + + wfminsb %v0, %v0, %v0, -1 + wfminsb %v0, %v0, %v0, 16 + +#CHECK: error: invalid operand +#CHECK: wftcisb %v0, %v0, -1 +#CHECK: error: invalid operand +#CHECK: wftcisb %v0, %v0, 4096 + + wftcisb %v0, %v0, -1 + wftcisb %v0, %v0, 4096 + diff --git a/llvm/test/MC/SystemZ/insn-good-z14.s b/llvm/test/MC/SystemZ/insn-good-z14.s index c247f252659..99fb495e40a 100644 --- a/llvm/test/MC/SystemZ/insn-good-z14.s +++ b/llvm/test/MC/SystemZ/insn-good-z14.s @@ -540,6 +540,118 @@ vdp %v31, %v0, %v0, 0, 0 vdp %v13, %v17, %v21, 0x79, 11 +#CHECK: vfasb %v0, %v0, %v0 # encoding: [0xe7,0x00,0x00,0x00,0x20,0xe3] +#CHECK: vfasb %v0, %v0, %v31 # encoding: [0xe7,0x00,0xf0,0x00,0x22,0xe3] +#CHECK: vfasb %v0, %v31, %v0 # encoding: [0xe7,0x0f,0x00,0x00,0x24,0xe3] +#CHECK: vfasb %v31, %v0, %v0 # encoding: [0xe7,0xf0,0x00,0x00,0x28,0xe3] +#CHECK: vfasb %v18, %v3, %v20 # encoding: [0xe7,0x23,0x40,0x00,0x2a,0xe3] + + vfasb %v0, %v0, %v0 + vfasb %v0, %v0, %v31 + vfasb %v0, %v31, %v0 + vfasb %v31, %v0, %v0 + vfasb %v18, %v3, %v20 + +#CHECK: vfcesb %v0, %v0, %v0 # encoding: [0xe7,0x00,0x00,0x00,0x20,0xe8] +#CHECK: vfcesb %v0, %v0, %v31 # encoding: [0xe7,0x00,0xf0,0x00,0x22,0xe8] +#CHECK: vfcesb %v0, %v31, %v0 # encoding: [0xe7,0x0f,0x00,0x00,0x24,0xe8] +#CHECK: vfcesb %v31, %v0, %v0 # encoding: [0xe7,0xf0,0x00,0x00,0x28,0xe8] +#CHECK: vfcesb %v18, %v3, %v20 # encoding: [0xe7,0x23,0x40,0x00,0x2a,0xe8] + + vfcesb %v0, %v0, %v0 + vfcesb %v0, %v0, %v31 + vfcesb %v0, %v31, %v0 + vfcesb %v31, %v0, %v0 + vfcesb %v18, %v3, %v20 + +#CHECK: vfcesbs %v0, %v0, %v0 # encoding: [0xe7,0x00,0x00,0x10,0x20,0xe8] +#CHECK: vfcesbs %v0, %v0, %v31 # encoding: [0xe7,0x00,0xf0,0x10,0x22,0xe8] +#CHECK: vfcesbs %v0, %v31, %v0 # encoding: [0xe7,0x0f,0x00,0x10,0x24,0xe8] +#CHECK: vfcesbs %v31, %v0, %v0 # encoding: [0xe7,0xf0,0x00,0x10,0x28,0xe8] +#CHECK: vfcesbs %v18, %v3, %v20 # encoding: [0xe7,0x23,0x40,0x10,0x2a,0xe8] + + vfcesbs %v0, %v0, %v0 + vfcesbs %v0, %v0, %v31 + vfcesbs %v0, %v31, %v0 + vfcesbs %v31, %v0, %v0 + vfcesbs %v18, %v3, %v20 + +#CHECK: vfchsb %v0, %v0, %v0 # encoding: [0xe7,0x00,0x00,0x00,0x20,0xeb] +#CHECK: vfchsb %v0, %v0, %v31 # encoding: [0xe7,0x00,0xf0,0x00,0x22,0xeb] +#CHECK: vfchsb %v0, %v31, %v0 # encoding: [0xe7,0x0f,0x00,0x00,0x24,0xeb] +#CHECK: vfchsb %v31, %v0, %v0 # encoding: [0xe7,0xf0,0x00,0x00,0x28,0xeb] +#CHECK: vfchsb %v18, %v3, %v20 # encoding: [0xe7,0x23,0x40,0x00,0x2a,0xeb] + + vfchsb %v0, %v0, %v0 + vfchsb %v0, %v0, %v31 + vfchsb %v0, %v31, %v0 + vfchsb %v31, %v0, %v0 + vfchsb %v18, %v3, %v20 + +#CHECK: vfchsbs %v0, %v0, %v0 # encoding: [0xe7,0x00,0x00,0x10,0x20,0xeb] +#CHECK: vfchsbs %v0, %v0, %v31 # encoding: [0xe7,0x00,0xf0,0x10,0x22,0xeb] +#CHECK: vfchsbs %v0, %v31, %v0 # encoding: [0xe7,0x0f,0x00,0x10,0x24,0xeb] +#CHECK: vfchsbs %v31, %v0, %v0 # encoding: [0xe7,0xf0,0x00,0x10,0x28,0xeb] +#CHECK: vfchsbs %v18, %v3, %v20 # encoding: [0xe7,0x23,0x40,0x10,0x2a,0xeb] + + vfchsbs %v0, %v0, %v0 + vfchsbs %v0, %v0, %v31 + vfchsbs %v0, %v31, %v0 + vfchsbs %v31, %v0, %v0 + vfchsbs %v18, %v3, %v20 + +#CHECK: vfchesb %v0, %v0, %v0 # encoding: [0xe7,0x00,0x00,0x00,0x20,0xea] +#CHECK: vfchesb %v0, %v0, %v31 # encoding: [0xe7,0x00,0xf0,0x00,0x22,0xea] +#CHECK: vfchesb %v0, %v31, %v0 # encoding: [0xe7,0x0f,0x00,0x00,0x24,0xea] +#CHECK: vfchesb %v31, %v0, %v0 # encoding: [0xe7,0xf0,0x00,0x00,0x28,0xea] +#CHECK: vfchesb %v18, %v3, %v20 # encoding: [0xe7,0x23,0x40,0x00,0x2a,0xea] + + vfchesb %v0, %v0, %v0 + vfchesb %v0, %v0, %v31 + vfchesb %v0, %v31, %v0 + vfchesb %v31, %v0, %v0 + vfchesb %v18, %v3, %v20 + +#CHECK: vfchesbs %v0, %v0, %v0 # encoding: [0xe7,0x00,0x00,0x10,0x20,0xea] +#CHECK: vfchesbs %v0, %v0, %v31 # encoding: [0xe7,0x00,0xf0,0x10,0x22,0xea] +#CHECK: vfchesbs %v0, %v31, %v0 # encoding: [0xe7,0x0f,0x00,0x10,0x24,0xea] +#CHECK: vfchesbs %v31, %v0, %v0 # encoding: [0xe7,0xf0,0x00,0x10,0x28,0xea] +#CHECK: vfchesbs %v18, %v3, %v20 # encoding: [0xe7,0x23,0x40,0x10,0x2a,0xea] + + vfchesbs %v0, %v0, %v0 + vfchesbs %v0, %v0, %v31 + vfchesbs %v0, %v31, %v0 + vfchesbs %v31, %v0, %v0 + vfchesbs %v18, %v3, %v20 + +#CHECK: vfdsb %v0, %v0, %v0 # encoding: [0xe7,0x00,0x00,0x00,0x20,0xe5] +#CHECK: vfdsb %v0, %v0, %v31 # encoding: [0xe7,0x00,0xf0,0x00,0x22,0xe5] +#CHECK: vfdsb %v0, %v31, %v0 # encoding: [0xe7,0x0f,0x00,0x00,0x24,0xe5] +#CHECK: vfdsb %v31, %v0, %v0 # encoding: [0xe7,0xf0,0x00,0x00,0x28,0xe5] +#CHECK: vfdsb %v18, %v3, %v20 # encoding: [0xe7,0x23,0x40,0x00,0x2a,0xe5] + + vfdsb %v0, %v0, %v0 + vfdsb %v0, %v0, %v31 + vfdsb %v0, %v31, %v0 + vfdsb %v31, %v0, %v0 + vfdsb %v18, %v3, %v20 + +#CHECK: vfisb %v0, %v0, 0, 0 # encoding: [0xe7,0x00,0x00,0x00,0x20,0xc7] +#CHECK: vfisb %v0, %v0, 0, 15 # encoding: [0xe7,0x00,0x00,0xf0,0x20,0xc7] +#CHECK: vfisb %v0, %v0, 4, 0 # encoding: [0xe7,0x00,0x00,0x04,0x20,0xc7] +#CHECK: vfisb %v0, %v0, 7, 0 # encoding: [0xe7,0x00,0x00,0x07,0x20,0xc7] +#CHECK: vfisb %v0, %v31, 0, 0 # encoding: [0xe7,0x0f,0x00,0x00,0x24,0xc7] +#CHECK: vfisb %v31, %v0, 0, 0 # encoding: [0xe7,0xf0,0x00,0x00,0x28,0xc7] +#CHECK: vfisb %v14, %v17, 4, 10 # encoding: [0xe7,0xe1,0x00,0xa4,0x24,0xc7] + + vfisb %v0, %v0, 0, 0 + vfisb %v0, %v0, 0, 15 + vfisb %v0, %v0, 4, 0 + vfisb %v0, %v0, 7, 0 + vfisb %v0, %v31, 0, 0 + vfisb %v31, %v0, 0, 0 + vfisb %v14, %v17, 4, 10 + #CHECK: vfkedb %v0, %v0, %v0 # encoding: [0xe7,0x00,0x00,0x04,0x30,0xe8] #CHECK: vfkedb %v0, %v0, %v31 # encoding: [0xe7,0x00,0xf0,0x04,0x32,0xe8] #CHECK: vfkedb %v0, %v31, %v0 # encoding: [0xe7,0x0f,0x00,0x04,0x34,0xe8] @@ -564,6 +676,30 @@ vfkedbs %v31, %v0, %v0 vfkedbs %v18, %v3, %v20 +#CHECK: vfkesb %v0, %v0, %v0 # encoding: [0xe7,0x00,0x00,0x04,0x20,0xe8] +#CHECK: vfkesb %v0, %v0, %v31 # encoding: [0xe7,0x00,0xf0,0x04,0x22,0xe8] +#CHECK: vfkesb %v0, %v31, %v0 # encoding: [0xe7,0x0f,0x00,0x04,0x24,0xe8] +#CHECK: vfkesb %v31, %v0, %v0 # encoding: [0xe7,0xf0,0x00,0x04,0x28,0xe8] +#CHECK: vfkesb %v18, %v3, %v20 # encoding: [0xe7,0x23,0x40,0x04,0x2a,0xe8] + + vfkesb %v0, %v0, %v0 + vfkesb %v0, %v0, %v31 + vfkesb %v0, %v31, %v0 + vfkesb %v31, %v0, %v0 + vfkesb %v18, %v3, %v20 + +#CHECK: vfkesbs %v0, %v0, %v0 # encoding: [0xe7,0x00,0x00,0x14,0x20,0xe8] +#CHECK: vfkesbs %v0, %v0, %v31 # encoding: [0xe7,0x00,0xf0,0x14,0x22,0xe8] +#CHECK: vfkesbs %v0, %v31, %v0 # encoding: [0xe7,0x0f,0x00,0x14,0x24,0xe8] +#CHECK: vfkesbs %v31, %v0, %v0 # encoding: [0xe7,0xf0,0x00,0x14,0x28,0xe8] +#CHECK: vfkesbs %v18, %v3, %v20 # encoding: [0xe7,0x23,0x40,0x14,0x2a,0xe8] + + vfkesbs %v0, %v0, %v0 + vfkesbs %v0, %v0, %v31 + vfkesbs %v0, %v31, %v0 + vfkesbs %v31, %v0, %v0 + vfkesbs %v18, %v3, %v20 + #CHECK: vfkhdb %v0, %v0, %v0 # encoding: [0xe7,0x00,0x00,0x04,0x30,0xeb] #CHECK: vfkhdb %v0, %v0, %v31 # encoding: [0xe7,0x00,0xf0,0x04,0x32,0xeb] #CHECK: vfkhdb %v0, %v31, %v0 # encoding: [0xe7,0x0f,0x00,0x04,0x34,0xeb] @@ -588,6 +724,30 @@ vfkhdbs %v31, %v0, %v0 vfkhdbs %v18, %v3, %v20 +#CHECK: vfkhsb %v0, %v0, %v0 # encoding: [0xe7,0x00,0x00,0x04,0x20,0xeb] +#CHECK: vfkhsb %v0, %v0, %v31 # encoding: [0xe7,0x00,0xf0,0x04,0x22,0xeb] +#CHECK: vfkhsb %v0, %v31, %v0 # encoding: [0xe7,0x0f,0x00,0x04,0x24,0xeb] +#CHECK: vfkhsb %v31, %v0, %v0 # encoding: [0xe7,0xf0,0x00,0x04,0x28,0xeb] +#CHECK: vfkhsb %v18, %v3, %v20 # encoding: [0xe7,0x23,0x40,0x04,0x2a,0xeb] + + vfkhsb %v0, %v0, %v0 + vfkhsb %v0, %v0, %v31 + vfkhsb %v0, %v31, %v0 + vfkhsb %v31, %v0, %v0 + vfkhsb %v18, %v3, %v20 + +#CHECK: vfkhsbs %v0, %v0, %v0 # encoding: [0xe7,0x00,0x00,0x14,0x20,0xeb] +#CHECK: vfkhsbs %v0, %v0, %v31 # encoding: [0xe7,0x00,0xf0,0x14,0x22,0xeb] +#CHECK: vfkhsbs %v0, %v31, %v0 # encoding: [0xe7,0x0f,0x00,0x14,0x24,0xeb] +#CHECK: vfkhsbs %v31, %v0, %v0 # encoding: [0xe7,0xf0,0x00,0x14,0x28,0xeb] +#CHECK: vfkhsbs %v18, %v3, %v20 # encoding: [0xe7,0x23,0x40,0x14,0x2a,0xeb] + + vfkhsbs %v0, %v0, %v0 + vfkhsbs %v0, %v0, %v31 + vfkhsbs %v0, %v31, %v0 + vfkhsbs %v31, %v0, %v0 + vfkhsbs %v18, %v3, %v20 + #CHECK: vfkhedb %v0, %v0, %v0 # encoding: [0xe7,0x00,0x00,0x04,0x30,0xea] #CHECK: vfkhedb %v0, %v0, %v31 # encoding: [0xe7,0x00,0xf0,0x04,0x32,0xea] #CHECK: vfkhedb %v0, %v31, %v0 # encoding: [0xe7,0x0f,0x00,0x04,0x34,0xea] @@ -612,6 +772,154 @@ vfkhedbs %v31, %v0, %v0 vfkhedbs %v18, %v3, %v20 +#CHECK: vfkhesb %v0, %v0, %v0 # encoding: [0xe7,0x00,0x00,0x04,0x20,0xea] +#CHECK: vfkhesb %v0, %v0, %v31 # encoding: [0xe7,0x00,0xf0,0x04,0x22,0xea] +#CHECK: vfkhesb %v0, %v31, %v0 # encoding: [0xe7,0x0f,0x00,0x04,0x24,0xea] +#CHECK: vfkhesb %v31, %v0, %v0 # encoding: [0xe7,0xf0,0x00,0x04,0x28,0xea] +#CHECK: vfkhesb %v18, %v3, %v20 # encoding: [0xe7,0x23,0x40,0x04,0x2a,0xea] + + vfkhesb %v0, %v0, %v0 + vfkhesb %v0, %v0, %v31 + vfkhesb %v0, %v31, %v0 + vfkhesb %v31, %v0, %v0 + vfkhesb %v18, %v3, %v20 + +#CHECK: vfkhesbs %v0, %v0, %v0 # encoding: [0xe7,0x00,0x00,0x14,0x20,0xea] +#CHECK: vfkhesbs %v0, %v0, %v31 # encoding: [0xe7,0x00,0xf0,0x14,0x22,0xea] +#CHECK: vfkhesbs %v0, %v31, %v0 # encoding: [0xe7,0x0f,0x00,0x14,0x24,0xea] +#CHECK: vfkhesbs %v31, %v0, %v0 # encoding: [0xe7,0xf0,0x00,0x14,0x28,0xea] +#CHECK: vfkhesbs %v18, %v3, %v20 # encoding: [0xe7,0x23,0x40,0x14,0x2a,0xea] + + vfkhesbs %v0, %v0, %v0 + vfkhesbs %v0, %v0, %v31 + vfkhesbs %v0, %v31, %v0 + vfkhesbs %v31, %v0, %v0 + vfkhesbs %v18, %v3, %v20 + +#CHECK: vfpsosb %v0, %v0, 3 # encoding: [0xe7,0x00,0x00,0x30,0x20,0xcc] +#CHECK: vfpsosb %v0, %v0, 15 # encoding: [0xe7,0x00,0x00,0xf0,0x20,0xcc] +#CHECK: vfpsosb %v0, %v15, 3 # encoding: [0xe7,0x0f,0x00,0x30,0x20,0xcc] +#CHECK: vfpsosb %v0, %v31, 3 # encoding: [0xe7,0x0f,0x00,0x30,0x24,0xcc] +#CHECK: vfpsosb %v15, %v0, 3 # encoding: [0xe7,0xf0,0x00,0x30,0x20,0xcc] +#CHECK: vfpsosb %v31, %v0, 3 # encoding: [0xe7,0xf0,0x00,0x30,0x28,0xcc] +#CHECK: vfpsosb %v14, %v17, 7 # encoding: [0xe7,0xe1,0x00,0x70,0x24,0xcc] + + vfpsosb %v0, %v0, 3 + vfpsosb %v0, %v0, 15 + vfpsosb %v0, %v15, 3 + vfpsosb %v0, %v31, 3 + vfpsosb %v15, %v0, 3 + vfpsosb %v31, %v0, 3 + vfpsosb %v14, %v17, 7 + +#CHECK: vflcsb %v0, %v0 # encoding: [0xe7,0x00,0x00,0x00,0x20,0xcc] +#CHECK: vflcsb %v0, %v15 # encoding: [0xe7,0x0f,0x00,0x00,0x20,0xcc] +#CHECK: vflcsb %v0, %v31 # encoding: [0xe7,0x0f,0x00,0x00,0x24,0xcc] +#CHECK: vflcsb %v15, %v0 # encoding: [0xe7,0xf0,0x00,0x00,0x20,0xcc] +#CHECK: vflcsb %v31, %v0 # encoding: [0xe7,0xf0,0x00,0x00,0x28,0xcc] +#CHECK: vflcsb %v14, %v17 # encoding: [0xe7,0xe1,0x00,0x00,0x24,0xcc] + + vflcsb %v0, %v0 + vflcsb %v0, %v15 + vflcsb %v0, %v31 + vflcsb %v15, %v0 + vflcsb %v31, %v0 + vflcsb %v14, %v17 + +#CHECK: vflnsb %v0, %v0 # encoding: [0xe7,0x00,0x00,0x10,0x20,0xcc] +#CHECK: vflnsb %v0, %v15 # encoding: [0xe7,0x0f,0x00,0x10,0x20,0xcc] +#CHECK: vflnsb %v0, %v31 # encoding: [0xe7,0x0f,0x00,0x10,0x24,0xcc] +#CHECK: vflnsb %v15, %v0 # encoding: [0xe7,0xf0,0x00,0x10,0x20,0xcc] +#CHECK: vflnsb %v31, %v0 # encoding: [0xe7,0xf0,0x00,0x10,0x28,0xcc] +#CHECK: vflnsb %v14, %v17 # encoding: [0xe7,0xe1,0x00,0x10,0x24,0xcc] + + vflnsb %v0, %v0 + vflnsb %v0, %v15 + vflnsb %v0, %v31 + vflnsb %v15, %v0 + vflnsb %v31, %v0 + vflnsb %v14, %v17 + +#CHECK: vflpsb %v0, %v0 # encoding: [0xe7,0x00,0x00,0x20,0x20,0xcc] +#CHECK: vflpsb %v0, %v15 # encoding: [0xe7,0x0f,0x00,0x20,0x20,0xcc] +#CHECK: vflpsb %v0, %v31 # encoding: [0xe7,0x0f,0x00,0x20,0x24,0xcc] +#CHECK: vflpsb %v15, %v0 # encoding: [0xe7,0xf0,0x00,0x20,0x20,0xcc] +#CHECK: vflpsb %v31, %v0 # encoding: [0xe7,0xf0,0x00,0x20,0x28,0xcc] +#CHECK: vflpsb %v14, %v17 # encoding: [0xe7,0xe1,0x00,0x20,0x24,0xcc] + + vflpsb %v0, %v0 + vflpsb %v0, %v15 + vflpsb %v0, %v31 + vflpsb %v15, %v0 + vflpsb %v31, %v0 + vflpsb %v14, %v17 + +#CHECK: vfll %v0, %v0, 0, 0 # encoding: [0xe7,0x00,0x00,0x00,0x00,0xc4] +#CHECK: vfll %v0, %v0, 15, 0 # encoding: [0xe7,0x00,0x00,0x00,0xf0,0xc4] +#CHECK: vfll %v0, %v0, 0, 15 # encoding: [0xe7,0x00,0x00,0x0f,0x00,0xc4] +#CHECK: vfll %v0, %v15, 0, 0 # encoding: [0xe7,0x0f,0x00,0x00,0x00,0xc4] +#CHECK: vfll %v0, %v31, 0, 0 # encoding: [0xe7,0x0f,0x00,0x00,0x04,0xc4] +#CHECK: vfll %v15, %v0, 0, 0 # encoding: [0xe7,0xf0,0x00,0x00,0x00,0xc4] +#CHECK: vfll %v31, %v0, 0, 0 # encoding: [0xe7,0xf0,0x00,0x00,0x08,0xc4] +#CHECK: vfll %v14, %v17, 11, 9 # encoding: [0xe7,0xe1,0x00,0x09,0xb4,0xc4] + + vfll %v0, %v0, 0, 0 + vfll %v0, %v0, 15, 0 + vfll %v0, %v0, 0, 15 + vfll %v0, %v15, 0, 0 + vfll %v0, %v31, 0, 0 + vfll %v15, %v0, 0, 0 + vfll %v31, %v0, 0, 0 + vfll %v14, %v17, 11, 9 + +#CHECK: vflls %v0, %v0 # encoding: [0xe7,0x00,0x00,0x00,0x20,0xc4] +#CHECK: vflls %v0, %v15 # encoding: [0xe7,0x0f,0x00,0x00,0x20,0xc4] +#CHECK: vflls %v0, %v31 # encoding: [0xe7,0x0f,0x00,0x00,0x24,0xc4] +#CHECK: vflls %v15, %v0 # encoding: [0xe7,0xf0,0x00,0x00,0x20,0xc4] +#CHECK: vflls %v31, %v0 # encoding: [0xe7,0xf0,0x00,0x00,0x28,0xc4] +#CHECK: vflls %v14, %v17 # encoding: [0xe7,0xe1,0x00,0x00,0x24,0xc4] + + vflls %v0, %v0 + vflls %v0, %v15 + vflls %v0, %v31 + vflls %v15, %v0 + vflls %v31, %v0 + vflls %v14, %v17 + +#CHECK: vflr %v0, %v0, 0, 0, 0 # encoding: [0xe7,0x00,0x00,0x00,0x00,0xc5] +#CHECK: vflr %v0, %v0, 15, 0, 0 # encoding: [0xe7,0x00,0x00,0x00,0xf0,0xc5] +#CHECK: vflr %v0, %v0, 0, 0, 15 # encoding: [0xe7,0x00,0x00,0xf0,0x00,0xc5] +#CHECK: vflr %v0, %v0, 0, 4, 0 # encoding: [0xe7,0x00,0x00,0x04,0x00,0xc5] +#CHECK: vflr %v0, %v0, 0, 12, 0 # encoding: [0xe7,0x00,0x00,0x0c,0x00,0xc5] +#CHECK: vflr %v0, %v31, 0, 0, 0 # encoding: [0xe7,0x0f,0x00,0x00,0x04,0xc5] +#CHECK: vflr %v31, %v0, 0, 0, 0 # encoding: [0xe7,0xf0,0x00,0x00,0x08,0xc5] +#CHECK: vflr %v14, %v17, 11, 4, 10 # encoding: [0xe7,0xe1,0x00,0xa4,0xb4,0xc5] + + vflr %v0, %v0, 0, 0, 0 + vflr %v0, %v0, 15, 0, 0 + vflr %v0, %v0, 0, 0, 15 + vflr %v0, %v0, 0, 4, 0 + vflr %v0, %v0, 0, 12, 0 + vflr %v0, %v31, 0, 0, 0 + vflr %v31, %v0, 0, 0, 0 + vflr %v14, %v17, 11, 4, 10 + +#CHECK: vflrd %v0, %v0, 0, 0 # encoding: [0xe7,0x00,0x00,0x00,0x30,0xc5] +#CHECK: vflrd %v0, %v0, 0, 15 # encoding: [0xe7,0x00,0x00,0xf0,0x30,0xc5] +#CHECK: vflrd %v0, %v0, 4, 0 # encoding: [0xe7,0x00,0x00,0x04,0x30,0xc5] +#CHECK: vflrd %v0, %v0, 12, 0 # encoding: [0xe7,0x00,0x00,0x0c,0x30,0xc5] +#CHECK: vflrd %v0, %v31, 0, 0 # encoding: [0xe7,0x0f,0x00,0x00,0x34,0xc5] +#CHECK: vflrd %v31, %v0, 0, 0 # encoding: [0xe7,0xf0,0x00,0x00,0x38,0xc5] +#CHECK: vflrd %v14, %v17, 4, 10 # encoding: [0xe7,0xe1,0x00,0xa4,0x34,0xc5] + + vflrd %v0, %v0, 0, 0 + vflrd %v0, %v0, 0, 15 + vflrd %v0, %v0, 4, 0 + vflrd %v0, %v0, 12, 0 + vflrd %v0, %v31, 0, 0 + vflrd %v31, %v0, 0, 0 + vflrd %v14, %v17, 4, 10 + #CHECK: vfmax %v0, %v0, %v0, 0, 0, 0 # encoding: [0xe7,0x00,0x00,0x00,0x00,0xef] #CHECK: vfmax %v0, %v0, %v0, 15, 0, 0 # encoding: [0xe7,0x00,0x00,0x00,0xf0,0xef] #CHECK: vfmax %v0, %v0, %v0, 0, 15, 0 # encoding: [0xe7,0x00,0x00,0x0f,0x00,0xef] @@ -644,6 +952,20 @@ vfmaxdb %v31, %v0, %v0, 0 vfmaxdb %v18, %v3, %v20, 12 +#CHECK: vfmaxsb %v0, %v0, %v0, 0 # encoding: [0xe7,0x00,0x00,0x00,0x20,0xef] +#CHECK: vfmaxsb %v0, %v0, %v0, 4 # encoding: [0xe7,0x00,0x00,0x40,0x20,0xef] +#CHECK: vfmaxsb %v0, %v0, %v31, 0 # encoding: [0xe7,0x00,0xf0,0x00,0x22,0xef] +#CHECK: vfmaxsb %v0, %v31, %v0, 0 # encoding: [0xe7,0x0f,0x00,0x00,0x24,0xef] +#CHECK: vfmaxsb %v31, %v0, %v0, 0 # encoding: [0xe7,0xf0,0x00,0x00,0x28,0xef] +#CHECK: vfmaxsb %v18, %v3, %v20, 12 # encoding: [0xe7,0x23,0x40,0xc0,0x2a,0xef] + + vfmaxsb %v0, %v0, %v0, 0 + vfmaxsb %v0, %v0, %v0, 4 + vfmaxsb %v0, %v0, %v31, 0 + vfmaxsb %v0, %v31, %v0, 0 + vfmaxsb %v31, %v0, %v0, 0 + vfmaxsb %v18, %v3, %v20, 12 + #CHECK: vfmin %v0, %v0, %v0, 0, 0, 0 # encoding: [0xe7,0x00,0x00,0x00,0x00,0xee] #CHECK: vfmin %v0, %v0, %v0, 15, 0, 0 # encoding: [0xe7,0x00,0x00,0x00,0xf0,0xee] #CHECK: vfmin %v0, %v0, %v0, 0, 15, 0 # encoding: [0xe7,0x00,0x00,0x0f,0x00,0xee] @@ -676,6 +998,60 @@ vfmindb %v31, %v0, %v0, 0 vfmindb %v18, %v3, %v20, 12 +#CHECK: vfminsb %v0, %v0, %v0, 0 # encoding: [0xe7,0x00,0x00,0x00,0x20,0xee] +#CHECK: vfminsb %v0, %v0, %v0, 4 # encoding: [0xe7,0x00,0x00,0x40,0x20,0xee] +#CHECK: vfminsb %v0, %v0, %v31, 0 # encoding: [0xe7,0x00,0xf0,0x00,0x22,0xee] +#CHECK: vfminsb %v0, %v31, %v0, 0 # encoding: [0xe7,0x0f,0x00,0x00,0x24,0xee] +#CHECK: vfminsb %v31, %v0, %v0, 0 # encoding: [0xe7,0xf0,0x00,0x00,0x28,0xee] +#CHECK: vfminsb %v18, %v3, %v20, 12 # encoding: [0xe7,0x23,0x40,0xc0,0x2a,0xee] + + vfminsb %v0, %v0, %v0, 0 + vfminsb %v0, %v0, %v0, 4 + vfminsb %v0, %v0, %v31, 0 + vfminsb %v0, %v31, %v0, 0 + vfminsb %v31, %v0, %v0, 0 + vfminsb %v18, %v3, %v20, 12 + +#CHECK: vfmasb %v0, %v0, %v0, %v0 # encoding: [0xe7,0x00,0x02,0x00,0x00,0x8f] +#CHECK: vfmasb %v0, %v0, %v0, %v31 # encoding: [0xe7,0x00,0x02,0x00,0xf1,0x8f] +#CHECK: vfmasb %v0, %v0, %v31, %v0 # encoding: [0xe7,0x00,0xf2,0x00,0x02,0x8f] +#CHECK: vfmasb %v0, %v31, %v0, %v0 # encoding: [0xe7,0x0f,0x02,0x00,0x04,0x8f] +#CHECK: vfmasb %v31, %v0, %v0, %v0 # encoding: [0xe7,0xf0,0x02,0x00,0x08,0x8f] +#CHECK: vfmasb %v13, %v17, %v21, %v25 # encoding: [0xe7,0xd1,0x52,0x00,0x97,0x8f] + + vfmasb %v0, %v0, %v0, %v0 + vfmasb %v0, %v0, %v0, %v31 + vfmasb %v0, %v0, %v31, %v0 + vfmasb %v0, %v31, %v0, %v0 + vfmasb %v31, %v0, %v0, %v0 + vfmasb %v13, %v17, %v21, %v25 + +#CHECK: vfmsb %v0, %v0, %v0 # encoding: [0xe7,0x00,0x00,0x00,0x20,0xe7] +#CHECK: vfmsb %v0, %v0, %v31 # encoding: [0xe7,0x00,0xf0,0x00,0x22,0xe7] +#CHECK: vfmsb %v0, %v31, %v0 # encoding: [0xe7,0x0f,0x00,0x00,0x24,0xe7] +#CHECK: vfmsb %v31, %v0, %v0 # encoding: [0xe7,0xf0,0x00,0x00,0x28,0xe7] +#CHECK: vfmsb %v18, %v3, %v20 # encoding: [0xe7,0x23,0x40,0x00,0x2a,0xe7] + + vfmsb %v0, %v0, %v0 + vfmsb %v0, %v0, %v31 + vfmsb %v0, %v31, %v0 + vfmsb %v31, %v0, %v0 + vfmsb %v18, %v3, %v20 + +#CHECK: vfmssb %v0, %v0, %v0, %v0 # encoding: [0xe7,0x00,0x02,0x00,0x00,0x8e] +#CHECK: vfmssb %v0, %v0, %v0, %v31 # encoding: [0xe7,0x00,0x02,0x00,0xf1,0x8e] +#CHECK: vfmssb %v0, %v0, %v31, %v0 # encoding: [0xe7,0x00,0xf2,0x00,0x02,0x8e] +#CHECK: vfmssb %v0, %v31, %v0, %v0 # encoding: [0xe7,0x0f,0x02,0x00,0x04,0x8e] +#CHECK: vfmssb %v31, %v0, %v0, %v0 # encoding: [0xe7,0xf0,0x02,0x00,0x08,0x8e] +#CHECK: vfmssb %v13, %v17, %v21, %v25 # encoding: [0xe7,0xd1,0x52,0x00,0x97,0x8e] + + vfmssb %v0, %v0, %v0, %v0 + vfmssb %v0, %v0, %v0, %v31 + vfmssb %v0, %v0, %v31, %v0 + vfmssb %v0, %v31, %v0, %v0 + vfmssb %v31, %v0, %v0, %v0 + vfmssb %v13, %v17, %v21, %v25 + #CHECK: vfnma %v0, %v0, %v0, %v0, 0, 0 # encoding: [0xe7,0x00,0x00,0x00,0x00,0x9f] #CHECK: vfnma %v0, %v0, %v0, %v0, 0, 15 # encoding: [0xe7,0x00,0x0f,0x00,0x00,0x9f] #CHECK: vfnma %v0, %v0, %v0, %v0, 15, 0 # encoding: [0xe7,0x00,0x00,0x0f,0x00,0x9f] @@ -708,6 +1084,20 @@ vfnmadb %v31, %v0, %v0, %v0 vfnmadb %v13, %v17, %v21, %v25 +#CHECK: vfnmasb %v0, %v0, %v0, %v0 # encoding: [0xe7,0x00,0x02,0x00,0x00,0x9f] +#CHECK: vfnmasb %v0, %v0, %v0, %v31 # encoding: [0xe7,0x00,0x02,0x00,0xf1,0x9f] +#CHECK: vfnmasb %v0, %v0, %v31, %v0 # encoding: [0xe7,0x00,0xf2,0x00,0x02,0x9f] +#CHECK: vfnmasb %v0, %v31, %v0, %v0 # encoding: [0xe7,0x0f,0x02,0x00,0x04,0x9f] +#CHECK: vfnmasb %v31, %v0, %v0, %v0 # encoding: [0xe7,0xf0,0x02,0x00,0x08,0x9f] +#CHECK: vfnmasb %v13, %v17, %v21, %v25 # encoding: [0xe7,0xd1,0x52,0x00,0x97,0x9f] + + vfnmasb %v0, %v0, %v0, %v0 + vfnmasb %v0, %v0, %v0, %v31 + vfnmasb %v0, %v0, %v31, %v0 + vfnmasb %v0, %v31, %v0, %v0 + vfnmasb %v31, %v0, %v0, %v0 + vfnmasb %v13, %v17, %v21, %v25 + #CHECK: vfnms %v0, %v0, %v0, %v0, 0, 0 # encoding: [0xe7,0x00,0x00,0x00,0x00,0x9e] #CHECK: vfnms %v0, %v0, %v0, %v0, 0, 15 # encoding: [0xe7,0x00,0x0f,0x00,0x00,0x9e] #CHECK: vfnms %v0, %v0, %v0, %v0, 15, 0 # encoding: [0xe7,0x00,0x00,0x0f,0x00,0x9e] @@ -740,6 +1130,62 @@ vfnmsdb %v31, %v0, %v0, %v0 vfnmsdb %v13, %v17, %v21, %v25 +#CHECK: vfnmssb %v0, %v0, %v0, %v0 # encoding: [0xe7,0x00,0x02,0x00,0x00,0x9e] +#CHECK: vfnmssb %v0, %v0, %v0, %v31 # encoding: [0xe7,0x00,0x02,0x00,0xf1,0x9e] +#CHECK: vfnmssb %v0, %v0, %v31, %v0 # encoding: [0xe7,0x00,0xf2,0x00,0x02,0x9e] +#CHECK: vfnmssb %v0, %v31, %v0, %v0 # encoding: [0xe7,0x0f,0x02,0x00,0x04,0x9e] +#CHECK: vfnmssb %v31, %v0, %v0, %v0 # encoding: [0xe7,0xf0,0x02,0x00,0x08,0x9e] +#CHECK: vfnmssb %v13, %v17, %v21, %v25 # encoding: [0xe7,0xd1,0x52,0x00,0x97,0x9e] + + vfnmssb %v0, %v0, %v0, %v0 + vfnmssb %v0, %v0, %v0, %v31 + vfnmssb %v0, %v0, %v31, %v0 + vfnmssb %v0, %v31, %v0, %v0 + vfnmssb %v31, %v0, %v0, %v0 + vfnmssb %v13, %v17, %v21, %v25 + +#CHECK: vfssb %v0, %v0, %v0 # encoding: [0xe7,0x00,0x00,0x00,0x20,0xe2] +#CHECK: vfssb %v0, %v0, %v31 # encoding: [0xe7,0x00,0xf0,0x00,0x22,0xe2] +#CHECK: vfssb %v0, %v31, %v0 # encoding: [0xe7,0x0f,0x00,0x00,0x24,0xe2] +#CHECK: vfssb %v31, %v0, %v0 # encoding: [0xe7,0xf0,0x00,0x00,0x28,0xe2] +#CHECK: vfssb %v18, %v3, %v20 # encoding: [0xe7,0x23,0x40,0x00,0x2a,0xe2] + + vfssb %v0, %v0, %v0 + vfssb %v0, %v0, %v31 + vfssb %v0, %v31, %v0 + vfssb %v31, %v0, %v0 + vfssb %v18, %v3, %v20 + +#CHECK: vfsqsb %v0, %v0 # encoding: [0xe7,0x00,0x00,0x00,0x20,0xce] +#CHECK: vfsqsb %v0, %v15 # encoding: [0xe7,0x0f,0x00,0x00,0x20,0xce] +#CHECK: vfsqsb %v0, %v31 # encoding: [0xe7,0x0f,0x00,0x00,0x24,0xce] +#CHECK: vfsqsb %v15, %v0 # encoding: [0xe7,0xf0,0x00,0x00,0x20,0xce] +#CHECK: vfsqsb %v31, %v0 # encoding: [0xe7,0xf0,0x00,0x00,0x28,0xce] +#CHECK: vfsqsb %v14, %v17 # encoding: [0xe7,0xe1,0x00,0x00,0x24,0xce] + + vfsqsb %v0, %v0 + vfsqsb %v0, %v15 + vfsqsb %v0, %v31 + vfsqsb %v15, %v0 + vfsqsb %v31, %v0 + vfsqsb %v14, %v17 + +#CHECK: vftcisb %v0, %v0, 0 # encoding: [0xe7,0x00,0x00,0x00,0x20,0x4a] +#CHECK: vftcisb %v0, %v0, 4095 # encoding: [0xe7,0x00,0xff,0xf0,0x20,0x4a] +#CHECK: vftcisb %v0, %v15, 0 # encoding: [0xe7,0x0f,0x00,0x00,0x20,0x4a] +#CHECK: vftcisb %v0, %v31, 0 # encoding: [0xe7,0x0f,0x00,0x00,0x24,0x4a] +#CHECK: vftcisb %v15, %v0, 0 # encoding: [0xe7,0xf0,0x00,0x00,0x20,0x4a] +#CHECK: vftcisb %v31, %v0, 0 # encoding: [0xe7,0xf0,0x00,0x00,0x28,0x4a] +#CHECK: vftcisb %v4, %v21, 1656 # encoding: [0xe7,0x45,0x67,0x80,0x24,0x4a] + + vftcisb %v0, %v0, 0 + vftcisb %v0, %v0, 4095 + vftcisb %v0, %v15, 0 + vftcisb %v0, %v31, 0 + vftcisb %v15, %v0, 0 + vftcisb %v31, %v0, 0 + vftcisb %v4, %v21, 0x678 + #CHECK: vlip %v0, 0, 0 # encoding: [0xe6,0x00,0x00,0x00,0x00,0x49] #CHECK: vlip %v0, 0, 15 # encoding: [0xe6,0x00,0x00,0x00,0xf0,0x49] #CHECK: vlip %v0, 65535, 0 # encoding: [0xe6,0x00,0xff,0xff,0x00,0x49] @@ -1132,6 +1578,168 @@ vupkz %v31, 0, 0 vupkz %v18, 1383(%r4), 3 +#CHECK: wfasb %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x08,0x20,0xe3] +#CHECK: wfasb %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x08,0x20,0xe3] +#CHECK: wfasb %f0, %f0, %v31 # encoding: [0xe7,0x00,0xf0,0x08,0x22,0xe3] +#CHECK: wfasb %f0, %v31, %f0 # encoding: [0xe7,0x0f,0x00,0x08,0x24,0xe3] +#CHECK: wfasb %v31, %f0, %f0 # encoding: [0xe7,0xf0,0x00,0x08,0x28,0xe3] +#CHECK: wfasb %v18, %f3, %v20 # encoding: [0xe7,0x23,0x40,0x08,0x2a,0xe3] + + wfasb %v0, %v0, %v0 + wfasb %f0, %f0, %f0 + wfasb %v0, %v0, %v31 + wfasb %v0, %v31, %v0 + wfasb %v31, %v0, %v0 + wfasb %v18, %v3, %v20 + +#CHECK: wfcsb %f0, %f0 # encoding: [0xe7,0x00,0x00,0x00,0x20,0xcb] +#CHECK: wfcsb %f0, %f0 # encoding: [0xe7,0x00,0x00,0x00,0x20,0xcb] +#CHECK: wfcsb %f0, %f15 # encoding: [0xe7,0x0f,0x00,0x00,0x20,0xcb] +#CHECK: wfcsb %f0, %v31 # encoding: [0xe7,0x0f,0x00,0x00,0x24,0xcb] +#CHECK: wfcsb %f15, %f0 # encoding: [0xe7,0xf0,0x00,0x00,0x20,0xcb] +#CHECK: wfcsb %v31, %f0 # encoding: [0xe7,0xf0,0x00,0x00,0x28,0xcb] +#CHECK: wfcsb %f14, %v17 # encoding: [0xe7,0xe1,0x00,0x00,0x24,0xcb] + + wfcsb %v0, %v0 + wfcsb %f0, %f0 + wfcsb %v0, %v15 + wfcsb %v0, %v31 + wfcsb %v15, %v0 + wfcsb %v31, %v0 + wfcsb %v14, %v17 + +#CHECK: wfcesb %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x08,0x20,0xe8] +#CHECK: wfcesb %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x08,0x20,0xe8] +#CHECK: wfcesb %f0, %f0, %v31 # encoding: [0xe7,0x00,0xf0,0x08,0x22,0xe8] +#CHECK: wfcesb %f0, %v31, %f0 # encoding: [0xe7,0x0f,0x00,0x08,0x24,0xe8] +#CHECK: wfcesb %v31, %f0, %f0 # encoding: [0xe7,0xf0,0x00,0x08,0x28,0xe8] +#CHECK: wfcesb %v18, %f3, %v20 # encoding: [0xe7,0x23,0x40,0x08,0x2a,0xe8] + + wfcesb %v0, %v0, %v0 + wfcesb %f0, %f0, %f0 + wfcesb %v0, %v0, %v31 + wfcesb %v0, %v31, %v0 + wfcesb %v31, %v0, %v0 + wfcesb %v18, %v3, %v20 + +#CHECK: wfcesbs %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x18,0x20,0xe8] +#CHECK: wfcesbs %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x18,0x20,0xe8] +#CHECK: wfcesbs %f0, %f0, %v31 # encoding: [0xe7,0x00,0xf0,0x18,0x22,0xe8] +#CHECK: wfcesbs %f0, %v31, %f0 # encoding: [0xe7,0x0f,0x00,0x18,0x24,0xe8] +#CHECK: wfcesbs %v31, %f0, %f0 # encoding: [0xe7,0xf0,0x00,0x18,0x28,0xe8] +#CHECK: wfcesbs %v18, %f3, %v20 # encoding: [0xe7,0x23,0x40,0x18,0x2a,0xe8] + + wfcesbs %v0, %v0, %v0 + wfcesbs %f0, %f0, %f0 + wfcesbs %v0, %v0, %v31 + wfcesbs %v0, %v31, %v0 + wfcesbs %v31, %v0, %v0 + wfcesbs %v18, %v3, %v20 + +#CHECK: wfchsb %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x08,0x20,0xeb] +#CHECK: wfchsb %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x08,0x20,0xeb] +#CHECK: wfchsb %f0, %f0, %v31 # encoding: [0xe7,0x00,0xf0,0x08,0x22,0xeb] +#CHECK: wfchsb %f0, %v31, %f0 # encoding: [0xe7,0x0f,0x00,0x08,0x24,0xeb] +#CHECK: wfchsb %v31, %f0, %f0 # encoding: [0xe7,0xf0,0x00,0x08,0x28,0xeb] +#CHECK: wfchsb %v18, %f3, %v20 # encoding: [0xe7,0x23,0x40,0x08,0x2a,0xeb] + + wfchsb %v0, %v0, %v0 + wfchsb %f0, %f0, %f0 + wfchsb %v0, %v0, %v31 + wfchsb %v0, %v31, %v0 + wfchsb %v31, %v0, %v0 + wfchsb %v18, %v3, %v20 + +#CHECK: wfchsbs %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x18,0x20,0xeb] +#CHECK: wfchsbs %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x18,0x20,0xeb] +#CHECK: wfchsbs %f0, %f0, %v31 # encoding: [0xe7,0x00,0xf0,0x18,0x22,0xeb] +#CHECK: wfchsbs %f0, %v31, %f0 # encoding: [0xe7,0x0f,0x00,0x18,0x24,0xeb] +#CHECK: wfchsbs %v31, %f0, %f0 # encoding: [0xe7,0xf0,0x00,0x18,0x28,0xeb] +#CHECK: wfchsbs %v18, %f3, %v20 # encoding: [0xe7,0x23,0x40,0x18,0x2a,0xeb] + + wfchsbs %v0, %v0, %v0 + wfchsbs %f0, %f0, %f0 + wfchsbs %v0, %v0, %v31 + wfchsbs %v0, %v31, %v0 + wfchsbs %v31, %v0, %v0 + wfchsbs %v18, %v3, %v20 + +#CHECK: wfchesb %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x08,0x20,0xea] +#CHECK: wfchesb %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x08,0x20,0xea] +#CHECK: wfchesb %f0, %f0, %v31 # encoding: [0xe7,0x00,0xf0,0x08,0x22,0xea] +#CHECK: wfchesb %f0, %v31, %f0 # encoding: [0xe7,0x0f,0x00,0x08,0x24,0xea] +#CHECK: wfchesb %v31, %f0, %f0 # encoding: [0xe7,0xf0,0x00,0x08,0x28,0xea] +#CHECK: wfchesb %v18, %f3, %v20 # encoding: [0xe7,0x23,0x40,0x08,0x2a,0xea] + + wfchesb %v0, %v0, %v0 + wfchesb %f0, %f0, %f0 + wfchesb %v0, %v0, %v31 + wfchesb %v0, %v31, %v0 + wfchesb %v31, %v0, %v0 + wfchesb %v18, %v3, %v20 + +#CHECK: wfchesbs %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x18,0x20,0xea] +#CHECK: wfchesbs %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x18,0x20,0xea] +#CHECK: wfchesbs %f0, %f0, %v31 # encoding: [0xe7,0x00,0xf0,0x18,0x22,0xea] +#CHECK: wfchesbs %f0, %v31, %f0 # encoding: [0xe7,0x0f,0x00,0x18,0x24,0xea] +#CHECK: wfchesbs %v31, %f0, %f0 # encoding: [0xe7,0xf0,0x00,0x18,0x28,0xea] +#CHECK: wfchesbs %v18, %f3, %v20 # encoding: [0xe7,0x23,0x40,0x18,0x2a,0xea] + + wfchesbs %v0, %v0, %v0 + wfchesbs %f0, %f0, %f0 + wfchesbs %v0, %v0, %v31 + wfchesbs %v0, %v31, %v0 + wfchesbs %v31, %v0, %v0 + wfchesbs %v18, %v3, %v20 + +#CHECK: wfdsb %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x08,0x20,0xe5] +#CHECK: wfdsb %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x08,0x20,0xe5] +#CHECK: wfdsb %f0, %f0, %v31 # encoding: [0xe7,0x00,0xf0,0x08,0x22,0xe5] +#CHECK: wfdsb %f0, %v31, %f0 # encoding: [0xe7,0x0f,0x00,0x08,0x24,0xe5] +#CHECK: wfdsb %v31, %f0, %f0 # encoding: [0xe7,0xf0,0x00,0x08,0x28,0xe5] +#CHECK: wfdsb %v18, %f3, %v20 # encoding: [0xe7,0x23,0x40,0x08,0x2a,0xe5] + + wfdsb %v0, %v0, %v0 + wfdsb %f0, %f0, %f0 + wfdsb %v0, %v0, %v31 + wfdsb %v0, %v31, %v0 + wfdsb %v31, %v0, %v0 + wfdsb %v18, %v3, %v20 + +#CHECK: wfisb %f0, %f0, 0, 0 # encoding: [0xe7,0x00,0x00,0x08,0x20,0xc7] +#CHECK: wfisb %f0, %f0, 0, 0 # encoding: [0xe7,0x00,0x00,0x08,0x20,0xc7] +#CHECK: wfisb %f0, %f0, 0, 15 # encoding: [0xe7,0x00,0x00,0xf8,0x20,0xc7] +#CHECK: wfisb %f0, %f0, 4, 0 # encoding: [0xe7,0x00,0x00,0x0c,0x20,0xc7] +#CHECK: wfisb %f0, %f0, 7, 0 # encoding: [0xe7,0x00,0x00,0x0f,0x20,0xc7] +#CHECK: wfisb %f0, %v31, 0, 0 # encoding: [0xe7,0x0f,0x00,0x08,0x24,0xc7] +#CHECK: wfisb %v31, %f0, 0, 0 # encoding: [0xe7,0xf0,0x00,0x08,0x28,0xc7] +#CHECK: wfisb %f14, %v17, 4, 10 # encoding: [0xe7,0xe1,0x00,0xac,0x24,0xc7] + + wfisb %v0, %v0, 0, 0 + wfisb %f0, %f0, 0, 0 + wfisb %v0, %v0, 0, 15 + wfisb %v0, %v0, 4, 0 + wfisb %v0, %v0, 7, 0 + wfisb %v0, %v31, 0, 0 + wfisb %v31, %v0, 0, 0 + wfisb %v14, %v17, 4, 10 + +#CHECK: wfksb %f0, %f0 # encoding: [0xe7,0x00,0x00,0x00,0x20,0xca] +#CHECK: wfksb %f0, %f0 # encoding: [0xe7,0x00,0x00,0x00,0x20,0xca] +#CHECK: wfksb %f0, %f15 # encoding: [0xe7,0x0f,0x00,0x00,0x20,0xca] +#CHECK: wfksb %f0, %v31 # encoding: [0xe7,0x0f,0x00,0x00,0x24,0xca] +#CHECK: wfksb %f15, %f0 # encoding: [0xe7,0xf0,0x00,0x00,0x20,0xca] +#CHECK: wfksb %v31, %f0 # encoding: [0xe7,0xf0,0x00,0x00,0x28,0xca] +#CHECK: wfksb %f14, %v17 # encoding: [0xe7,0xe1,0x00,0x00,0x24,0xca] + + wfksb %v0, %v0 + wfksb %f0, %f0 + wfksb %v0, %v15 + wfksb %v0, %v31 + wfksb %v15, %v0 + wfksb %v31, %v0 + wfksb %v14, %v17 + #CHECK: wfkedb %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x0c,0x30,0xe8] #CHECK: wfkedb %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x0c,0x30,0xe8] #CHECK: wfkedb %f0, %f0, %v31 # encoding: [0xe7,0x00,0xf0,0x0c,0x32,0xe8] @@ -1160,6 +1768,34 @@ wfkedbs %v31, %v0, %v0 wfkedbs %v18, %v3, %v20 +#CHECK: wfkesb %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x0c,0x20,0xe8] +#CHECK: wfkesb %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x0c,0x20,0xe8] +#CHECK: wfkesb %f0, %f0, %v31 # encoding: [0xe7,0x00,0xf0,0x0c,0x22,0xe8] +#CHECK: wfkesb %f0, %v31, %f0 # encoding: [0xe7,0x0f,0x00,0x0c,0x24,0xe8] +#CHECK: wfkesb %v31, %f0, %f0 # encoding: [0xe7,0xf0,0x00,0x0c,0x28,0xe8] +#CHECK: wfkesb %v18, %f3, %v20 # encoding: [0xe7,0x23,0x40,0x0c,0x2a,0xe8] + + wfkesb %v0, %v0, %v0 + wfkesb %f0, %f0, %f0 + wfkesb %v0, %v0, %v31 + wfkesb %v0, %v31, %v0 + wfkesb %v31, %v0, %v0 + wfkesb %v18, %v3, %v20 + +#CHECK: wfkesbs %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x1c,0x20,0xe8] +#CHECK: wfkesbs %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x1c,0x20,0xe8] +#CHECK: wfkesbs %f0, %f0, %v31 # encoding: [0xe7,0x00,0xf0,0x1c,0x22,0xe8] +#CHECK: wfkesbs %f0, %v31, %f0 # encoding: [0xe7,0x0f,0x00,0x1c,0x24,0xe8] +#CHECK: wfkesbs %v31, %f0, %f0 # encoding: [0xe7,0xf0,0x00,0x1c,0x28,0xe8] +#CHECK: wfkesbs %v18, %f3, %v20 # encoding: [0xe7,0x23,0x40,0x1c,0x2a,0xe8] + + wfkesbs %v0, %v0, %v0 + wfkesbs %f0, %f0, %f0 + wfkesbs %v0, %v0, %v31 + wfkesbs %v0, %v31, %v0 + wfkesbs %v31, %v0, %v0 + wfkesbs %v18, %v3, %v20 + #CHECK: wfkhdb %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x0c,0x30,0xeb] #CHECK: wfkhdb %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x0c,0x30,0xeb] #CHECK: wfkhdb %f0, %f0, %v31 # encoding: [0xe7,0x00,0xf0,0x0c,0x32,0xeb] @@ -1188,6 +1824,34 @@ wfkhdbs %v31, %v0, %v0 wfkhdbs %v18, %v3, %v20 +#CHECK: wfkhsb %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x0c,0x20,0xeb] +#CHECK: wfkhsb %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x0c,0x20,0xeb] +#CHECK: wfkhsb %f0, %f0, %v31 # encoding: [0xe7,0x00,0xf0,0x0c,0x22,0xeb] +#CHECK: wfkhsb %f0, %v31, %f0 # encoding: [0xe7,0x0f,0x00,0x0c,0x24,0xeb] +#CHECK: wfkhsb %v31, %f0, %f0 # encoding: [0xe7,0xf0,0x00,0x0c,0x28,0xeb] +#CHECK: wfkhsb %v18, %f3, %v20 # encoding: [0xe7,0x23,0x40,0x0c,0x2a,0xeb] + + wfkhsb %v0, %v0, %v0 + wfkhsb %f0, %f0, %f0 + wfkhsb %v0, %v0, %v31 + wfkhsb %v0, %v31, %v0 + wfkhsb %v31, %v0, %v0 + wfkhsb %v18, %v3, %v20 + +#CHECK: wfkhsbs %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x1c,0x20,0xeb] +#CHECK: wfkhsbs %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x1c,0x20,0xeb] +#CHECK: wfkhsbs %f0, %f0, %v31 # encoding: [0xe7,0x00,0xf0,0x1c,0x22,0xeb] +#CHECK: wfkhsbs %f0, %v31, %f0 # encoding: [0xe7,0x0f,0x00,0x1c,0x24,0xeb] +#CHECK: wfkhsbs %v31, %f0, %f0 # encoding: [0xe7,0xf0,0x00,0x1c,0x28,0xeb] +#CHECK: wfkhsbs %v18, %f3, %v20 # encoding: [0xe7,0x23,0x40,0x1c,0x2a,0xeb] + + wfkhsbs %v0, %v0, %v0 + wfkhsbs %f0, %f0, %f0 + wfkhsbs %v0, %v0, %v31 + wfkhsbs %v0, %v31, %v0 + wfkhsbs %v31, %v0, %v0 + wfkhsbs %v18, %v3, %v20 + #CHECK: wfkhedb %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x0c,0x30,0xea] #CHECK: wfkhedb %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x0c,0x30,0xea] #CHECK: wfkhedb %f0, %f0, %v31 # encoding: [0xe7,0x00,0xf0,0x0c,0x32,0xea] @@ -1216,6 +1880,134 @@ wfkhedbs %v31, %v0, %v0 wfkhedbs %v18, %v3, %v20 +#CHECK: wfkhesb %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x0c,0x20,0xea] +#CHECK: wfkhesb %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x0c,0x20,0xea] +#CHECK: wfkhesb %f0, %f0, %v31 # encoding: [0xe7,0x00,0xf0,0x0c,0x22,0xea] +#CHECK: wfkhesb %f0, %v31, %f0 # encoding: [0xe7,0x0f,0x00,0x0c,0x24,0xea] +#CHECK: wfkhesb %v31, %f0, %f0 # encoding: [0xe7,0xf0,0x00,0x0c,0x28,0xea] +#CHECK: wfkhesb %v18, %f3, %v20 # encoding: [0xe7,0x23,0x40,0x0c,0x2a,0xea] + + wfkhesb %v0, %v0, %v0 + wfkhesb %f0, %f0, %f0 + wfkhesb %v0, %v0, %v31 + wfkhesb %v0, %v31, %v0 + wfkhesb %v31, %v0, %v0 + wfkhesb %v18, %v3, %v20 + +#CHECK: wfkhesbs %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x1c,0x20,0xea] +#CHECK: wfkhesbs %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x1c,0x20,0xea] +#CHECK: wfkhesbs %f0, %f0, %v31 # encoding: [0xe7,0x00,0xf0,0x1c,0x22,0xea] +#CHECK: wfkhesbs %f0, %v31, %f0 # encoding: [0xe7,0x0f,0x00,0x1c,0x24,0xea] +#CHECK: wfkhesbs %v31, %f0, %f0 # encoding: [0xe7,0xf0,0x00,0x1c,0x28,0xea] +#CHECK: wfkhesbs %v18, %f3, %v20 # encoding: [0xe7,0x23,0x40,0x1c,0x2a,0xea] + + wfkhesbs %v0, %v0, %v0 + wfkhesbs %f0, %f0, %f0 + wfkhesbs %v0, %v0, %v31 + wfkhesbs %v0, %v31, %v0 + wfkhesbs %v31, %v0, %v0 + wfkhesbs %v18, %v3, %v20 + +#CHECK: wfpsosb %f0, %f0, 3 # encoding: [0xe7,0x00,0x00,0x38,0x20,0xcc] +#CHECK: wfpsosb %f0, %f0, 3 # encoding: [0xe7,0x00,0x00,0x38,0x20,0xcc] +#CHECK: wfpsosb %f0, %f0, 15 # encoding: [0xe7,0x00,0x00,0xf8,0x20,0xcc] +#CHECK: wfpsosb %f0, %f15, 3 # encoding: [0xe7,0x0f,0x00,0x38,0x20,0xcc] +#CHECK: wfpsosb %f0, %v31, 3 # encoding: [0xe7,0x0f,0x00,0x38,0x24,0xcc] +#CHECK: wfpsosb %f15, %f0, 3 # encoding: [0xe7,0xf0,0x00,0x38,0x20,0xcc] +#CHECK: wfpsosb %v31, %f0, 3 # encoding: [0xe7,0xf0,0x00,0x38,0x28,0xcc] +#CHECK: wfpsosb %f14, %v17, 7 # encoding: [0xe7,0xe1,0x00,0x78,0x24,0xcc] + + wfpsosb %v0, %v0, 3 + wfpsosb %f0, %f0, 3 + wfpsosb %v0, %v0, 15 + wfpsosb %v0, %v15, 3 + wfpsosb %v0, %v31, 3 + wfpsosb %v15, %v0, 3 + wfpsosb %v31, %v0, 3 + wfpsosb %v14, %v17, 7 + +#CHECK: wflcsb %f0, %f0 # encoding: [0xe7,0x00,0x00,0x08,0x20,0xcc] +#CHECK: wflcsb %f0, %f0 # encoding: [0xe7,0x00,0x00,0x08,0x20,0xcc] +#CHECK: wflcsb %f0, %f15 # encoding: [0xe7,0x0f,0x00,0x08,0x20,0xcc] +#CHECK: wflcsb %f0, %v31 # encoding: [0xe7,0x0f,0x00,0x08,0x24,0xcc] +#CHECK: wflcsb %f15, %f0 # encoding: [0xe7,0xf0,0x00,0x08,0x20,0xcc] +#CHECK: wflcsb %v31, %f0 # encoding: [0xe7,0xf0,0x00,0x08,0x28,0xcc] +#CHECK: wflcsb %f14, %v17 # encoding: [0xe7,0xe1,0x00,0x08,0x24,0xcc] + + wflcsb %v0, %v0 + wflcsb %f0, %f0 + wflcsb %v0, %v15 + wflcsb %v0, %v31 + wflcsb %v15, %v0 + wflcsb %v31, %v0 + wflcsb %v14, %v17 + +#CHECK: wflnsb %f0, %f0 # encoding: [0xe7,0x00,0x00,0x18,0x20,0xcc] +#CHECK: wflnsb %f0, %f0 # encoding: [0xe7,0x00,0x00,0x18,0x20,0xcc] +#CHECK: wflnsb %f0, %f15 # encoding: [0xe7,0x0f,0x00,0x18,0x20,0xcc] +#CHECK: wflnsb %f0, %v31 # encoding: [0xe7,0x0f,0x00,0x18,0x24,0xcc] +#CHECK: wflnsb %f15, %f0 # encoding: [0xe7,0xf0,0x00,0x18,0x20,0xcc] +#CHECK: wflnsb %v31, %f0 # encoding: [0xe7,0xf0,0x00,0x18,0x28,0xcc] +#CHECK: wflnsb %f14, %v17 # encoding: [0xe7,0xe1,0x00,0x18,0x24,0xcc] + + wflnsb %v0, %v0 + wflnsb %f0, %f0 + wflnsb %v0, %v15 + wflnsb %v0, %v31 + wflnsb %v15, %v0 + wflnsb %v31, %v0 + wflnsb %v14, %v17 + +#CHECK: wflpsb %f0, %f0 # encoding: [0xe7,0x00,0x00,0x28,0x20,0xcc] +#CHECK: wflpsb %f0, %f0 # encoding: [0xe7,0x00,0x00,0x28,0x20,0xcc] +#CHECK: wflpsb %f0, %f15 # encoding: [0xe7,0x0f,0x00,0x28,0x20,0xcc] +#CHECK: wflpsb %f0, %v31 # encoding: [0xe7,0x0f,0x00,0x28,0x24,0xcc] +#CHECK: wflpsb %f15, %f0 # encoding: [0xe7,0xf0,0x00,0x28,0x20,0xcc] +#CHECK: wflpsb %v31, %f0 # encoding: [0xe7,0xf0,0x00,0x28,0x28,0xcc] +#CHECK: wflpsb %f14, %v17 # encoding: [0xe7,0xe1,0x00,0x28,0x24,0xcc] + + wflpsb %v0, %v0 + wflpsb %f0, %f0 + wflpsb %v0, %v15 + wflpsb %v0, %v31 + wflpsb %v15, %v0 + wflpsb %v31, %v0 + wflpsb %v14, %v17 + +#CHECK: wflls %f0, %f0 # encoding: [0xe7,0x00,0x00,0x08,0x20,0xc4] +#CHECK: wflls %f0, %f0 # encoding: [0xe7,0x00,0x00,0x08,0x20,0xc4] +#CHECK: wflls %f0, %f15 # encoding: [0xe7,0x0f,0x00,0x08,0x20,0xc4] +#CHECK: wflls %f0, %v31 # encoding: [0xe7,0x0f,0x00,0x08,0x24,0xc4] +#CHECK: wflls %f15, %f0 # encoding: [0xe7,0xf0,0x00,0x08,0x20,0xc4] +#CHECK: wflls %v31, %f0 # encoding: [0xe7,0xf0,0x00,0x08,0x28,0xc4] +#CHECK: wflls %f14, %v17 # encoding: [0xe7,0xe1,0x00,0x08,0x24,0xc4] + + wflls %v0, %v0 + wflls %f0, %f0 + wflls %v0, %v15 + wflls %v0, %v31 + wflls %v15, %v0 + wflls %v31, %v0 + wflls %v14, %v17 + +#CHECK: wflrd %f0, %f0, 0, 0 # encoding: [0xe7,0x00,0x00,0x08,0x30,0xc5] +#CHECK: wflrd %f0, %f0, 0, 0 # encoding: [0xe7,0x00,0x00,0x08,0x30,0xc5] +#CHECK: wflrd %f0, %f0, 0, 15 # encoding: [0xe7,0x00,0x00,0xf8,0x30,0xc5] +#CHECK: wflrd %f0, %f0, 4, 0 # encoding: [0xe7,0x00,0x00,0x0c,0x30,0xc5] +#CHECK: wflrd %f0, %f0, 12, 0 # encoding: [0xe7,0x00,0x00,0x0c,0x30,0xc5] +#CHECK: wflrd %f0, %v31, 0, 0 # encoding: [0xe7,0x0f,0x00,0x08,0x34,0xc5] +#CHECK: wflrd %v31, %f0, 0, 0 # encoding: [0xe7,0xf0,0x00,0x08,0x38,0xc5] +#CHECK: wflrd %f14, %v17, 4, 10 # encoding: [0xe7,0xe1,0x00,0xac,0x34,0xc5] + + wflrd %v0, %v0, 0, 0 + wflrd %f0, %f0, 0, 0 + wflrd %v0, %v0, 0, 15 + wflrd %v0, %v0, 4, 0 + wflrd %v0, %v0, 12, 0 + wflrd %v0, %v31, 0, 0 + wflrd %v31, %v0, 0, 0 + wflrd %v14, %v17, 4, 10 + #CHECK: wfmaxdb %f0, %f0, %f0, 0 # encoding: [0xe7,0x00,0x00,0x08,0x30,0xef] #CHECK: wfmaxdb %f0, %f0, %f0, 0 # encoding: [0xe7,0x00,0x00,0x08,0x30,0xef] #CHECK: wfmaxdb %f0, %f0, %f0, 4 # encoding: [0xe7,0x00,0x00,0x48,0x30,0xef] @@ -1232,6 +2024,22 @@ wfmaxdb %v31, %v0, %v0, 0 wfmaxdb %v18, %v3, %v20, 11 +#CHECK: wfmaxsb %f0, %f0, %f0, 0 # encoding: [0xe7,0x00,0x00,0x08,0x20,0xef] +#CHECK: wfmaxsb %f0, %f0, %f0, 0 # encoding: [0xe7,0x00,0x00,0x08,0x20,0xef] +#CHECK: wfmaxsb %f0, %f0, %f0, 4 # encoding: [0xe7,0x00,0x00,0x48,0x20,0xef] +#CHECK: wfmaxsb %f0, %f0, %v31, 0 # encoding: [0xe7,0x00,0xf0,0x08,0x22,0xef] +#CHECK: wfmaxsb %f0, %v31, %f0, 0 # encoding: [0xe7,0x0f,0x00,0x08,0x24,0xef] +#CHECK: wfmaxsb %v31, %f0, %f0, 0 # encoding: [0xe7,0xf0,0x00,0x08,0x28,0xef] +#CHECK: wfmaxsb %v18, %f3, %v20, 11 # encoding: [0xe7,0x23,0x40,0xb8,0x2a,0xef] + + wfmaxsb %v0, %v0, %v0, 0 + wfmaxsb %f0, %f0, %f0, 0 + wfmaxsb %v0, %v0, %v0, 4 + wfmaxsb %v0, %v0, %v31, 0 + wfmaxsb %v0, %v31, %v0, 0 + wfmaxsb %v31, %v0, %v0, 0 + wfmaxsb %v18, %v3, %v20, 11 + #CHECK: wfmindb %f0, %f0, %f0, 0 # encoding: [0xe7,0x00,0x00,0x08,0x30,0xee] #CHECK: wfmindb %f0, %f0, %f0, 0 # encoding: [0xe7,0x00,0x00,0x08,0x30,0xee] #CHECK: wfmindb %f0, %f0, %f0, 4 # encoding: [0xe7,0x00,0x00,0x48,0x30,0xee] @@ -1248,6 +2056,68 @@ wfmindb %v31, %v0, %v0, 0 wfmindb %v18, %v3, %v20, 11 +#CHECK: wfminsb %f0, %f0, %f0, 0 # encoding: [0xe7,0x00,0x00,0x08,0x20,0xee] +#CHECK: wfminsb %f0, %f0, %f0, 0 # encoding: [0xe7,0x00,0x00,0x08,0x20,0xee] +#CHECK: wfminsb %f0, %f0, %f0, 4 # encoding: [0xe7,0x00,0x00,0x48,0x20,0xee] +#CHECK: wfminsb %f0, %f0, %v31, 0 # encoding: [0xe7,0x00,0xf0,0x08,0x22,0xee] +#CHECK: wfminsb %f0, %v31, %f0, 0 # encoding: [0xe7,0x0f,0x00,0x08,0x24,0xee] +#CHECK: wfminsb %v31, %f0, %f0, 0 # encoding: [0xe7,0xf0,0x00,0x08,0x28,0xee] +#CHECK: wfminsb %v18, %f3, %v20, 11 # encoding: [0xe7,0x23,0x40,0xb8,0x2a,0xee] + + wfminsb %v0, %v0, %v0, 0 + wfminsb %f0, %f0, %f0, 0 + wfminsb %v0, %v0, %v0, 4 + wfminsb %v0, %v0, %v31, 0 + wfminsb %v0, %v31, %v0, 0 + wfminsb %v31, %v0, %v0, 0 + wfminsb %v18, %v3, %v20, 11 + +#CHECK: wfmasb %f0, %f0, %f0, %f0 # encoding: [0xe7,0x00,0x02,0x08,0x00,0x8f] +#CHECK: wfmasb %f0, %f0, %f0, %f0 # encoding: [0xe7,0x00,0x02,0x08,0x00,0x8f] +#CHECK: wfmasb %f0, %f0, %f0, %v31 # encoding: [0xe7,0x00,0x02,0x08,0xf1,0x8f] +#CHECK: wfmasb %f0, %f0, %v31, %f0 # encoding: [0xe7,0x00,0xf2,0x08,0x02,0x8f] +#CHECK: wfmasb %f0, %v31, %f0, %f0 # encoding: [0xe7,0x0f,0x02,0x08,0x04,0x8f] +#CHECK: wfmasb %v31, %f0, %f0, %f0 # encoding: [0xe7,0xf0,0x02,0x08,0x08,0x8f] +#CHECK: wfmasb %f13, %v17, %v21, %v25 # encoding: [0xe7,0xd1,0x52,0x08,0x97,0x8f] + + wfmasb %v0, %v0, %v0, %v0 + wfmasb %f0, %f0, %f0, %f0 + wfmasb %v0, %v0, %v0, %v31 + wfmasb %v0, %v0, %v31, %v0 + wfmasb %v0, %v31, %v0, %v0 + wfmasb %v31, %v0, %v0, %v0 + wfmasb %v13, %v17, %v21, %v25 + +#CHECK: wfmsb %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x08,0x20,0xe7] +#CHECK: wfmsb %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x08,0x20,0xe7] +#CHECK: wfmsb %f0, %f0, %v31 # encoding: [0xe7,0x00,0xf0,0x08,0x22,0xe7] +#CHECK: wfmsb %f0, %v31, %f0 # encoding: [0xe7,0x0f,0x00,0x08,0x24,0xe7] +#CHECK: wfmsb %v31, %f0, %f0 # encoding: [0xe7,0xf0,0x00,0x08,0x28,0xe7] +#CHECK: wfmsb %v18, %f3, %v20 # encoding: [0xe7,0x23,0x40,0x08,0x2a,0xe7] + + wfmsb %v0, %v0, %v0 + wfmsb %f0, %f0, %f0 + wfmsb %v0, %v0, %v31 + wfmsb %v0, %v31, %v0 + wfmsb %v31, %v0, %v0 + wfmsb %v18, %v3, %v20 + +#CHECK: wfmssb %f0, %f0, %f0, %f0 # encoding: [0xe7,0x00,0x02,0x08,0x00,0x8e] +#CHECK: wfmssb %f0, %f0, %f0, %f0 # encoding: [0xe7,0x00,0x02,0x08,0x00,0x8e] +#CHECK: wfmssb %f0, %f0, %f0, %v31 # encoding: [0xe7,0x00,0x02,0x08,0xf1,0x8e] +#CHECK: wfmssb %f0, %f0, %v31, %f0 # encoding: [0xe7,0x00,0xf2,0x08,0x02,0x8e] +#CHECK: wfmssb %f0, %v31, %f0, %f0 # encoding: [0xe7,0x0f,0x02,0x08,0x04,0x8e] +#CHECK: wfmssb %v31, %f0, %f0, %f0 # encoding: [0xe7,0xf0,0x02,0x08,0x08,0x8e] +#CHECK: wfmssb %f13, %v17, %v21, %v25 # encoding: [0xe7,0xd1,0x52,0x08,0x97,0x8e] + + wfmssb %v0, %v0, %v0, %v0 + wfmssb %f0, %f0, %f0, %f0 + wfmssb %v0, %v0, %v0, %v31 + wfmssb %v0, %v0, %v31, %v0 + wfmssb %v0, %v31, %v0, %v0 + wfmssb %v31, %v0, %v0, %v0 + wfmssb %v13, %v17, %v21, %v25 + #CHECK: wfnmadb %f0, %f0, %f0, %f0 # encoding: [0xe7,0x00,0x03,0x08,0x00,0x9f] #CHECK: wfnmadb %f0, %f0, %f0, %f0 # encoding: [0xe7,0x00,0x03,0x08,0x00,0x9f] #CHECK: wfnmadb %f0, %f0, %f0, %v31 # encoding: [0xe7,0x00,0x03,0x08,0xf1,0x9f] @@ -1264,6 +2134,22 @@ wfnmadb %v31, %v0, %v0, %v0 wfnmadb %v13, %v17, %v21, %v25 +#CHECK: wfnmasb %f0, %f0, %f0, %f0 # encoding: [0xe7,0x00,0x02,0x08,0x00,0x9f] +#CHECK: wfnmasb %f0, %f0, %f0, %f0 # encoding: [0xe7,0x00,0x02,0x08,0x00,0x9f] +#CHECK: wfnmasb %f0, %f0, %f0, %v31 # encoding: [0xe7,0x00,0x02,0x08,0xf1,0x9f] +#CHECK: wfnmasb %f0, %f0, %v31, %f0 # encoding: [0xe7,0x00,0xf2,0x08,0x02,0x9f] +#CHECK: wfnmasb %f0, %v31, %f0, %f0 # encoding: [0xe7,0x0f,0x02,0x08,0x04,0x9f] +#CHECK: wfnmasb %v31, %f0, %f0, %f0 # encoding: [0xe7,0xf0,0x02,0x08,0x08,0x9f] +#CHECK: wfnmasb %f13, %v17, %v21, %v25 # encoding: [0xe7,0xd1,0x52,0x08,0x97,0x9f] + + wfnmasb %v0, %v0, %v0, %v0 + wfnmasb %f0, %f0, %f0, %f0 + wfnmasb %v0, %v0, %v0, %v31 + wfnmasb %v0, %v0, %v31, %v0 + wfnmasb %v0, %v31, %v0, %v0 + wfnmasb %v31, %v0, %v0, %v0 + wfnmasb %v13, %v17, %v21, %v25 + #CHECK: wfnmsdb %f0, %f0, %f0, %f0 # encoding: [0xe7,0x00,0x03,0x08,0x00,0x9e] #CHECK: wfnmsdb %f0, %f0, %f0, %f0 # encoding: [0xe7,0x00,0x03,0x08,0x00,0x9e] #CHECK: wfnmsdb %f0, %f0, %f0, %v31 # encoding: [0xe7,0x00,0x03,0x08,0xf1,0x9e] @@ -1280,3 +2166,67 @@ wfnmsdb %v31, %v0, %v0, %v0 wfnmsdb %v13, %v17, %v21, %v25 +#CHECK: wfnmssb %f0, %f0, %f0, %f0 # encoding: [0xe7,0x00,0x02,0x08,0x00,0x9e] +#CHECK: wfnmssb %f0, %f0, %f0, %f0 # encoding: [0xe7,0x00,0x02,0x08,0x00,0x9e] +#CHECK: wfnmssb %f0, %f0, %f0, %v31 # encoding: [0xe7,0x00,0x02,0x08,0xf1,0x9e] +#CHECK: wfnmssb %f0, %f0, %v31, %f0 # encoding: [0xe7,0x00,0xf2,0x08,0x02,0x9e] +#CHECK: wfnmssb %f0, %v31, %f0, %f0 # encoding: [0xe7,0x0f,0x02,0x08,0x04,0x9e] +#CHECK: wfnmssb %v31, %f0, %f0, %f0 # encoding: [0xe7,0xf0,0x02,0x08,0x08,0x9e] +#CHECK: wfnmssb %f13, %v17, %v21, %v25 # encoding: [0xe7,0xd1,0x52,0x08,0x97,0x9e] + + wfnmssb %v0, %v0, %v0, %v0 + wfnmssb %f0, %f0, %f0, %f0 + wfnmssb %v0, %v0, %v0, %v31 + wfnmssb %v0, %v0, %v31, %v0 + wfnmssb %v0, %v31, %v0, %v0 + wfnmssb %v31, %v0, %v0, %v0 + wfnmssb %v13, %v17, %v21, %v25 + +#CHECK: wfssb %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x08,0x20,0xe2] +#CHECK: wfssb %f0, %f0, %f0 # encoding: [0xe7,0x00,0x00,0x08,0x20,0xe2] +#CHECK: wfssb %f0, %f0, %v31 # encoding: [0xe7,0x00,0xf0,0x08,0x22,0xe2] +#CHECK: wfssb %f0, %v31, %f0 # encoding: [0xe7,0x0f,0x00,0x08,0x24,0xe2] +#CHECK: wfssb %v31, %f0, %f0 # encoding: [0xe7,0xf0,0x00,0x08,0x28,0xe2] +#CHECK: wfssb %v18, %f3, %v20 # encoding: [0xe7,0x23,0x40,0x08,0x2a,0xe2] + + wfssb %v0, %v0, %v0 + wfssb %f0, %f0, %f0 + wfssb %v0, %v0, %v31 + wfssb %v0, %v31, %v0 + wfssb %v31, %v0, %v0 + wfssb %v18, %v3, %v20 + +#CHECK: wfsqsb %f0, %f0 # encoding: [0xe7,0x00,0x00,0x08,0x20,0xce] +#CHECK: wfsqsb %f0, %f0 # encoding: [0xe7,0x00,0x00,0x08,0x20,0xce] +#CHECK: wfsqsb %f0, %f15 # encoding: [0xe7,0x0f,0x00,0x08,0x20,0xce] +#CHECK: wfsqsb %f0, %v31 # encoding: [0xe7,0x0f,0x00,0x08,0x24,0xce] +#CHECK: wfsqsb %f15, %f0 # encoding: [0xe7,0xf0,0x00,0x08,0x20,0xce] +#CHECK: wfsqsb %v31, %f0 # encoding: [0xe7,0xf0,0x00,0x08,0x28,0xce] +#CHECK: wfsqsb %f14, %v17 # encoding: [0xe7,0xe1,0x00,0x08,0x24,0xce] + + wfsqsb %v0, %v0 + wfsqsb %f0, %f0 + wfsqsb %v0, %v15 + wfsqsb %v0, %v31 + wfsqsb %v15, %v0 + wfsqsb %v31, %v0 + wfsqsb %v14, %v17 + +#CHECK: wftcisb %f0, %f0, 0 # encoding: [0xe7,0x00,0x00,0x08,0x20,0x4a] +#CHECK: wftcisb %f0, %f0, 0 # encoding: [0xe7,0x00,0x00,0x08,0x20,0x4a] +#CHECK: wftcisb %f0, %f0, 4095 # encoding: [0xe7,0x00,0xff,0xf8,0x20,0x4a] +#CHECK: wftcisb %f0, %f15, 0 # encoding: [0xe7,0x0f,0x00,0x08,0x20,0x4a] +#CHECK: wftcisb %f0, %v31, 0 # encoding: [0xe7,0x0f,0x00,0x08,0x24,0x4a] +#CHECK: wftcisb %f15, %f0, 0 # encoding: [0xe7,0xf0,0x00,0x08,0x20,0x4a] +#CHECK: wftcisb %v31, %f0, 0 # encoding: [0xe7,0xf0,0x00,0x08,0x28,0x4a] +#CHECK: wftcisb %f4, %v21, 1656 # encoding: [0xe7,0x45,0x67,0x88,0x24,0x4a] + + wftcisb %v0, %v0, 0 + wftcisb %f0, %f0, 0 + wftcisb %v0, %v0, 4095 + wftcisb %v0, %v15, 0 + wftcisb %v0, %v31, 0 + wftcisb %v15, %v0, 0 + wftcisb %v31, %v0, 0 + wftcisb %v4, %v21, 0x678 + |