RISCV64 (fixed: 96e1383 )
druntime/src/core/thread/fiber.d(1241,18): vgc: ` new` causes a GC allocation
druntime/src/core/thread/fiber.d(1967,13): Error: static assert: " Not implemented"
static assert(0, " Not implemented" );
CI: https://github.com/kassane/druntime-zigbuild/actions/runs/9627275994/job/26554182002#step:5:128
fix: for riscv64 target no add asmExternal!!
MIPS
Important
libunwind.d for MIPS is modified. Because druntime upstream no have _LIBUNWIND_CONTEXT_SIZE and _LIBUNWIND_CURSOR_SIZE added on MIPS
else version (MIPS_O32 )
{
version (MIPS_HardFloat )
{
enum _LIBUNWIND_CONTEXT_SIZE = 50 ;
enum _LIBUNWIND_CURSOR_SIZE = 57 ;
}
else
{
enum _LIBUNWIND_CONTEXT_SIZE = 18 ;
enum _LIBUNWIND_CURSOR_SIZE = 24 ;
}
}
else version (MIPS_N32 )
{
version (MIPS_HardFloat )
{
enum _LIBUNWIND_CONTEXT_SIZE = 67 ;
enum _LIBUNWIND_CURSOR_SIZE = 74 ;
}
else
{
enum _LIBUNWIND_CONTEXT_SIZE = 35 ;
enum _LIBUNWIND_CURSOR_SIZE = 42 ;
}
}
else version (MIPS64 )
{
version (MIPS_HardFloat )
{
enum _LIBUNWIND_CONTEXT_SIZE = 67 ;
enum _LIBUNWIND_CURSOR_SIZE = 79 ;
}
else
{
enum _LIBUNWIND_CONTEXT_SIZE = 35 ;
enum _LIBUNWIND_CURSOR_SIZE = 47 ;
}
}
mips64el-linux-musl
druntime/src/core/demangle.d(2488,38): vgc: setting ` length` may cause a GC allocation
druntime/src/core/sys/posix/sys/stat.d(370,17): Error: static assert: ` 176u == 160u` is false
static assert(stat_t.sizeof == 160);
fix: remove this LoC and rebuild... no issue
mipsel-linux-musl
Same issue on mips64el-linux-musl ... but get new error:
druntime/src/core/internal/gc/impl/conservative/gc.d(165,17): ` _inFinalizer` is thread local
druntime/src/core/exception.d(870,44): ` _store` is thread local
druntime/src/core/thread/osthread.d(1589):1:12: warning: used $at (currently $1 ) without " .set noat"
sw $1 6, 0($1 )
^
druntime/src/core/thread/osthread.d(1589):1:12: warning: used $at (currently $1 ) without " .set noat"
sw $1 6, 0($1 )
^
druntime/src/core/thread/osthread.d(1589):1:12: warning: used $at (currently $1 ) without " .set noat"
sw $1 6, 0($1 )
^
druntime/src/core/thread/osthread.d(1589):1:12: warning: used $at (currently $1 ) without " .set noat"
sw $1 7, 0($1 )
^
druntime/src/core/thread/osthread.d(1589):1:12: warning: used $at (currently $1 ) without " .set noat"
sw $1 7, 0($1 )
^
druntime/src/core/thread/osthread.d(1589):1:12: warning: used $at (currently $1 ) without " .set noat"
sw $1 7, 0($1 )
^
druntime/src/core/thread/osthread.d(1589):1:12: warning: used $at (currently $1 ) without " .set noat"
sw $1 8, 0($1 )
^
druntime/src/core/thread/osthread.d(1589):1:12: warning: used $at (currently $1 ) without " .set noat"
sw $1 8, 0($1 )
^
druntime/src/core/thread/osthread.d(1589):1:12: warning: used $at (currently $1 ) without " .set noat"
sw $1 8, 0($1 )
^
druntime/src/core/thread/osthread.d(1589):1:12: warning: used $at (currently $1 ) without " .set noat"
sw $1 9, 0($1 )
^
druntime/src/core/thread/osthread.d(1589):1:12: warning: used $at (currently $1 ) without " .set noat"
sw $1 9, 0($1 )
^
druntime/src/core/thread/osthread.d(1589):1:12: warning: used $at (currently $1 ) without " .set noat"
sw $1 9, 0($1 )
^
druntime/src/core/thread/osthread.d(1589):1:12: warning: used $at (currently $1 ) without " .set noat"
sw $2 0, 0($1 )
^
druntime/src/core/thread/osthread.d(1589):1:12: warning: used $at (currently $1 ) without " .set noat"
sw $2 0, 0($1 )
^
druntime/src/core/thread/osthread.d(1589):1:12: warning: used $at (currently $1 ) without " .set noat"
sw $2 0, 0($1 )
^
druntime/src/core/thread/osthread.d(1589):1:12: warning: used $at (currently $1 ) without " .set noat"
sw $2 1, 0($1 )
^
druntime/src/core/thread/osthread.d(1589):1:12: warning: used $at (currently $1 ) without " .set noat"
sw $2 1, 0($1 )
^
druntime/src/core/thread/osthread.d(1589):1:12: warning: used $at (currently $1 ) without " .set noat"
sw $2 1, 0($1 )
^
druntime/src/core/thread/osthread.d(1589):1:12: warning: used $at (currently $1 ) without " .set noat"
sw $2 2, 0($1 )
^
druntime/src/core/thread/osthread.d(1589):1:12: warning: used $at (currently $1 ) without " .set noat"
sw $2 2, 0($1 )
^
druntime/src/core/thread/osthread.d(1589):1:12: warning: used $at (currently $1 ) without " .set noat"
sw $2 2, 0($1 )
^
druntime/src/core/thread/osthread.d(1589):1:12: warning: used $at (currently $1 ) without " .set noat"
sw $2 3, 0($1 )
^
druntime/src/core/thread/osthread.d(1589):1:12: warning: used $at (currently $1 ) without " .set noat"
sw $2 3, 0($1 )
^
druntime/src/core/thread/osthread.d(1589):1:12: warning: used $at (currently $1 ) without " .set noat"
sw $2 3, 0($1 )
^
install
└─ druntime failure
error: the following command exited with error code 1:
Reference
RISCV64 (fixed: 96e1383)
CI: https://github.com/kassane/druntime-zigbuild/actions/runs/9627275994/job/26554182002#step:5:128
fix: for riscv64 target no add
asmExternal!!MIPS
Important
libunwind.dfor MIPS is modified. Because druntime upstream no have_LIBUNWIND_CONTEXT_SIZEand_LIBUNWIND_CURSOR_SIZEadded on MIPSdruntime-zigbuild/druntime/src/core/internal/backtrace/libunwind.d
Lines 159 to 197 in b77dddd
mips64el-linux-musl
fix: remove this LoC and rebuild... no issue
mipsel-linux-musl
Same issue on mips64el-linux-musl... but get new error:
Reference