Add dontthrow attribute to most libc functions

This will help C++ code that uses exceptions to be tinier. For example,
this change shaves away 1000 lines of assembly code from LLVM's libcxx,
which is 0.7% of all assembly instructions in the entire library.
This commit is contained in:
Justine Tunney 2024-01-09 01:26:03 -08:00
parent cb19e172da
commit eeb20775d2
No known key found for this signature in database
GPG key ID: BE714B4575D6E328
103 changed files with 1455 additions and 1456 deletions

View file

@ -270,24 +270,24 @@
#define ZIP_EXTRA_CONTENT(P) ((P) + 4)
#define ZIP_EXTRA_SIZE(P) (ZIP_EXTRA_CONTENTSIZE(P) + kZipExtraHdrSize)
void *GetZipEocd(const void *, size_t, int *);
int IsZipEocd32(const uint8_t *, size_t, size_t);
int IsZipEocd64(const uint8_t *, size_t, size_t);
int GetZipCfileMode(const uint8_t *);
uint64_t GetZipCdirOffset(const uint8_t *);
uint64_t GetZipCdirRecords(const uint8_t *);
const void *GetZipCdirComment(const uint8_t *);
uint64_t GetZipCdirSize(const uint8_t *);
uint64_t GetZipCdirCommentSize(const uint8_t *);
int64_t GetZipCfileCompressedSize(const uint8_t *);
int64_t GetZipCfileUncompressedSize(const uint8_t *);
int64_t GetZipCfileOffset(const uint8_t *);
int64_t GetZipLfileCompressedSize(const uint8_t *);
int64_t GetZipLfileUncompressedSize(const uint8_t *);
void *GetZipEocd(const void *, size_t, int *) libcesque;
int IsZipEocd32(const uint8_t *, size_t, size_t) libcesque;
int IsZipEocd64(const uint8_t *, size_t, size_t) libcesque;
int GetZipCfileMode(const uint8_t *) libcesque;
uint64_t GetZipCdirOffset(const uint8_t *) libcesque;
uint64_t GetZipCdirRecords(const uint8_t *) libcesque;
const void *GetZipCdirComment(const uint8_t *) libcesque;
uint64_t GetZipCdirSize(const uint8_t *) libcesque;
uint64_t GetZipCdirCommentSize(const uint8_t *) libcesque;
int64_t GetZipCfileCompressedSize(const uint8_t *) libcesque;
int64_t GetZipCfileUncompressedSize(const uint8_t *) libcesque;
int64_t GetZipCfileOffset(const uint8_t *) libcesque;
int64_t GetZipLfileCompressedSize(const uint8_t *) libcesque;
int64_t GetZipLfileUncompressedSize(const uint8_t *) libcesque;
struct timespec;
void GetZipCfileTimestamps(const uint8_t *, struct timespec *,
struct timespec *, struct timespec *, int);
struct timespec *, struct timespec *, int) libcesque;
#endif /* !(__ASSEMBLER__ + __LINKER__ + 0) */
#endif /* COSMOPOLITAN_ZIP_H_ */