Create ELF aliases for identical symbols

This change greatly reduces the number of modules that need to be
compiled. The only issue right now is that sometimes when viewing
symbol table entries, the aliased symbol is chosen.
This commit is contained in:
Justine Tunney 2023-06-06 03:30:37 -07:00
parent e1b83399bd
commit b8a6a989c0
No known key found for this signature in database
GPG key ID: BE714B4575D6E328
191 changed files with 414 additions and 2190 deletions

View file

@ -22,6 +22,12 @@ char *setstate(char *);
long random(void);
void srandom(unsigned);
#ifdef COSMO
#define vigna __vigna
#define vigna_r __vigna_r
#define rngset __rngset
#define rdrand __rdrand
#define rdseed __rdseed
uint64_t lemur64(void);
uint64_t _rand64(void);
uint64_t vigna(void);
@ -37,6 +43,7 @@ double _real2(uint64_t);
double _real3(uint64_t);
double MeasureEntropy(const char *, size_t);
void *rngset(void *, size_t, uint64_t (*)(void), size_t);
#endif /* COSMO */
COSMOPOLITAN_C_END_
#endif /* !(__ASSEMBLER__ + __LINKER__ + 0) */