sub.rs 638 B

12345678910111213141516171819202122232425
  1. use float::Float;
  2. use float::add::__addsf3;
  3. use float::add::__adddf3;
  4. intrinsics! {
  5. #[arm_aeabi_alias = __aeabi_fsub]
  6. pub extern "C" fn __subsf3(a: f32, b: f32) -> f32 {
  7. __addsf3(a, f32::from_repr(b.repr() ^ f32::SIGN_MASK))
  8. }
  9. #[arm_aeabi_alias = __aeabi_dsub]
  10. pub extern "C" fn __subdf3(a: f64, b: f64) -> f64 {
  11. __adddf3(a, f64::from_repr(b.repr() ^ f64::SIGN_MASK))
  12. }
  13. #[cfg(target_arch = "arm")]
  14. pub extern "C" fn __subsf3vfp(a: f32, b: f32) -> f32 {
  15. a - b
  16. }
  17. #[cfg(target_arch = "arm")]
  18. pub extern "C" fn __subdf3vfp(a: f64, b: f64) -> f64 {
  19. a - b
  20. }
  21. }