]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
objdump, as: add callx support for BPF CPU v1
authorWill Hawkins <hawkinsw@obs.cr>
Thu, 15 Feb 2024 14:11:44 +0000 (15:11 +0100)
committerJose E. Marchesi <jose.marchesi@oracle.com>
Thu, 15 Feb 2024 14:11:44 +0000 (15:11 +0100)
Albeit not being a currently valid BPF instruction, callx is generated
by both clang and GCC when BPF programs are compiled unoptimized.
Until now, GCC would emit it only whe using the experimental
compiler-testing cpu version xbpf, whereas clang would emit it from
v1.  This patch makes GAS to accept callx also starting with cpu v1.

opcodes/ChangeLog

* bpf-opc.c: Move callx into the v1 BPF CPU variant.

gas/ChangeLog

* testsuite/gas/bpf/indcall-1-pseudoc.d: Do not select xbpf cpu
version.
* testsuite/gas/bpf/indcall-1.d: Likewise.

gas/ChangeLog
gas/testsuite/gas/bpf/indcall-1-pseudoc.d
gas/testsuite/gas/bpf/indcall-1.d
opcodes/ChangeLog
opcodes/bpf-opc.c

index b277f47b05dc66c9eb8fe58b7707f533347ecdb6..8be29915d8de3f49cb760f6810e979154e34f6c4 100644 (file)
@@ -1,3 +1,9 @@
+2024-02-15 Will Hawkins  <hawkinsw@obs.cr>
+
+       * testsuite/gas/bpf/indcall-1-pseudoc.d: Do not select xbpf cpu
+       version.
+       * testsuite/gas/bpf/indcall-1.d: Likewise.
+
 2024-02-14  Yuriy Kolerov  <ykolerov@synopsys.com>
 
        * config/tc-arc.c (is_br_jmp_insn_p): Add check against "DBNZ".
index 7a95bad8e65f2e72ef2c2092b745bb10e7d1198e..ae49cd1c4461da71715db545aeea18bcc143b6bd 100644 (file)
@@ -1,5 +1,5 @@
-#as: -EL -mdialect=pseudoc -misa-spec=xbpf
-#objdump: -M xbpf,pseudoc,dec -dr
+#as: -EL -mdialect=pseudoc
+#objdump: -M pseudoc,dec -dr
 #source: indcall-1-pseudoc.s
 #name: BPF indirect call 1, pseudoc syntax
 
index 51103bba2a1a35b866cc76a940eea955cae37110..48e351fdaae51bde02d3d58fe2debe4802b16268 100644 (file)
@@ -1,5 +1,5 @@
-#as: -EL -misa-spec=xbpf
-#objdump: -dr -M xbpf,dec
+#as: -EL
+#objdump: -dr -M dec
 #source: indcall-1.s
 #name: BPF indirect call 1, normal syntax
 
index 4fb2d0de207baa94ef4c9e68c03fa469659a58ec..bce3bfb61b5c147a852fbb718a865ee34c02fced 100644 (file)
@@ -1,3 +1,7 @@
+2024-02-15 Will Hawkins  <hawkinsw@obs.cr>
+
+       * bpf-opc.c: Move callx into the v1 BPF CPU variant.
+
 2024-02-14  Yuriy Kolerov  <ykolerov@synopsys.com>
 
        * arc-tbl.h (dbnz): Use "DBNZ" class.
index 19e096501a275aa728c2717b581b06cee0e8c65f..0524f4c7e1c46aa70cd5718aa1201701eee4b18d 100644 (file)
@@ -273,7 +273,7 @@ const struct bpf_opcode bpf_opcodes[] =
   {BPF_INSN_JNER, "jne%W%dr , %sr , %d16", "if%w%dr != %sr%wgoto%w%d16",
    BPF_V1, BPF_CODE, BPF_CLASS_JMP|BPF_CODE_JNE|BPF_SRC_X},
   {BPF_INSN_CALLR, "call%W%dr", "callx%w%dr",
-   BPF_XBPF, BPF_CODE, BPF_CLASS_JMP|BPF_CODE_CALL|BPF_SRC_X},
+   BPF_V1, BPF_CODE, BPF_CLASS_JMP|BPF_CODE_CALL|BPF_SRC_X},
   {BPF_INSN_CALL, "call%W%d32", "call%w%d32",
    BPF_V1, BPF_CODE, BPF_CLASS_JMP|BPF_CODE_CALL|BPF_SRC_K},
   {BPF_INSN_EXIT, "exit", "exit",