[ARM/CRT] Refactor several functions (#3865)

- Make __fto64 function more readable
- Call worker function directly for __rt_sdiv/udiv
- Adapt __rt_sdiv64/udiv64 asm shims accordingly
- Add header files to CMake source list

CORE-17607 CORE-17614 CORE-17703 CORE-17604

Addendum to f2bc1f0e, e448094e and 54406bf4.
This commit is contained in:
Roman Masanin 2021-07-31 04:04:25 +03:00 committed by Stanislav Motylkov
parent d7f13aa696
commit be3c532bf4
No known key found for this signature in database
GPG key ID: AFE513258CBA9E92
12 changed files with 70 additions and 76 deletions

View file

@ -3,24 +3,11 @@
* LICENSE: MIT (https://spdx.org/licenses/MIT)
* PURPOSE: Implementation of __rt_udiv
* COPYRIGHT: Copyright 2015 Timo Kreuzer <timo.kreuzer@reactos.org>
* Copyright 2021 Raman Masanin <36927roma@gmail.com>
* Copyright 2021 Roman Masanin <36927roma@gmail.com>
*/
#define __rt_div_worker __rt_udiv_worker
#define __rt_div_worker __rt_udiv
#include "__rt_div_worker.h"
/*
* Returns quotient in R0, remainder in R1
*/
unsigned long long
__rt_udiv(
unsigned int divisor,
unsigned int dividend)
{
ARM_DIVRESULT result;
__rt_udiv_worker(divisor, dividend, &result);
return result.raw_data;
}
/* __rt_udiv is implemented in __rt_div_worker.h */