The BPF pseudo-c syntax supports both MOV and LDDW instructions:
mov: r1 = EXPR
lddw: r1 = EXPR ll
Note that the white space between EXPR and `ll' is necessary in order
to avoid ambiguity with the assembler's support for C-like numerical
suffixes. This patch adds a new test to the GAS BPF testsuite to make
sure that instructions like:
r1 = 666ll
are interpreted as `mov %r1,666', not as `lddw %r1,666'.
This matches clang's assembler behavior.
2023-10-30 Jose E. Marchesi <jose.marchesi@oracle.com>
* testsuite/gas/bpf/alu-pseudoc.s: Add test to make sure C-like
suffix `ll' is not interpreted as lddw syntax.
* testsuite/gas/bpf/alu-pseudoc.d: Update expected results.
* testsuite/gas/bpf/alu-be-pseudoc.d: Likewise.
+2023-10-30 Jose E. Marchesi <jose.marchesi@oracle.com>
+
+ * testsuite/gas/bpf/alu-pseudoc.s: Add test to make sure C-like
+ suffix `ll' is not interpreted as lddw syntax.
+ * testsuite/gas/bpf/alu-pseudoc.d: Update expected results.
+ * testsuite/gas/bpf/alu-be-pseudoc.d: Likewise.
+
2023-10-02 Nick Clifton <nickc@redhat.com>
PR 30861
1d0: d7 10 00 00 00 00 00 10 r1 = bswap16 r1
1d8: d7 20 00 00 00 00 00 20 r2 = bswap32 r2
1e0: d7 30 00 00 00 00 00 40 r3 = bswap64 r3
+ 1e8: b7 20 00 00 00 00 02 9a r2=0x29a
1d0: d7 01 00 00 10 00 00 00 r1 = bswap16 r1
1d8: d7 02 00 00 20 00 00 00 r2 = bswap32 r2
1e0: d7 03 00 00 40 00 00 00 r3 = bswap64 r3
+ 1e8: b7 02 00 00 9a 02 00 00 r2=0x29a
\ No newline at end of file
r1 = bswap16 r1
r2 = bswap32 r2
r3 = bswap64 r3
+ ;; The following is to be interpreted as a mov, not lddw.
+ r2 = 666ll