[all-commits] [llvm/llvm-project] 642b21: [AArch64] Enable RAS 1.1 system registers in all A...

Pablo Barrio via All-commits all-commits at lists.llvm.org
Tue Nov 10 04:14:08 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 642b21beba4c75fa2142413e7e4b9140d3194d19
      https://github.com/llvm/llvm-project/commit/642b21beba4c75fa2142413e7e4b9140d3194d19
  Author: Pablo Barrio <pablo.barrio at arm.com>
  Date:   2020-11-10 (Tue, 10 Nov 2020)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64Subtarget.h
    M llvm/lib/Target/AArch64/AArch64SystemOperands.td
    M llvm/test/MC/AArch64/armv8.4a-ras.s

  Log Message:
  -----------
  [AArch64] Enable RAS 1.1 system registers in all AArch64

Some use cases (e.g. kernel devs) have strict requirements to only enable
features available with -march=armv8-a, e.g. no armv8.1-a. Enabling RAS 1.1 in
all AArch64 means they can consider to support it.

Bear in mind that the first versions of the Armv8 architecture still do not
support RAS 1.1. This patch only lets devs write code with the user-friendly
register mnemonic instead of the ugly generic S<op0>_<op1>_<Cn>_<Cm>_<op2>.
They still need to place runtime checks to make sure that the CPU to run on
supports RAS 1.1.

Differential Revision: https://reviews.llvm.org/D90594




More information about the All-commits mailing list