summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorLucas Shaw <49287729+shawlucas@users.noreply.github.com>2021-01-31 11:27:50 -0700
committerGitHub <noreply@github.com>2021-01-31 13:27:50 -0500
commit6fd644dff5b1aafbeb573ca5798046c1780bb5b1 (patch)
tree4d50cd5a3f2eeccff57afcea401aa8978268430b /src
parent8e8421fdecaf56f7a777ac4bc996babdebced564 (diff)
libm.s -> ll.c (#661)
* . * remove tools/ZAP2 from origin master * libm.s -> ll.c * fix progress.py (i think?)
Diffstat (limited to 'src')
-rw-r--r--src/libultra_boot_O1/ll.c47
1 files changed, 47 insertions, 0 deletions
diff --git a/src/libultra_boot_O1/ll.c b/src/libultra_boot_O1/ll.c
new file mode 100644
index 000000000..9d87204d1
--- /dev/null
+++ b/src/libultra_boot_O1/ll.c
@@ -0,0 +1,47 @@
+#include "global.h"
+
+s64 __ull_rshift(u64 l, s64 r) {
+ return l >> r;
+}
+
+u64 __ull_rem(u64 l, u64 r) {
+ return l % r;
+}
+
+u64 __ull_div(u64 l, u64 r) {
+ return l / r;
+}
+
+s64 __ll_lshift(s64 l, s64 r) {
+ return l << r;
+}
+
+s64 __ll_rem(s64 l, u64 r) {
+ return l % r;
+}
+
+s64 __ll_div(s64 l, s64 r) {
+ return l / r;
+}
+
+s64 __ll_mul(s64 l, s64 r) {
+ return l * r;
+}
+
+void __ull_divremi(u64* quotient, u64* remainder, u64 dividend, u16 divisor) {
+ *quotient = dividend / divisor;
+ *remainder = dividend % divisor;
+}
+
+s64 __ll_mod(s64 l, s64 r) {
+ s64 remainder = l % r;
+
+ if (((remainder < 0) && (r > 0)) || ((remainder > 0) && (r < 0))) {
+ remainder += r;
+ }
+ return remainder;
+}
+
+s64 __ll_rshift(s64 l, s64 r) {
+ return l >> r;
+}