zig
zig copied to clipboard
compiler_rt: Tracking Issue SPARC Routines
SYSTEM V APPLICATION BINARY INTERFACE SPARC Processor Supplement Third Edition
Support Routines Besides operating system services, libsys contains the following processor-specific support routines.
Figure 6-1: libsys Support Routines docs are not very specific on which are needed and glibc is unreadable) These dould be the regular SPARC symbols and the other the 64bit symbols. TODO: investigate more.
- _Q_add
- _Q_cmp
- _Q_cmpe
- _Q_div
- _Q_dtoq
- _Q_feq
- _Q_fge
- _Q_fgt
- _Q_fle
- _Q_flt
- _Q_fne
- _Q_itoq
- _Q_mul
- _Q_neg
- _Q_qtod
- _Q_qtoi
- _Q_qtos
- [ ] _Q_qtou: why is there _Qp_qtoui, _Qp_qtoux, _Qp_qtox ?
- _Q_sqrt
- _Q_stoq
- _Q_sub
- _Q_utoq: why is there _Qp_uitoq, _Qp_uxtoq, _Qp_xtoq ?
- [ ] .div: more
- __dtou: conversion
- __ftou: conversion
- [ ] .mul
- [ ] .rem
- [ ] .stret1
- [ ] .stret2
- [ ] .stret4
- [ ] .stret8
- [ ] .udiv
- [ ] .umul
- [ ] .urem: There is no rem or urem in libc 64 psABI
libc 64 psABI (currently implemented in compiler_rt):
- [x] _Qp_add
- [x] _Qp_cmp
- [ ] _Qp_cmpe
- [x] _Qp_div
- [x] _Qp_dtoq
- [x] _Qp_feq
- [x] _Qp_fge
- [x] _Qp_fgt
- [x] _Qp_fle
- [x] _Qp_flt
- [x] _Qp_fne
- [x] _Qp_itoq
- [x] _Qp_mul: why is there .umul, .mul, _Q_mul ?
- [ ] _Qp_neg
- [x] _Qp_qtod
- [x] _Qp_qtoi
- [x] _Qp_qtos
- [x] _Qp_qtoui
- [x] _Qp_qtoux
- [x] _Qp_qtox
- [ ] _Qp_sqr
- [x] _Qp_stoq
- [x] _Qp_sub
- [x] _Qp_uitoq
- [x] _Qp_uxtoq
- [x] _Qp_xtoq
- [ ] __dtoul
- [ ] __ftoul