> On Thu, 2023-04-27 at 12:14 +0200, Jose E. Marchesi wrote: >> Odd. I replied to this yesterday, but somehow it wasn't sent. >> >> > On Wed, Apr 26, 2023 at 12:35 PM Jose E. Marchesi >> > <jose.marchesi@xxxxxxxxxx> wrote: >> > > >> > > >> > > > On 4/26/23 10:37 AM, Jose E. Marchesi wrote: >> > > > > Just a heads up, we just committed support for the assembly syntax >> > > > > used >> > > > > by clang to the GNU assembler [1]. >> > > > >> > > > Thanks! Do you which gcc release is expected to contain these changes? >> > > >> > > This is the assembler, i.e. binutils. >> > > We don't need to update the compiler. >> > > >> > > > > Salud! >> > > > > [1] https://sourceware.org/pipermail/binutils/2023-April/127222.html >> > >> > This is awesome! >> > We recently converted tens of thousands of lines of bpf asm from macros >> > to inline asm in C. >> > See tools/testing/selftests/bpf/progs/verifier_*.c >> > I wonder how gas-bpf can deal with that. >> >> Inline assembly shall work. > > There is also an LLVM testcase [1] where most of the instructions are covered, > but you probably have something similar. Yes we have extensive instruction testing in the assembler. > Just of the curiosity, is the state machine generated by some tool or > is it "pen and paper" exercise? It is the later :) But I plan to turn that function into a recursive-descend, for maintainability. > [1] https://github.com/llvm/llvm-project/blob/main/llvm/test/CodeGen/BPF/assembler-disassembler.s > >> >> > We had to fix several inline asm issues in clang to get to this point >> > and probably more to come. >> >> We will give these tests a try and fix problems as we find them :) >> >> We actually came with some ambiguities, undefined stuff, and other >> issues with the syntax while doing the implementation. We hope to >> discuss some of that during the LSF/MM/BPF next week, so we can >> consolidate the language in both toolchains. >> >> Speaking of which, we are preparing the material for the "compiled BPF" >> activity during LSF/MM/BPF. I think the BPF track hasn't been scheduled >> yet, but how much time will we have to discuss about the topic?