Subversion Repositories pentevo

Rev

Blame | Last modification | View Log | Download | RSS feed | ?url?

  1. #ifndef _MATH64_H
  2. #define _MATH64_H
  3. /* math64.h */
  4. /*****************************************************************************/
  5. /* SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only                     */
  6. /*                                                                           */
  7. /* AS-Portierung                                                             */
  8. /*                                                                           */
  9. /* 64 bit arithmetic for platforms not having a 64 bit integer               */
  10. /*                                                                           */
  11. /*****************************************************************************/
  12.  
  13. #include "datatypes.h"
  14.  
  15. typedef struct
  16. {
  17.   LongWord low;
  18.   LongWord high;
  19. } t64;
  20.  
  21. extern void add64(t64 *pRes, const t64 *pA, const t64 *pB);
  22.  
  23. extern void sub64(t64 *pRes, const t64 *pA, const t64 *pB);
  24.  
  25. extern void mul64(t64 *pRes, const t64 *pA, const t64 *pB);
  26.  
  27. extern void div64(t64 *pRes, const t64 *pA, const t64 *pB);
  28. extern void mod64(t64 *pRes, const t64 *pA, const t64 *pB);
  29. extern void mod_div64(t64 *pQuot, t64 *pRem, const t64 *pA, const t64 *pB);
  30.  
  31. #endif /* _MATH64_H */
  32.