Libiberty bootstrap (haikuports.cross) compiling different from gcc & binutils

Recently I am trying bootstrap compiling haiku for mips64el(loongson) platform. I have got the buildtool configure building success. And finally I got gcc-bootstrap from sys-devel compiling works. but it failed when compiling libiberty* of gcc.

    /home/kurain/build/haiku/generated.mipsel/objects/haiku/mips64el/packaging/repositories/HaikuPortsCross-build/sys-devel/gcc_bootstrap/work-8.3.0_2019_05_24/sources/buildtools-32f9366f9eac1c2ea7d41f067432e636bb735806/libiberty/physmem.c: In function 'physmem_total':
/home/kurain/build/haiku/generated.mipsel/objects/haiku/mips64el/packaging/repositories/HaikuPortsCross-build/sys-devel/gcc_bootstrap/work-8.3.0_2019_05_24/sources/buildtools-32f9366f9eac1c2ea7d41f067432e636bb735806/libiberty/physmem.c:96:23: error: storage size of 'pss' isn't known
     struct pst_static pss;
                       ^~~
/home/kurain/build/haiku/generated.mipsel/objects/haiku/mips64el/packaging/repositories/HaikuPortsCross-build/sys-devel/gcc_bootstrap/work-8.3.0_2019_05_24/sources/buildtools-32f9366f9eac1c2ea7d41f067432e636bb735806/libiberty/physmem.c:97:14: warning: implicit declaration of function 'pstat_getstatic'; did you mean 'pex_get_status'? [-Wimplicit-function-declaration]
     if (0 <= pstat_getstatic (&pss, sizeof pss, 1, 0))
              ^~~~~~~~~~~~~~~
              pex_get_status
/home/kurain/build/haiku/generated.mipsel/objects/haiku/mips64el/packaging/repositories/HaikuPortsCross-build/sys-devel/gcc_bootstrap/work-8.3.0_2019_05_24/sources/buildtools-32f9366f9eac1c2ea7d41f067432e636bb735806/libiberty/physmem.c:96:23: warning: unused variable 'pss' [-Wunused-variable]
     struct pst_static pss;
                       ^~~
/home/kurain/build/haiku/generated.mipsel/objects/haiku/mips64el/packaging/repositories/HaikuPortsCross-build/sys-devel/gcc_bootstrap/work-8.3.0_2019_05_24/sources/buildtools-32f9366f9eac1c2ea7d41f067432e636bb735806/libiberty/physmem.c: In function 'physmem_available':
/home/kurain/build/haiku/generated.mipsel/objects/haiku/mips64el/packaging/repositories/HaikuPortsCross-build/sys-devel/gcc_bootstrap/work-8.3.0_2019_05_24/sources/buildtools-32f9366f9eac1c2ea7d41f067432e636bb735806/libiberty/physmem.c:200:23: error: storage size of 'pss' isn't known
     struct pst_static pss;
                       ^~~
/home/kurain/build/haiku/generated.mipsel/objects/haiku/mips64el/packaging/repositories/HaikuPortsCross-build/sys-devel/gcc_bootstrap/work-8.3.0_2019_05_24/sources/buildtools-32f9366f9eac1c2ea7d41f067432e636bb735806/libiberty/physmem.c:201:24: error: storage size of 'psd' isn't known
     struct pst_dynamic psd;
                        ^~~
/home/kurain/build/haiku/generated.mipsel/objects/haiku/mips64el/packaging/repositories/HaikuPortsCross-build/sys-devel/gcc_bootstrap/work-8.3.0_2019_05_24/sources/buildtools-32f9366f9eac1c2ea7d41f067432e636bb735806/libiberty/physmem.c:203:10: warning: implicit declaration of function 'pstat_getdynamic' [-Wimplicit-function-declaration]
  && 0 <= pstat_getdynamic (&psd, sizeof psd, 1, 0))

And I have checked the libiberty , it could be compiled successfully. And finally I found that it’s caused by the config.h generated, which is differrent.

config.h of libiberty from binutils:

/* #undef HAVE_PSTAT_GETSTATIC */

config.h of libiberty from gcc:

#define HAVE_PSTAT_GETSTATIC 1

And we don’t have any function for pstat_getstatic, I have no idea what’s going on.