public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
* [PATCH] x86: Add {load}/{store} tests for apx instructions.
@ 2024-06-26 11:26 Cui, Lili
  2024-06-28  6:31 ` Jan Beulich
  0 siblings, 1 reply; 20+ messages in thread
From: Cui, Lili @ 2024-06-26 11:26 UTC (permalink / raw)
  To: hjl.tools, jbeulich; +Cc: binutils

gas/ChangeLog:

        * testsuite/gas/i386/x86-64.exp: Add {load}/{store} tests for apx
        instructions.
        * testsuite/gas/i386/x86-64-pseudos-apx.d: New test.
        * testsuite/gas/i386/x86-64-pseudos-apx.s: Ditto.
---
 gas/testsuite/gas/i386/x86-64-pseudos-apx.d | 165 ++++++++++++++++++++
 gas/testsuite/gas/i386/x86-64-pseudos-apx.s |  43 +++++
 gas/testsuite/gas/i386/x86-64.exp           |   1 +
 3 files changed, 209 insertions(+)
 create mode 100644 gas/testsuite/gas/i386/x86-64-pseudos-apx.d
 create mode 100644 gas/testsuite/gas/i386/x86-64-pseudos-apx.s

diff --git a/gas/testsuite/gas/i386/x86-64-pseudos-apx.d b/gas/testsuite/gas/i386/x86-64-pseudos-apx.d
new file mode 100644
index 00000000000..c2446351ecc
--- /dev/null
+++ b/gas/testsuite/gas/i386/x86-64-pseudos-apx.d
@@ -0,0 +1,165 @@
+#as:
+#objdump: -dw -Msuffix
+#name: APX x86-64 pseudo prefixes
+
+.*: +file format .*
+
+Disassembly of section \.text:
+
+0+ <_start>:
+[	 ]*[a-f0-9]+:[	 ]*d5 11 89 cf[	 ]+movl   %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*d5 44 8b f9[	 ]+movl.s %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*d5 11 89 cf[	 ]+movl   %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 d5 44 8b 39[	 ]+movl   \(%ecx\),%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 d5 44 89 39[	 ]+movl   %r31d,\(%ecx\)
+[	 ]*[a-f0-9]+:[	 ]*d5 11 11 cf[	 ]+adcl   %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*d5 44 13 f9[	 ]+adcl.s %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*d5 11 11 cf[	 ]+adcl   %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 d5 44 13 39[	 ]+adcl   \(%ecx\),%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 d5 44 11 39[	 ]+adcl   %r31d,\(%ecx\)
+[	 ]*[a-f0-9]+:[	 ]*d5 11 01 cf[	 ]+addl   %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*d5 44 03 f9[	 ]+addl.s %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*d5 11 01 cf[	 ]+addl   %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 d5 44 03 39[	 ]+addl   \(%ecx\),%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 d5 44 01 39[	 ]+addl   %r31d,\(%ecx\)
+[	 ]*[a-f0-9]+:[	 ]*d5 11 21 cf[	 ]+andl   %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*d5 44 23 f9[	 ]+andl.s %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*d5 11 21 cf[	 ]+andl   %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 d5 44 23 39[	 ]+andl   \(%ecx\),%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 d5 44 21 39[	 ]+andl   %r31d,\(%ecx\)
+[	 ]*[a-f0-9]+:[	 ]*d5 11 39 cf[	 ]+cmpl   %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*d5 44 3b f9[	 ]+cmpl.s %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*d5 11 39 cf[	 ]+cmpl   %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 d5 44 3b 39[	 ]+cmpl   \(%ecx\),%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 d5 44 39 39[	 ]+cmpl   %r31d,\(%ecx\)
+[	 ]*[a-f0-9]+:[	 ]*d5 11 09 cf[	 ]+orl    %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*d5 44 0b f9[	 ]+orl.s  %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*d5 11 09 cf[	 ]+orl    %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 d5 44 0b 39[	 ]+orl    \(%ecx\),%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 d5 44 09 39[	 ]+orl    %r31d,\(%ecx\)
+[	 ]*[a-f0-9]+:[	 ]*d5 11 19 cf[	 ]+sbbl   %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*d5 44 1b f9[	 ]+sbbl.s %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*d5 11 19 cf[	 ]+sbbl   %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 d5 44 1b 39[	 ]+sbbl   \(%ecx\),%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 d5 44 19 39[	 ]+sbbl   %r31d,\(%ecx\)
+[	 ]*[a-f0-9]+:[	 ]*d5 11 29 cf[	 ]+subl   %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*d5 44 2b f9[	 ]+subl.s %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*d5 11 29 cf[	 ]+subl   %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 d5 44 2b 39[	 ]+subl   \(%ecx\),%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 d5 44 29 39[	 ]+subl   %r31d,\(%ecx\)
+[	 ]*[a-f0-9]+:[	 ]*d5 11 85 cf[	 ]+testl  %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*d5 44 85 f9[	 ]+testl  %r31d,%ecx
+[	 ]*[a-f0-9]+:[	 ]*d5 11 85 cf[	 ]+testl  %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 d5 44 85 39[	 ]+testl  %r31d,\(%ecx\)
+[	 ]*[a-f0-9]+:[	 ]*67 d5 44 85 39[	 ]+testl  %r31d,\(%ecx\)
+[	 ]*[a-f0-9]+:[	 ]*d5 11 31 cf[	 ]+xorl   %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*d5 44 33 f9[	 ]+xorl.s %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*d5 11 31 cf[	 ]+xorl   %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 d5 44 33 39[	 ]+xorl   \(%ecx\),%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 d5 44 31 39[	 ]+xorl   %r31d,\(%ecx\)
+[	 ]*[a-f0-9]+:[	 ]*d5 11 87 cf[	 ]+xchgl  %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*d5 44 87 f9[	 ]+xchgl  %r31d,%ecx
+[	 ]*[a-f0-9]+:[	 ]*d5 11 87 cf[	 ]+xchgl  %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 d5 44 87 39[	 ]+xchgl  %r31d,\(%ecx\)
+[	 ]*[a-f0-9]+:[	 ]*67 d5 44 87 39[	 ]+xchgl  %r31d,\(%ecx\)
+[	 ]*[a-f0-9]+:[	 ]*d5 91 28 17[	 ]+movaps \(%r31\),%xmm2
+[	 ]*[a-f0-9]+:[	 ]*d5 91 28 17[	 ]+movaps \(%r31\),%xmm2
+[	 ]*[a-f0-9]+:[	 ]*d5 91 29 17[	 ]+movaps %xmm2,\(%r31\)
+[	 ]*[a-f0-9]+:[	 ]*62 dc 7c 08 11 cf[	 ]+adcl   %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*62 64 7c 08 13 f9[	 ]+adcl.s %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*62 dc 7c 08 11 cf[	 ]+adcl   %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 62 64 7c 08 13 39[	 ]+adcl   \(%ecx\),%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 62 64 7c 08 11 39[	 ]+adcl   %r31d,\(%ecx\)
+[	 ]*[a-f0-9]+:[	 ]*62 dc 7c 08 01 cf[	 ]+addl   %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*62 64 7c 08 03 f9[	 ]+addl.s %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*62 dc 7c 08 01 cf[	 ]+addl   %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 62 64 7c 08 03 39[	 ]+addl   \(%ecx\),%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 62 64 7c 08 01 39[	 ]+addl   %r31d,\(%ecx\)
+[	 ]*[a-f0-9]+:[	 ]*62 dc 7c 08 21 cf[	 ]+andl   %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*62 64 7c 08 23 f9[	 ]+andl.s %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*62 dc 7c 08 21 cf[	 ]+andl   %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 62 64 7c 08 23 39[	 ]+andl   \(%ecx\),%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 62 64 7c 08 21 39[	 ]+andl   %r31d,\(%ecx\)
+[	 ]*[a-f0-9]+:[	 ]*62 dc 7c 08 09 cf[	 ]+orl    %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*62 64 7c 08 0b f9[	 ]+orl.s  %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*62 dc 7c 08 09 cf[	 ]+orl    %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 62 64 7c 08 0b 39[	 ]+orl    \(%ecx\),%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 62 64 7c 08 09 39[	 ]+orl    %r31d,\(%ecx\)
+[	 ]*[a-f0-9]+:[	 ]*62 dc 7c 08 19 cf[	 ]+sbbl   %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*62 64 7c 08 1b f9[	 ]+sbbl.s %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*62 dc 7c 08 19 cf[	 ]+sbbl   %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 62 64 7c 08 1b 39[	 ]+sbbl   \(%ecx\),%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 62 64 7c 08 19 39[	 ]+sbbl   %r31d,\(%ecx\)
+[	 ]*[a-f0-9]+:[	 ]*62 dc 7c 08 29 cf[	 ]+subl   %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*62 64 7c 08 2b f9[	 ]+subl.s %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*62 dc 7c 08 29 cf[	 ]+subl   %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 62 64 7c 08 2b 39[	 ]+subl   \(%ecx\),%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 62 64 7c 08 29 39[	 ]+subl   %r31d,\(%ecx\)
+[	 ]*[a-f0-9]+:[	 ]*62 dc 7c 08 31 cf[	 ]+xorl   %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*62 64 7c 08 33 f9[	 ]+xorl.s %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*62 dc 7c 08 31 cf[	 ]+xorl   %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 62 64 7c 08 33 39[	 ]+xorl   \(%ecx\),%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 62 64 7c 08 31 39[	 ]+xorl   %r31d,\(%ecx\)
+[	 ]*[a-f0-9]+:[	 ]*62 64 7c 18 03 f9[	 ]+addl.s %ecx,%r31d,%eax
+[	 ]*[a-f0-9]+:[	 ]*62 dc 7c 18 01 cf[	 ]+addl   %ecx,%r31d,%eax
+[	 ]*[a-f0-9]+:[	 ]*62 44 fc 10 01 38[	 ]+addq   %r31,\(%r8\),%r16
+[	 ]*[a-f0-9]+:[	 ]*62 44 fc 10 03 38[	 ]+addq   \(%r8\),%r31,%r16
+[	 ]*[a-f0-9]+:[	 ]*62 44 fc 10 01 38[	 ]+addq   %r31,\(%r8\),%r16
+[	 ]*[a-f0-9]+:[	 ]*62 44 fc 10 03 38[	 ]+addq   \(%r8\),%r31,%r16
+[	 ]*[a-f0-9]+:[	 ]*62 64 7c 18 0b f9[	 ]+orl.s  %ecx,%r31d,%eax
+[	 ]*[a-f0-9]+:[	 ]*62 dc 7c 18 09 cf[	 ]+orl    %ecx,%r31d,%eax
+[	 ]*[a-f0-9]+:[	 ]*62 44 fc 10 09 38[	 ]+orq    %r31,\(%r8\),%r16
+[	 ]*[a-f0-9]+:[	 ]*62 44 fc 10 0b 38[	 ]+orq    \(%r8\),%r31,%r16
+[	 ]*[a-f0-9]+:[	 ]*62 44 fc 10 09 38[	 ]+orq    %r31,\(%r8\),%r16
+[	 ]*[a-f0-9]+:[	 ]*62 44 fc 10 0b 38[	 ]+orq    \(%r8\),%r31,%r16
+[	 ]*[a-f0-9]+:[	 ]*62 64 7c 18 13 f9[	 ]+adcl.s %ecx,%r31d,%eax
+[	 ]*[a-f0-9]+:[	 ]*62 dc 7c 18 11 cf[	 ]+adcl   %ecx,%r31d,%eax
+[	 ]*[a-f0-9]+:[	 ]*62 44 fc 10 11 38[	 ]+adcq   %r31,\(%r8\),%r16
+[	 ]*[a-f0-9]+:[	 ]*62 44 fc 10 13 38[	 ]+adcq   \(%r8\),%r31,%r16
+[	 ]*[a-f0-9]+:[	 ]*62 44 fc 10 11 38[	 ]+adcq   %r31,\(%r8\),%r16
+[	 ]*[a-f0-9]+:[	 ]*62 44 fc 10 13 38[	 ]+adcq   \(%r8\),%r31,%r16
+[	 ]*[a-f0-9]+:[	 ]*62 64 7c 18 1b f9[	 ]+sbbl.s %ecx,%r31d,%eax
+[	 ]*[a-f0-9]+:[	 ]*62 dc 7c 18 19 cf[	 ]+sbbl   %ecx,%r31d,%eax
+[	 ]*[a-f0-9]+:[	 ]*62 44 fc 10 19 38[	 ]+sbbq   %r31,\(%r8\),%r16
+[	 ]*[a-f0-9]+:[	 ]*62 44 fc 10 1b 38[	 ]+sbbq   \(%r8\),%r31,%r16
+[	 ]*[a-f0-9]+:[	 ]*62 44 fc 10 19 38[	 ]+sbbq   %r31,\(%r8\),%r16
+[	 ]*[a-f0-9]+:[	 ]*62 44 fc 10 1b 38[	 ]+sbbq   \(%r8\),%r31,%r16
+[	 ]*[a-f0-9]+:[	 ]*62 64 7c 18 23 f9[	 ]+andl.s %ecx,%r31d,%eax
+[	 ]*[a-f0-9]+:[	 ]*62 dc 7c 18 21 cf[	 ]+andl   %ecx,%r31d,%eax
+[	 ]*[a-f0-9]+:[	 ]*62 44 fc 10 21 38[	 ]+andq   %r31,\(%r8\),%r16
+[	 ]*[a-f0-9]+:[	 ]*62 44 fc 10 23 38[	 ]+andq   \(%r8\),%r31,%r16
+[	 ]*[a-f0-9]+:[	 ]*62 44 fc 10 21 38[	 ]+andq   %r31,\(%r8\),%r16
+[	 ]*[a-f0-9]+:[	 ]*62 44 fc 10 23 38[	 ]+andq   \(%r8\),%r31,%r16
+[	 ]*[a-f0-9]+:[	 ]*62 64 7c 18 2b f9[	 ]+subl.s %ecx,%r31d,%eax
+[	 ]*[a-f0-9]+:[	 ]*62 dc 7c 18 29 cf[	 ]+subl   %ecx,%r31d,%eax
+[	 ]*[a-f0-9]+:[	 ]*62 44 fc 10 29 38[	 ]+subq   %r31,\(%r8\),%r16
+[	 ]*[a-f0-9]+:[	 ]*62 44 fc 10 2b 38[	 ]+subq   \(%r8\),%r31,%r16
+[	 ]*[a-f0-9]+:[	 ]*62 44 fc 10 29 38[	 ]+subq   %r31,\(%r8\),%r16
+[	 ]*[a-f0-9]+:[	 ]*62 44 fc 10 2b 38[	 ]+subq   \(%r8\),%r31,%r16
+[	 ]*[a-f0-9]+:[	 ]*62 64 7c 18 33 f9[	 ]+xorl.s %ecx,%r31d,%eax
+[	 ]*[a-f0-9]+:[	 ]*62 dc 7c 18 31 cf[	 ]+xorl   %ecx,%r31d,%eax
+[	 ]*[a-f0-9]+:[	 ]*62 44 fc 10 31 38[	 ]+xorq   %r31,\(%r8\),%r16
+[	 ]*[a-f0-9]+:[	 ]*62 44 fc 10 33 38[	 ]+xorq   \(%r8\),%r31,%r16
+[	 ]*[a-f0-9]+:[	 ]*62 44 fc 10 31 38[	 ]+xorq   %r31,\(%r8\),%r16
+[	 ]*[a-f0-9]+:[	 ]*62 44 fc 10 33 38[	 ]+xorq   \(%r8\),%r31,%r16
+[	 ]*[a-f0-9]+:[	 ]*62 64 7c 0c 03 f9[	 ]+\{nf\} addl.s %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*62 dc 7c 0c 01 cf[	 ]+\{nf\} addl %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 62 44 7c 0c 03 38[	 ]+\{nf\} addl \(%r8d\),%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 62 44 7c 0c 01 38[	 ]+\{nf\} addl %r31d,\(%r8d\)
+[	 ]*[a-f0-9]+:[	 ]*62 64 7c 0c 0b f9[	 ]+\{nf\} orl.s %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*62 dc 7c 0c 09 cf[	 ]+\{nf\} orl %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 62 44 7c 0c 0b 38[	 ]+\{nf\} orl \(%r8d\),%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 62 44 7c 0c 09 38[	 ]+\{nf\} orl %r31d,\(%r8d\)
+[	 ]*[a-f0-9]+:[	 ]*62 64 7c 0c 23 f9[	 ]+\{nf\} andl.s %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*62 dc 7c 0c 21 cf[	 ]+\{nf\} andl %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 62 44 7c 0c 23 38[	 ]+\{nf\} andl \(%r8d\),%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 62 44 7c 0c 21 38[	 ]+\{nf\} andl %r31d,\(%r8d\)
+[	 ]*[a-f0-9]+:[	 ]*62 64 7c 0c 2b f9[	 ]+\{nf\} subl.s %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*62 dc 7c 0c 29 cf[	 ]+\{nf\} subl %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 62 44 7c 0c 2b 38[	 ]+\{nf\} subl \(%r8d\),%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 62 44 7c 0c 29 38[	 ]+\{nf\} subl %r31d,\(%r8d\)
+[	 ]*[a-f0-9]+:[	 ]*62 64 7c 0c 33 f9[	 ]+\{nf\} xorl.s %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*62 dc 7c 0c 31 cf[	 ]+\{nf\} xorl %ecx,%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 62 44 7c 0c 33 38[	 ]+\{nf\} xorl \(%r8d\),%r31d
+[	 ]*[a-f0-9]+:[	 ]*67 62 44 7c 0c 31 38[	 ]+\{nf\} xorl %r31d,\(%r8d\)
+#pass
diff --git a/gas/testsuite/gas/i386/x86-64-pseudos-apx.s b/gas/testsuite/gas/i386/x86-64-pseudos-apx.s
new file mode 100644
index 00000000000..3532cb77e7f
--- /dev/null
+++ b/gas/testsuite/gas/i386/x86-64-pseudos-apx.s
@@ -0,0 +1,43 @@
+# Check 64bit APX instructions with pseudo prefixes for encoding
+
+.text
+_start:
+        #APX REX2
+        .irp m, mov, adc, add, and, cmp, or, sbb, sub, test, xor, xchg
+        \m %ecx, %r31d
+        {load}  \m %ecx, %r31d
+        {store} \m %ecx, %r31d
+        {load}  \m (%ecx), %r31d
+        {store} \m %r31d, (%ecx)
+        .endr
+
+        movaps (%r31),%xmm2
+        {load} movaps (%r31),%xmm2
+        {store} movaps %xmm2, (%r31)
+
+        #APX EVEX promoted from legacy
+        .irp m, adc, add, and, or, sbb, sub, xor
+        {evex}         \m %ecx, %r31d
+        {evex} {load}  \m %ecx, %r31d
+        {evex} {store} \m %ecx, %r31d
+        {evex} {load}  \m (%ecx), %r31d
+        {evex} {store} \m %r31d, (%ecx)
+        .endr
+
+        #APX NDD
+        .irp m, add, or, adc, sbb, and, sub, xor
+        {load}  \m %ecx, %r31d, %eax
+        {store} \m %ecx, %r31d, %eax
+        {load}  \m %r31,(%r8),%r16
+        {load}  \m (%r8),%r31,%r16
+        {store} \m %r31,(%r8),%r16
+        {store} \m (%r8),%r31,%r16
+        .endr
+
+        #APX NF
+        .irp m, add, or, and, sub, xor
+        {nf} {load}  \m %ecx, %r31d
+        {nf} {store} \m %ecx, %r31d
+        {nf} {load}  \m (%r8d), %r31d
+        {nf} {store} \m %r31d, (%r8d)
+        .endr
diff --git a/gas/testsuite/gas/i386/x86-64.exp b/gas/testsuite/gas/i386/x86-64.exp
index a8d49cefe8c..407ea85ae11 100644
--- a/gas/testsuite/gas/i386/x86-64.exp
+++ b/gas/testsuite/gas/i386/x86-64.exp
@@ -555,6 +555,7 @@ run_dump_test "x86-64-cet-intel"
 run_list_test "x86-64-cet-ibt-inval"
 run_list_test "x86-64-cet-shstk-inval"
 run_dump_test "x86-64-pseudos"
+run_dump_test "x86-64-pseudos-apx"
 run_list_test "x86-64-pseudos-bad"
 run_list_test "x86-64-inval-pseudo" "-al"
 run_dump_test "x86-64-notrack"
-- 
2.34.1


^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2024-07-03 12:40 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-06-26 11:26 [PATCH] x86: Add {load}/{store} tests for apx instructions Cui, Lili
2024-06-28  6:31 ` Jan Beulich
2024-07-01 13:42   ` Cui, Lili
2024-07-01 14:25     ` Jan Beulich
2024-07-02  7:09       ` Cui, Lili
2024-07-02  8:22         ` Jan Beulich
2024-07-02 10:29           ` Cui, Lili
2024-07-02 12:15             ` Jan Beulich
2024-07-02 13:27               ` Cui, Lili
2024-07-03  2:41                 ` Cui, Lili
2024-07-03  4:01                   ` H.J. Lu
2024-07-03  6:52                     ` Jan Beulich
2024-07-03 12:17                       ` Cui, Lili
2024-07-03 12:24                         ` Jan Beulich
2024-07-03 12:40                           ` Cui, Lili
2024-07-02 11:55           ` Jan Beulich
2024-07-02 13:49             ` Cui, Lili
2024-07-02 14:24               ` Jan Beulich
2024-07-03  1:10                 ` Cui, Lili
2024-07-03  6:55                   ` Jan Beulich

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).