mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-26 09:26:06 +00:00
[RISCV] Remove experimental from Zacas. (#83195)
Document that we don't use the double compare and swap instructions due to ABI concerns.
This commit is contained in:
parent
71c06bbb25
commit
95aab69c10
@ -74,6 +74,7 @@
|
||||
// CHECK-NOT: __riscv_xventanacondops {{.*$}}
|
||||
// CHECK-NOT: __riscv_za128rs {{.*$}}
|
||||
// CHECK-NOT: __riscv_za64rs {{.*$}}
|
||||
// CHECK-NOT: __riscv_zacas {{.*$}}
|
||||
// CHECK-NOT: __riscv_zawrs {{.*$}}
|
||||
// CHECK-NOT: __riscv_zba {{.*$}}
|
||||
// CHECK-NOT: __riscv_zbb {{.*$}}
|
||||
@ -166,7 +167,6 @@
|
||||
// CHECK-NOT: __riscv_ssqosid{{.*$}}
|
||||
// CHECK-NOT: __riscv_supm{{.*$}}
|
||||
// CHECK-NOT: __riscv_zaamo {{.*$}}
|
||||
// CHECK-NOT: __riscv_zacas {{.*$}}
|
||||
// CHECK-NOT: __riscv_zalasr {{.*$}}
|
||||
// CHECK-NOT: __riscv_zalrsc {{.*$}}
|
||||
// CHECK-NOT: __riscv_zcmop {{.*$}}
|
||||
@ -660,6 +660,14 @@
|
||||
// RUN: -o - | FileCheck --check-prefix=CHECK-ZA64RS-EXT %s
|
||||
// CHECK-ZA64RS-EXT: __riscv_za64rs 1000000{{$}}
|
||||
|
||||
// RUN: %clang --target=riscv32 \
|
||||
// RUN: -march=rv32i_zacas1p0 -E -dM %s \
|
||||
// RUN: -o - | FileCheck --check-prefix=CHECK-ZACAS-EXT %s
|
||||
// RUN: %clang --target=riscv64 \
|
||||
// RUN: -march=rv64i_zacas1p0 -E -dM %s \
|
||||
// RUN: -o - | FileCheck --check-prefix=CHECK-ZACAS-EXT %s
|
||||
// CHECK-ZACAS-EXT: __riscv_zacas 1000000{{$}}
|
||||
|
||||
// RUN: %clang --target=riscv32-unknown-linux-gnu \
|
||||
// RUN: -march=rv32izawrs -E -dM %s \
|
||||
// RUN: -o - | FileCheck --check-prefix=CHECK-ZAWRS-EXT %s
|
||||
@ -1485,14 +1493,6 @@
|
||||
// RUN: -o - | FileCheck --check-prefix=CHECK-ZAAMO-EXT %s
|
||||
// CHECK-ZAAMO-EXT: __riscv_zaamo 2000{{$}}
|
||||
|
||||
// RUN: %clang --target=riscv32 -menable-experimental-extensions \
|
||||
// RUN: -march=rv32i_zacas1p0 -E -dM %s \
|
||||
// RUN: -o - | FileCheck --check-prefix=CHECK-ZACAS-EXT %s
|
||||
// RUN: %clang --target=riscv64 -menable-experimental-extensions \
|
||||
// RUN: -march=rv64i_zacas1p0 -E -dM %s \
|
||||
// RUN: -o - | FileCheck --check-prefix=CHECK-ZACAS-EXT %s
|
||||
// CHECK-ZACAS-EXT: __riscv_zacas 1000000{{$}}
|
||||
|
||||
// RUN: %clang --target=riscv32 -menable-experimental-extensions \
|
||||
// RUN: -march=rv32i_zalasr0p1 -E -dM %s \
|
||||
// RUN: -o - | FileCheck --check-prefix=CHECK-ZALASR-EXT %s
|
||||
|
@ -117,6 +117,7 @@ on support follow.
|
||||
``V`` Supported
|
||||
``Za128rs`` Supported (`See note <#riscv-profiles-extensions-note>`__)
|
||||
``Za64rs`` Supported (`See note <#riscv-profiles-extensions-note>`__)
|
||||
``Zacas`` Supported (`See note <#riscv-zacas-note>`__)
|
||||
``Zawrs`` Assembly Support
|
||||
``Zba`` Supported
|
||||
``Zbb`` Supported
|
||||
@ -236,6 +237,11 @@ Supported
|
||||
``Za128rs``, ``Za64rs``, ``Zic64b``, ``Ziccamoa``, ``Ziccif``, ``Zicclsm``, ``Ziccrse``, ``Shcounterenvw``, ``Shgatpa``, ``Shtvala``, ``Shvsatpa``, ``Shvstvala``, ``Shvstvecd``, ``Ssccptr``, ``Sscounterenw``, ``Ssstateen``, ``Ssstrict``, ``Sstvala``, ``Sstvecd``, ``Ssu64xl``, ``Svade``, ``Svbare``
|
||||
These extensions are defined as part of the `RISC-V Profiles specification <https://github.com/riscv/riscv-profiles/releases/tag/v1.0>`__. They do not introduce any new features themselves, but instead describe existing hardware features.
|
||||
|
||||
.. _riscv-zacas-note:
|
||||
|
||||
``Zacas``
|
||||
amocas.w will be used for i32 cmpxchg. amocas.d will be used i64 cmpxchg on RV64. The compiler will not generate amocas.d on RV32 or amocas.q on RV64 due to ABI compatibilty. These can only be used in the assembler.
|
||||
|
||||
Experimental Extensions
|
||||
=======================
|
||||
|
||||
@ -252,9 +258,6 @@ The primary goal of experimental support is to assist in the process of ratifica
|
||||
``experimental-zabha``
|
||||
LLVM implements the `v1.0-rc1 draft specification <https://github.com/riscv/riscv-zabha/tree/v1.0-rc1>`__.
|
||||
|
||||
``experimental-zacas``
|
||||
LLVM implements the `1.0-rc1 draft specification <https://github.com/riscv/riscv-zacas/releases/tag/v1.0-rc1>`__.
|
||||
|
||||
``experimental-zalasr``
|
||||
LLVM implements the `0.0.5 draft specification <https://github.com/mehnadnerd/riscv-zalasr>`__.
|
||||
|
||||
|
@ -103,6 +103,7 @@ Changes to the RISC-V Backend
|
||||
* Codegen support was added for the Zimop (May-Be-Operations) extension.
|
||||
* The experimental Ssnpm, Smnpm, Smmpm, Sspm, and Supm 0.8.1 Pointer Masking extensions are supported.
|
||||
* The experimental Ssqosid extension is supported.
|
||||
* Zacas is no longer experimental.
|
||||
|
||||
Changes to the WebAssembly Backend
|
||||
----------------------------------
|
||||
|
@ -109,6 +109,7 @@ static const RISCVSupportedExtension SupportedExtensions[] = {
|
||||
|
||||
{"za128rs", {1, 0}},
|
||||
{"za64rs", {1, 0}},
|
||||
{"zacas", {1, 0}},
|
||||
{"zawrs", {1, 0}},
|
||||
|
||||
{"zba", {1, 0}},
|
||||
@ -220,7 +221,6 @@ static const RISCVSupportedExtension SupportedExperimentalExtensions[] = {
|
||||
|
||||
{"zaamo", {0, 2}},
|
||||
{"zabha", {1, 0}},
|
||||
{"zacas", {1, 0}},
|
||||
{"zalasr", {0, 1}},
|
||||
{"zalrsc", {0, 2}},
|
||||
|
||||
|
@ -185,7 +185,7 @@ def HasStdExtZabha : Predicate<"Subtarget->hasStdExtZabha()">,
|
||||
"'Zabha' (Byte and Halfword Atomic Memory Operations)">;
|
||||
|
||||
def FeatureStdExtZacas
|
||||
: SubtargetFeature<"experimental-zacas", "HasStdExtZacas", "true",
|
||||
: SubtargetFeature<"zacas", "HasStdExtZacas", "true",
|
||||
"'Zacas' (Atomic Compare-And-Swap Instructions)">;
|
||||
def HasStdExtZacas : Predicate<"Subtarget->hasStdExtZacas()">,
|
||||
AssemblerPredicate<(all_of FeatureStdExtZacas),
|
||||
|
@ -1,13 +1,13 @@
|
||||
; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
|
||||
; RUN: llc -mtriple=riscv32 -mattr=+a -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefixes=NOZACAS,RV32IA %s
|
||||
; RUN: llc -mtriple=riscv32 -mattr=+a,+experimental-zacas -verify-machineinstrs < %s \
|
||||
; RUN: llc -mtriple=riscv32 -mattr=+a,+zacas -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefixes=ZACAS,RV32IA-ZACAS %s
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefixes=NOZACAS,RV64IA %s
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a,+experimental-zacas -verify-machineinstrs < %s \
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a,+zacas -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefixes=ZACAS,RV64IA-ZACAS %s
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a,+experimental-zacas,+experimental-zabha -verify-machineinstrs < %s \
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a,+zacas,+experimental-zabha -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefixes=ZACAS,RV64IA-ZABHA %s
|
||||
|
||||
; Test cmpxchg followed by a branch on the cmpxchg success value to see if the
|
||||
|
@ -3,25 +3,25 @@
|
||||
; RUN: | FileCheck -check-prefix=RV32I %s
|
||||
; RUN: llc -mtriple=riscv32 -mattr=+a -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefixes=RV32IA,RV32IA-WMO %s
|
||||
; RUN: llc -mtriple=riscv32 -mattr=+a,+experimental-zacas -verify-machineinstrs < %s \
|
||||
; RUN: llc -mtriple=riscv32 -mattr=+a,+zacas -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefixes=RV32IA,RV32IA-ZACAS,RV32IA-WMO-ZACAS %s
|
||||
; RUN: llc -mtriple=riscv32 -mattr=+a,+experimental-ztso -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefixes=RV32IA,RV32IA-TSO %s
|
||||
; RUN: llc -mtriple=riscv32 -mattr=+a,+experimental-ztso,+experimental-zacas -verify-machineinstrs < %s \
|
||||
; RUN: llc -mtriple=riscv32 -mattr=+a,+experimental-ztso,+zacas -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefixes=RV32IA,RV32IA-ZACAS,RV32IA-TSO-ZACAS %s
|
||||
; RUN: llc -mtriple=riscv64 -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefix=RV64I %s
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefixes=RV64IA,RV64IA-WMO %s
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a,+experimental-zacas -verify-machineinstrs < %s \
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a,+zacas -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefixes=RV64IA,RV64IA-ZACAS,RV64IA-WMO-ZACAS %s
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a,+experimental-zacas,+experimental-zabha -verify-machineinstrs < %s \
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a,+zacas,+experimental-zabha -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefixes=RV64IA,RV64IA-ZABHA,RV64IA-WMO-ZABHA %s
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a,+experimental-ztso -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefixes=RV64IA,RV64IA-TSO %s
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a,+experimental-ztso,+experimental-zacas -verify-machineinstrs < %s \
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a,+experimental-ztso,+zacas -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefixes=RV64IA,RV64IA-ZACAS,RV64IA-TSO-ZACAS %s
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a,+experimental-ztso,+experimental-zacas,+experimental-zabha -verify-machineinstrs < %s \
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a,+experimental-ztso,+zacas,+experimental-zabha -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefixes=RV64IA,RV64IA-ZABHA,RV64IA-TSO-ZABHA %s
|
||||
|
||||
define void @cmpxchg_i8_monotonic_monotonic(ptr %ptr, i8 %cmp, i8 %val) nounwind {
|
||||
|
@ -12,22 +12,22 @@
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a,+experimental-ztso -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefixes=RV64IA,RV64IA-NOZACAS,RV64IA-TSO,RV64IA-TSO-NOZACAS %s
|
||||
|
||||
; RUN: llc -mtriple=riscv32 -mattr=+a,+experimental-zacas -verify-machineinstrs < %s \
|
||||
; RUN: llc -mtriple=riscv32 -mattr=+a,+zacas -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefixes=RV32IA,RV32IA-ZACAS,RV32IA-WMO,RV32IA-WMO-ZACAS %s
|
||||
; RUN: llc -mtriple=riscv32 -mattr=+a,+experimental-ztso,+experimental-zacas -verify-machineinstrs < %s \
|
||||
; RUN: llc -mtriple=riscv32 -mattr=+a,+experimental-ztso,+zacas -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefixes=RV32IA,RV32IA-ZACAS,RV32IA-TSO,RV32IA-TSO-ZACAS %s
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a,+experimental-zacas -verify-machineinstrs < %s \
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a,+zacas -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefixes=RV64IA,RV64IA-ZACAS,RV64IA-WMO,RV64IA-WMO-ZACAS %s
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a,+experimental-ztso,+experimental-zacas -verify-machineinstrs < %s \
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a,+experimental-ztso,+zacas -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefixes=RV64IA,RV64IA-ZACAS,RV64IA-TSO,RV64IA-TSO-ZACAS %s
|
||||
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a,+experimental-zabha -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefixes=RV64IA,RV64IA-WMO,RV64IA-WMO-ZABHA,RV64IA-WMO-ZABHA-NOZACAS %s
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a,+experimental-ztso,+experimental-zabha -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefixes=RV64IA,RV64IA-TSO,RV64IA-TSO-ZABHA,RV64IA-TSO-ZABHA-NOZACAS %s
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a,+experimental-zabha,+experimental-zacas -verify-machineinstrs < %s \
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a,+experimental-zabha,+zacas -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefixes=RV64IA,RV64IA-WMO,RV64IA-WMO-ZABHA,RV64IA-WMO-ZABHA-ZACAS %s
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a,+experimental-ztso,+experimental-zabha,+experimental-zacas -verify-machineinstrs < %s \
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a,+experimental-ztso,+experimental-zabha,+zacas -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefixes=RV64IA,RV64IA-TSO,RV64IA-TSO-ZABHA,RV64IA-TSO-ZABHA-ZACAS %s
|
||||
|
||||
define i8 @atomicrmw_xchg_i8_monotonic(ptr %a, i8 %b) nounwind {
|
||||
|
@ -3,13 +3,13 @@
|
||||
; RUN: | FileCheck -check-prefix=RV32I %s
|
||||
; RUN: llc -mtriple=riscv32 -mattr=+a -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefixes=RV32IA,RV32IA-NOZACAS %s
|
||||
; RUN: llc -mtriple=riscv32 -mattr=+a,+experimental-zacas -verify-machineinstrs < %s \
|
||||
; RUN: llc -mtriple=riscv32 -mattr=+a,+zacas -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefixes=RV32IA,RV32IA-ZACAS %s
|
||||
; RUN: llc -mtriple=riscv64 -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefix=RV64I %s
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefixes=RV64IA,RV64IA-NOZACAS %s
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a,+experimental-zacas -verify-machineinstrs < %s \
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+a,+zacas -verify-machineinstrs < %s \
|
||||
; RUN: | FileCheck -check-prefixes=RV64IA,RV64IA-ZACAS %s
|
||||
|
||||
define signext i8 @atomic_load_i8_unordered(ptr %a) nounwind {
|
||||
|
@ -111,7 +111,7 @@
|
||||
; RUN: llc -mtriple=riscv32 -mattr=+experimental-zvfbfmin %s -o - | FileCheck --check-prefixes=CHECK,RV32ZVFBFMIN %s
|
||||
; RUN: llc -mtriple=riscv32 -mattr=+experimental-zvfbfwma %s -o - | FileCheck --check-prefixes=CHECK,RV32ZVFBFWMA %s
|
||||
; RUN: llc -mtriple=riscv32 -mattr=+experimental-zaamo %s -o - | FileCheck --check-prefix=RV32ZAAMO %s
|
||||
; RUN: llc -mtriple=riscv32 -mattr=+experimental-zacas %s -o - | FileCheck --check-prefix=RV32ZACAS %s
|
||||
; RUN: llc -mtriple=riscv32 -mattr=+zacas %s -o - | FileCheck --check-prefix=RV32ZACAS %s
|
||||
; RUN: llc -mtriple=riscv32 -mattr=+experimental-zalasr %s -o - | FileCheck --check-prefix=RV32ZALASR %s
|
||||
; RUN: llc -mtriple=riscv32 -mattr=+experimental-zalrsc %s -o - | FileCheck --check-prefix=RV32ZALRSC %s
|
||||
; RUN: llc -mtriple=riscv32 -mattr=+experimental-zicfilp %s -o - | FileCheck --check-prefix=RV32ZICFILP %s
|
||||
@ -240,7 +240,7 @@
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+experimental-zvfbfmin %s -o - | FileCheck --check-prefixes=CHECK,RV64ZVFBFMIN %s
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+experimental-zvfbfwma %s -o - | FileCheck --check-prefixes=CHECK,RV64ZVFBFWMA %s
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+experimental-zaamo %s -o - | FileCheck --check-prefix=RV64ZAAMO %s
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+experimental-zacas %s -o - | FileCheck --check-prefix=RV64ZACAS %s
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+zacas %s -o - | FileCheck --check-prefix=RV64ZACAS %s
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+experimental-zalasr %s -o - | FileCheck --check-prefix=RV64ZALASR %s
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+experimental-zalrsc %s -o - | FileCheck --check-prefix=RV64ZALRSC %s
|
||||
; RUN: llc -mtriple=riscv64 -mattr=+experimental-zicfilp %s -o - | FileCheck --check-prefix=RV64ZICFILP %s
|
||||
|
@ -1,4 +1,4 @@
|
||||
# RUN: not llvm-mc -triple riscv32 -mattr=+experimental-zacas < %s 2>&1 | FileCheck %s
|
||||
# RUN: not llvm-mc -triple riscv32 -mattr=+zacas < %s 2>&1 | FileCheck %s
|
||||
|
||||
# Non-zero offsets not supported for the third operand (rs1).
|
||||
amocas.w a1, a3, 1(a5) # CHECK: :[[@LINE]]:18: error: optional integer offset must be 0
|
||||
|
@ -1,12 +1,12 @@
|
||||
# RUN: llvm-mc %s -triple=riscv32 -mattr=+experimental-zacas -riscv-no-aliases -show-encoding \
|
||||
# RUN: llvm-mc %s -triple=riscv32 -mattr=+zacas -riscv-no-aliases -show-encoding \
|
||||
# RUN: | FileCheck -check-prefixes=CHECK-ASM,CHECK-ASM-AND-OBJ %s
|
||||
# RUN: llvm-mc %s -triple=riscv64 -mattr=+experimental-zacas -riscv-no-aliases -show-encoding \
|
||||
# RUN: llvm-mc %s -triple=riscv64 -mattr=+zacas -riscv-no-aliases -show-encoding \
|
||||
# RUN: | FileCheck -check-prefixes=CHECK-ASM,CHECK-ASM-AND-OBJ %s
|
||||
# RUN: llvm-mc -filetype=obj -triple=riscv32 -mattr=+experimental-zacas < %s \
|
||||
# RUN: | llvm-objdump --mattr=+experimental-zacas -M no-aliases -d -r - \
|
||||
# RUN: llvm-mc -filetype=obj -triple=riscv32 -mattr=+zacas < %s \
|
||||
# RUN: | llvm-objdump --mattr=+zacas -M no-aliases -d -r - \
|
||||
# RUN: | FileCheck --check-prefix=CHECK-ASM-AND-OBJ %s
|
||||
# RUN: llvm-mc -filetype=obj -triple=riscv64 -mattr=+experimental-zacas < %s \
|
||||
# RUN: | llvm-objdump --mattr=+experimental-zacas -M no-aliases -d -r - \
|
||||
# RUN: llvm-mc -filetype=obj -triple=riscv64 -mattr=+zacas < %s \
|
||||
# RUN: | llvm-objdump --mattr=+zacas -M no-aliases -d -r - \
|
||||
# RUN: | FileCheck --check-prefix=CHECK-ASM-AND-OBJ %s
|
||||
# RUN: not llvm-mc -triple=riscv32 -mattr=+a -show-encoding %s 2>&1 \
|
||||
# RUN: | FileCheck %s --check-prefix=CHECK-ERROR
|
||||
|
@ -1,7 +1,7 @@
|
||||
# RUN: llvm-mc %s -triple=riscv64 -mattr=+experimental-zacas -riscv-no-aliases -show-encoding \
|
||||
# RUN: llvm-mc %s -triple=riscv64 -mattr=+zacas -riscv-no-aliases -show-encoding \
|
||||
# RUN: | FileCheck -check-prefixes=CHECK-ASM,CHECK-ASM-AND-OBJ %s
|
||||
# RUN: llvm-mc -filetype=obj -triple=riscv64 -mattr=+experimental-zacas < %s \
|
||||
# RUN: | llvm-objdump --mattr=+experimental-zacas -M no-aliases -d -r - \
|
||||
# RUN: llvm-mc -filetype=obj -triple=riscv64 -mattr=+zacas < %s \
|
||||
# RUN: | llvm-objdump --mattr=+zacas -M no-aliases -d -r - \
|
||||
# RUN: | FileCheck --check-prefix=CHECK-ASM-AND-OBJ %s
|
||||
# RUN: not llvm-mc -triple=riscv64 -mattr=+a -show-encoding %s 2>&1 \
|
||||
# RUN: | FileCheck %s --check-prefix=CHECK-ERROR
|
||||
|
@ -1,12 +1,12 @@
|
||||
# RUN: llvm-mc %s -triple=riscv32 -mattr=+experimental-zabha,+experimental-zacas -riscv-no-aliases -show-encoding \
|
||||
# RUN: llvm-mc %s -triple=riscv32 -mattr=+experimental-zabha,+zacas -riscv-no-aliases -show-encoding \
|
||||
# RUN: | FileCheck -check-prefixes=CHECK-ASM,CHECK-ASM-AND-OBJ %s
|
||||
# RUN: llvm-mc %s -triple=riscv64 -mattr=+experimental-zabha,+experimental-zacas -riscv-no-aliases -show-encoding \
|
||||
# RUN: llvm-mc %s -triple=riscv64 -mattr=+experimental-zabha,+zacas -riscv-no-aliases -show-encoding \
|
||||
# RUN: | FileCheck -check-prefixes=CHECK-ASM,CHECK-ASM-AND-OBJ %s
|
||||
# RUN: llvm-mc -filetype=obj -triple=riscv32 -mattr=+experimental-zabha,+experimental-zacas < %s \
|
||||
# RUN: | llvm-objdump --mattr=+experimental-zabha,+experimental-zacas -M no-aliases -d -r - \
|
||||
# RUN: llvm-mc -filetype=obj -triple=riscv32 -mattr=+experimental-zabha,+zacas < %s \
|
||||
# RUN: | llvm-objdump --mattr=+experimental-zabha,+zacas -M no-aliases -d -r - \
|
||||
# RUN: | FileCheck --check-prefix=CHECK-ASM-AND-OBJ %s
|
||||
# RUN: llvm-mc -filetype=obj -triple=riscv64 -mattr=+experimental-zabha,+experimental-zacas < %s \
|
||||
# RUN: | llvm-objdump --mattr=+experimental-zabha,+experimental-zacas -M no-aliases -d -r - \
|
||||
# RUN: llvm-mc -filetype=obj -triple=riscv64 -mattr=+experimental-zabha,+zacas < %s \
|
||||
# RUN: | llvm-objdump --mattr=+experimental-zabha,+zacas -M no-aliases -d -r - \
|
||||
# RUN: | FileCheck --check-prefix=CHECK-ASM-AND-OBJ %s
|
||||
# RUN: not llvm-mc -triple=riscv32 -mattr=+experimental-zabha -show-encoding %s 2>&1 \
|
||||
# RUN: | FileCheck %s --check-prefix=CHECK-ERROR
|
||||
|
@ -752,6 +752,7 @@ R"(All available -march extensions for RISC-V
|
||||
zmmul 1.0
|
||||
za128rs 1.0
|
||||
za64rs 1.0
|
||||
zacas 1.0
|
||||
zawrs 1.0
|
||||
zfa 1.0
|
||||
zfh 1.0
|
||||
@ -873,7 +874,6 @@ Experimental extensions
|
||||
zimop 0.1
|
||||
zaamo 0.2
|
||||
zabha 1.0
|
||||
zacas 1.0
|
||||
zalasr 0.1
|
||||
zalrsc 0.2
|
||||
zfbfmin 1.0
|
||||
|
Loading…
x
Reference in New Issue
Block a user