Re: Support for the pseudo-C BPF assembler syntax in GAS

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> 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?




[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux