[all-commits] [llvm/llvm-project] e14952: [RISCV] Use the 'B' extension in RISC-V profile de...

Alex Bradbury via All-commits all-commits at lists.llvm.org
Sat Nov 9 23:18:26 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: e1495283cf74590fbdeb6d46ad815b4d10b1902f
      https://github.com/llvm/llvm-project/commit/e1495283cf74590fbdeb6d46ad815b4d10b1902f
  Author: Alex Bradbury <asb at igalia.com>
  Date:   2024-11-10 (Sun, 10 Nov 2024)

  Changed paths:
    M clang/test/Driver/riscv-profiles.c
    M llvm/lib/Target/RISCV/RISCVProfiles.td
    M llvm/test/CodeGen/RISCV/attributes.ll

  Log Message:
  -----------
  [RISCV] Use the 'B' extension in RISC-V profile definitions (#113942)

RVA22 has retroactively been defined as including 'B' (as it's a
shorthand for Zba+Zbb+Zbs, which were previously explicitly enumerated)
and RV{A,B,M}23 are defined featuring B. We don't currently infer B
whenever Zba+Zbb+Zbs are present due to concerns about compatibility
with external assemblers such as gas.

We don't believe that adding B to RVA22 will cause issues for users who
(for instance) build with clang and assemble with binutils as looking at
the binutils commit history:
zic64b support was only committed in
25f05199bb7e35820c23e802424484accb7936b1 in July 2024
B support was committed in c144f638337944101131d9fe6de4ab908f6d4c2d in
May 2024

So given we emit zic64b anyway (as it has always been in the RVA22
spec), no binutils that would have previously successfully assembled our
rva22u64 output should fail due to the addition of 'B'.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list