diff --git a/README.md b/README.md index aaa5c36..fe3a7ad 100644 --- a/README.md +++ b/README.md @@ -219,7 +219,7 @@ _`fma4` on zen1, ISA in hypervisor, etc._ |:---:|---| |x86|`mmx` `sse` `sse2` `sse3` `ssse3` `sse41` `sse42` `sse4a` `xop` `avx` `f16c` `fma` `fma4` `avx2` `avx512f` `avx512bw` `avx512cd` `avx512dq` `avx512vl` `avx512vnni` `avx512bf16` `avx512ifma` `avx512vbmi` `avx512vbmi2` `avx512fp16` `avxvnni` `avxvnniint8` `avxifma`| |arm|`edsp` `neon` `vfpv4` `idiv`| -|aarch64|`neon` `vfpv4` `cpuid` `asimdhp` `asimddp` `asimdfhm` `bf16` `i8mm` `mte` `sve` `sve2` `svebf16` `svei8mm` `svef32mm` `sha3` `sha512` `sm3` `sm4` `amx`| +|aarch64|`neon` `vfpv4` `cpuid` `asimdrdm` `asimdhp` `asimddp` `asimdfhm` `bf16` `i8mm` `mte` `sve` `sve2` `svebf16` `svei8mm` `svef32mm` `sha3` `sha512` `sm3` `sm4` `amx`| |mips|`msa`| |powerpc|`vsx`| |s390x|`zvector`| diff --git a/main.c b/main.c index 4132799..cd929d3 100644 --- a/main.c +++ b/main.c @@ -49,6 +49,7 @@ int main() PRINT_ISA_SUPPORT(neon) PRINT_ISA_SUPPORT(vfpv4) PRINT_ISA_SUPPORT(cpuid) + PRINT_ISA_SUPPORT(asimdrdm) PRINT_ISA_SUPPORT(asimdhp) PRINT_ISA_SUPPORT(asimddp) PRINT_ISA_SUPPORT(asimdfhm) diff --git a/ruapu.h b/ruapu.h index fee9cf9..30ae9fe 100644 --- a/ruapu.h +++ b/ruapu.h @@ -200,6 +200,7 @@ RUAPU_INSTCODE(avxifma, 0xc4, 0xe2, 0xfd, 0xb4, 0xc0) // vpmadd52luq ymm0,ymm0,y RUAPU_INSTCODE(neon, 0x4e20d400) // fadd v0.4s,v0.4s,v0.4s RUAPU_INSTCODE(vfpv4, 0x1f000000) // fmadd s0,s0,s0,s0 RUAPU_INSTCODE(cpuid, 0xd5380000) // mrs x0,midr_el1 +RUAPU_INSTCODE(asimdrdm, 0x6e808400) // sqrdmlah v0.4s,v0.4s,v0.4s RUAPU_INSTCODE(asimdhp, 0x0e401400) // fadd v0.4h,v0.4h,v0.4h RUAPU_INSTCODE(asimddp, 0x4e809400) // sdot v0.4h,v0.16b,v0.16b RUAPU_INSTCODE(asimdfhm, 0x4e20ec00) // fmlal v0.4s,v0.4h,v0.4h @@ -299,6 +300,7 @@ RUAPU_ISAENTRY(avxifma) RUAPU_ISAENTRY(neon) RUAPU_ISAENTRY(vfpv4) RUAPU_ISAENTRY(cpuid) +RUAPU_ISAENTRY(asimdrdm) RUAPU_ISAENTRY(asimdhp) RUAPU_ISAENTRY(asimddp) RUAPU_ISAENTRY(asimdfhm)