It works very well on Apple Silicon.
And I found the issue maybe caused by the toolchain-riscv.
otool -hv ~/.platformio/packages/toolchain-riscv/bin/riscv-wch-elf-g++
/Users/donly/.platformio/packages/toolchain-riscv/bin/riscv-wch-elf-g++:
Mach header
magic cputype cpusubtype caps filetype ncmds sizeofcmds flags
MH_MAGIC_64 ARM64 ALL 0x00 EXECUTE 20 2000 NOUNDEFS DYLDLINK TWOLEVEL WEAK_DEFINES
BINDS_TO_WEAK PIE