From 062b3b2fd25d2bcdf0698a7adcf82e0e71e28eda Mon Sep 17 00:00:00 2001 From: nihui Date: Fri, 23 Feb 2024 21:59:01 +0800 Subject: [PATCH 1/3] Update ruapu.h --- ruapu.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ruapu.h b/ruapu.h index 772251f..b774c33 100644 --- a/ruapu.h +++ b/ruapu.h @@ -217,10 +217,12 @@ RUAPU_INSTCODE(amx, 0x00201220) // amx setup RUAPU_INSTCODE(edsp, 0xfb20, 0x0000) // smlad r0,r0,r0,r0 RUAPU_INSTCODE(neon, 0xef00, 0x0d40) // vadd.f32 q0,q0,q0 RUAPU_INSTCODE(vfpv4, 0xffb6, 0x0600) // vcvt.f16.f32 d0,q0 +RUAPU_INSTCODE(idiv, 0x2003, 0xfb90, 0xf0f0) // movs r0,#3 + sdiv r0,r0,r0 #else RUAPU_INSTCODE(edsp, 0xe7000010) // smlad r0,r0,r0,r0 RUAPU_INSTCODE(neon, 0xf2000d40) // vadd.f32 q0,q0,q0 RUAPU_INSTCODE(vfpv4, 0xf3b60600) // vcvt.f16.f32 d0,q0 +RUAPU_INSTCODE(idiv, 0xe3a00003, 0xe710f010) // movs r0,#3 + sdiv r0,r0,r0 #endif #elif __mips__ @@ -311,6 +313,7 @@ RUAPU_ISAENTRY(amx) RUAPU_ISAENTRY(edsp) RUAPU_ISAENTRY(neon) RUAPU_ISAENTRY(vfpv4) +RUAPU_ISAENTRY(idiv) #elif __mips__ RUAPU_ISAENTRY(msa) From 70601a0ab56a01bb6c9a4a3c4887fd83749de45c Mon Sep 17 00:00:00 2001 From: nihui Date: Fri, 23 Feb 2024 22:00:02 +0800 Subject: [PATCH 2/3] Update main.c --- main.c | 1 + 1 file changed, 1 insertion(+) diff --git a/main.c b/main.c index 5edf65a..e4b1663 100644 --- a/main.c +++ b/main.c @@ -69,6 +69,7 @@ int main() PRINT_ISA_SUPPORT(edsp) PRINT_ISA_SUPPORT(neon) PRINT_ISA_SUPPORT(vfpv4) + PRINT_ISA_SUPPORT(idiv) #elif __mips__ PRINT_ISA_SUPPORT(msa) From 350e34eb2c97b03727c46c0e740589ca9941ed60 Mon Sep 17 00:00:00 2001 From: nihui Date: Fri, 23 Feb 2024 22:00:26 +0800 Subject: [PATCH 3/3] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b7e966c..0b282e8 100644 --- a/README.md +++ b/README.md @@ -218,7 +218,7 @@ _`fma4` on zen1, ISA in hypervisor, etc._ |CPU|ISA| |:---:|---| |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`| +|arm|`edsp` `neon` `vfpv4` `idiv`| |aarch64|`neon` `vfpv4` `cpuid` `asimdhp` `asimddp` `asimdfhm` `bf16` `i8mm` `sve` `sve2` `svebf16` `svei8mm` `svef32mm` `sha3` `sha512` `sm3` `sm4` `amx`| |mips|`msa`| |powerpc|`vsx`|