[all-commits] [llvm/llvm-project] fae40b: [RISCV] Add MC layer support for proposed Bit Mani...
Scott Egerton via All-commits
all-commits at lists.llvm.org
Thu Apr 9 10:05:09 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: fae40bd5a1d4d0ef5f60d5a441757d39a06ce077
https://github.com/llvm/llvm-project/commit/fae40bd5a1d4d0ef5f60d5a441757d39a06ce077
Author: Paolo Savini <paolo.savini at embecosm.com>
Date: 2020-04-09 (Thu, 09 Apr 2020)
Changed paths:
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/RISCV.td
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
A llvm/lib/Target/RISCV/RISCVInstrInfoB.td
M llvm/lib/Target/RISCV/RISCVSubtarget.h
A llvm/test/MC/RISCV/compress-rv32b.s
A llvm/test/MC/RISCV/compress-rv64b.s
A llvm/test/MC/RISCV/rv32b-aliases-valid.s
A llvm/test/MC/RISCV/rv32zbb-invalid.s
A llvm/test/MC/RISCV/rv32zbb-valid.s
A llvm/test/MC/RISCV/rv32zbbp-invalid.s
A llvm/test/MC/RISCV/rv32zbbp-valid.s
A llvm/test/MC/RISCV/rv32zbc-invalid.s
A llvm/test/MC/RISCV/rv32zbc-valid.s
A llvm/test/MC/RISCV/rv32zbe-invalid.s
A llvm/test/MC/RISCV/rv32zbe-valid.s
A llvm/test/MC/RISCV/rv32zbf-invalid.s
A llvm/test/MC/RISCV/rv32zbf-valid.s
A llvm/test/MC/RISCV/rv32zbp-invalid.s
A llvm/test/MC/RISCV/rv32zbp-valid.s
A llvm/test/MC/RISCV/rv32zbproposedc-invalid.s
A llvm/test/MC/RISCV/rv32zbproposedc-valid.s
A llvm/test/MC/RISCV/rv32zbr-invalid.s
A llvm/test/MC/RISCV/rv32zbr-valid.s
A llvm/test/MC/RISCV/rv32zbs-invalid.s
A llvm/test/MC/RISCV/rv32zbs-valid.s
A llvm/test/MC/RISCV/rv32zbt-invalid.s
A llvm/test/MC/RISCV/rv32zbt-valid.s
A llvm/test/MC/RISCV/rv64b-aliases-valid.s
A llvm/test/MC/RISCV/rv64zbb-invalid.s
A llvm/test/MC/RISCV/rv64zbb-valid.s
A llvm/test/MC/RISCV/rv64zbbp-invalid.s
A llvm/test/MC/RISCV/rv64zbbp-valid.s
A llvm/test/MC/RISCV/rv64zbc-invalid.s
A llvm/test/MC/RISCV/rv64zbc-valid.s
A llvm/test/MC/RISCV/rv64zbe-invalid.s
A llvm/test/MC/RISCV/rv64zbe-valid.s
A llvm/test/MC/RISCV/rv64zbf-invalid.s
A llvm/test/MC/RISCV/rv64zbf-valid.s
A llvm/test/MC/RISCV/rv64zbm-invalid.s
A llvm/test/MC/RISCV/rv64zbm-valid.s
A llvm/test/MC/RISCV/rv64zbp-invalid.s
A llvm/test/MC/RISCV/rv64zbp-valid.s
A llvm/test/MC/RISCV/rv64zbproposedc-invalid.s
A llvm/test/MC/RISCV/rv64zbproposedc-valid.s
A llvm/test/MC/RISCV/rv64zbr-invalid.s
A llvm/test/MC/RISCV/rv64zbr-valid.s
A llvm/test/MC/RISCV/rv64zbs-invalid.s
A llvm/test/MC/RISCV/rv64zbs-valid.s
A llvm/test/MC/RISCV/rv64zbt-invalid.s
A llvm/test/MC/RISCV/rv64zbt-valid.s
Log Message:
-----------
[RISCV] Add MC layer support for proposed Bit Manipulation extension (version 0.92)
This adds the instruction encoding and mnenomics for the proposed
RISC-V Bit Manipulation extension (version 0.92). It is implemented with
each category of instruction as its own target feature, with the 'b'
extension feature enabling all options. Since this extension is not yet
ratified, all target features are prefixed with 'experimental-' to note
their status.
Differential Revision: https://reviews.llvm.org/D65649
Commit: dd1ee6dc076fe1da6cf6eeb9cf614d9c1796759a
https://github.com/llvm/llvm-project/commit/dd1ee6dc076fe1da6cf6eeb9cf614d9c1796759a
Author: Simon Cook <simon.cook at embecosm.com>
Date: 2020-04-09 (Thu, 09 Apr 2020)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/Arch/RISCV.cpp
M clang/test/Driver/riscv-arch.c
Log Message:
-----------
[RISCV] Support experimental/unratified extensions
This adds support for enabling experimental/unratified RISC-V ISA
extensions in the -march string in the case where an explicit version
number has been declared, and the -menable-experimental-extensions flag
has been provided.
This follows the design as discussed on the mailing lists in the
following RFC: http://lists.llvm.org/pipermail/llvm-dev/2020-January/138364.html
Since the RISC-V toolchain definition currently rejects any extension
with an explicit version number, the parsing logic has been tweaked to
support this, and to allow standard extensions to have their versions
checked in future patches.
The bitmanip 'b' extension has been added as a first use of this support,
it should easily extend to other as yet unratified extensions (such as
the vector 'v' extension).
Differential Revision: https://reviews.llvm.org/D73891
Commit: 61ff29637501afcd7476e52064f7a266a95c6e28
https://github.com/llvm/llvm-project/commit/61ff29637501afcd7476e52064f7a266a95c6e28
Author: Scott Egerton <scott.egerton at embecosm.com>
Date: 2020-04-09 (Thu, 09 Apr 2020)
Changed paths:
M clang/lib/Basic/Targets/RISCV.cpp
M clang/lib/Basic/Targets/RISCV.h
M clang/test/Preprocessor/riscv-target-features.c
Log Message:
-----------
[RISCV] Add Clang frontend support for Bitmanip extension
This adds the __riscv_bitmanip macro and the 'b' target feature to enable it.
Differential Revision: https://reviews.llvm.org/D71553
Compare: https://github.com/llvm/llvm-project/compare/77b46fb326b5...61ff29637501
More information about the All-commits
mailing list