1. 02 4月, 2013 3 次提交
  2. 27 3月, 2013 1 次提交
    • R
      remove __SYSCALL_SSLEN arch macro in favor of using public _NSIG · ccc7b4c3
      Rich Felker 提交于
      the issue at hand is that many syscalls require as an argument the
      kernel-ABI size of sigset_t, intended to allow the kernel to switch to
      a larger sigset_t in the future. previously, each arch was defining
      this size in syscall_arch.h, which was redundant with the definition
      of _NSIG in bits/signal.h. as it's used in some not-quite-portable
      application code as well, _NSIG is much more likely to be recognized
      and understood immediately by someone reading the code, and it's also
      shorter and less cluttered.
      
      note that _NSIG is actually 65/129, not 64/128, but the division takes
      care of throwing away the off-by-one part.
      ccc7b4c3
  3. 24 3月, 2013 1 次提交
  4. 05 3月, 2013 1 次提交
    • R
      fix types for wctype_t and wctrans_t · da1442c9
      Rich Felker 提交于
      wctype_t was incorrectly "int" rather than "long" on x86_64. not only
      is this an ABI incompatibility; it's also a major design flaw if we
      ever wanted wctype_t to be implemented as a pointer, which would be
      necessary if locales support custom character classes, since int is
      too small to store a converted pointer. this commit fixes wctype_t to
      be unsigned long on all archs, matching the LSB ABI; this change does
      not matter for C code, but for C++ it affects mangling.
      
      the same issue applied to wctrans_t. glibc/LSB defines this type as
      const __int32_t *, but since no such definition is visible, I've just
      expanded the definition, int, everywhere.
      
      it would be nice if these types (which don't vary by arch) could be in
      wctype.h, but the OB XSI requirement in POSIX that wchar.h expose some
      types and functions from wctype.h precludes doing so. glibc works
      around this with some hideous hacks, but trying to duplicate that
      would go against the intent of musl's headers.
      da1442c9
  5. 26 2月, 2013 1 次提交
  6. 07 2月, 2013 1 次提交
    • R
      arm: add __aeabi_atexit() · 52690048
      rofl0r 提交于
      arm eabi requires this symbol for static C++ dtors.
      usually it is provided by libstdc++, but when a C++ program
      doesn't use the std lib (free-standing), the libc has to provide
      it.
      this was encountered while building transmission, which
      depends on such a C++ library (libutp).
      
      this function is nearly identical to __cxa_atexit, but it has the
      order of argumens swapped for "performance reasons".
      see page 25 of
      
       http://infocenter.arm.com/help/topic/com.arm.doc.ihi0043d/IHI0043D_rtabi.pdf
      
      there are other aeabi specific C++ support functions missing, but
      it is not clear yet that GCC makes use of them so we omit them for
      the moment.
      52690048
  7. 13 1月, 2013 4 次提交
  8. 19 12月, 2012 1 次提交
  9. 08 12月, 2012 1 次提交
  10. 07 12月, 2012 2 次提交
    • R
      move signal.h REG_* macros under _GNU_SOURCE protection · 5c5e45e5
      Rich Felker 提交于
      they were accidentally exposed under just baseline POSIX, which is a
      big namespace pollution issue. thankfully glibc only exposes them
      under _GNU_SOURCE, not under any of its other options, so omitting
      the pollution in the default _BSD_SOURCE profile does not hurt
      application compatibility at all.
      5c5e45e5
    • R
      bits/signal.h: add register names for x86(_64) · a631c5df
      rofl0r 提交于
      glibc exposes them from ucontext.h.
      since that header includes signal.h, it is safe to put them
      into bits/signal.h, if _GNU_SOURCE is defined.
      a631c5df
  11. 06 12月, 2012 3 次提交
  12. 04 12月, 2012 1 次提交
  13. 27 11月, 2012 1 次提交
  14. 26 11月, 2012 3 次提交
  15. 24 11月, 2012 7 次提交
  16. 22 11月, 2012 6 次提交
  17. 21 11月, 2012 1 次提交
  18. 19 11月, 2012 2 次提交
    • R
      fix breakage from introducing bits header for sys/io.h · 0004ea61
      Rich Felker 提交于
      apparently some other archs have sys/io.h and should not break just
      because they don't have the x86 port io functions. provide a blank
      bits/io.h everywhere for now.
      0004ea61
    • R
      add port io functions to sys/io.h · 61aa6324
      Rich Felker 提交于
      based on proposal by Isaac Dunham. nonexistance of bits/io.h will
      cause inclusion of sys/io.h to produce an error on archs that are not
      supposed to have it. this is probably the desired behavior, but the
      error message may be a bit unusual.
      61aa6324