http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60528
--- Comment #3 from rsandifo at gcc dot gnu.org <rsandifo at gcc dot gnu.org> --- Agree about 'unsigned long'. IMO we shouldn't use 'long' directly in GCC; it should be one of 'int', 'HOST_WIDE_INT' or 'HOST_WIDEST_INT'. FWIW the test passes for me on mips64-linux-gnu on all three ABIs. I'm using glibc f8d529d5199ef7575dae9f8e1909139cf429c1e2 compiled by a recentish 4.9 --with-arch=mips64 --with-mips-plt gcc.