ld {
  GLIBC_PRIVATE {
    # used for loading by static libraries
    _dl_var_init;
  }
}
libc {
  # The comment lines with "#errlist-compat" are magic; see errlist-compat.awk.
  # When you get an error from errlist-compat.awk, you need to add a new
  # version here.  Don't do this blindly, since this means changing the ABI
  # for all GNU/Linux configurations.

  GLIBC_2.0 {
    #errlist-compat	123
    _sys_errlist; sys_errlist; _sys_nerr; sys_nerr;

    # Exception handling support functions from libgcc
    __register_frame; __register_frame_table; __deregister_frame;
    __frame_state_for; __register_frame_info_table;

    # Needed by gcc:
    _flush_cache;

    # c*
    cachectl; cacheflush;

    # s*
    sysmips;
  }
  GLIBC_2.2 {
    #errlist-compat	1134
    _sys_errlist; sys_errlist; _sys_nerr; sys_nerr;

    # _*
    _test_and_set;
  }
  GLIBC_2.11 {
    fallocate64;
  }
}
