fadds.c 435 B

123456789101112131415161718192021222324
  1. // SPDX-License-Identifier: GPL-2.0
  2. // Copyright (C) 2005-2018 Andes Technology Corporation
  3. #include <linux/uaccess.h>
  4. #include <asm/sfp-machine.h>
  5. #include <math-emu/soft-fp.h>
  6. #include <math-emu/single.h>
  7. void fadds(void *ft, void *fa, void *fb)
  8. {
  9. FP_DECL_S(A);
  10. FP_DECL_S(B);
  11. FP_DECL_S(R);
  12. FP_DECL_EX;
  13. FP_UNPACK_SP(A, fa);
  14. FP_UNPACK_SP(B, fb);
  15. FP_ADD_S(R, A, B);
  16. FP_PACK_SP(ft, R);
  17. __FPU_FPCSR |= FP_CUR_EXCEPTIONS;
  18. }