summaryrefslogtreecommitdiff
path: root/src/pkg/runtime/arm/vlrt.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/pkg/runtime/arm/vlrt.c')
-rwxr-xr-xsrc/pkg/runtime/arm/vlrt.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/pkg/runtime/arm/vlrt.c b/src/pkg/runtime/arm/vlrt.c
index 6f695b3eb..03840f1f6 100755
--- a/src/pkg/runtime/arm/vlrt.c
+++ b/src/pkg/runtime/arm/vlrt.c
@@ -237,6 +237,12 @@ _divvu(Vlong *q, Vlong n, Vlong d)
}
void
+sys·uint64div(Vlong n, Vlong d, Vlong q)
+{
+ _divvu(&q, n, d);
+}
+
+void
_modvu(Vlong *r, Vlong n, Vlong d)
{
@@ -248,6 +254,12 @@ _modvu(Vlong *r, Vlong n, Vlong d)
dodiv(n, d, 0, r);
}
+void
+sys·uint64mod(Vlong n, Vlong d, Vlong q)
+{
+ _modvu(&q, n, d);
+}
+
static void
vneg(Vlong *v)
{
@@ -282,6 +294,12 @@ _divv(Vlong *q, Vlong n, Vlong d)
}
void
+sys·int64div(Vlong n, Vlong d, Vlong q)
+{
+ _divv(&q, n, d);
+}
+
+void
_modv(Vlong *r, Vlong n, Vlong d)
{
long nneg, dneg;
@@ -303,6 +321,12 @@ _modv(Vlong *r, Vlong n, Vlong d)
}
void
+sys·int64mod(Vlong n, Vlong d, Vlong q)
+{
+ _modv(&q, n, d);
+}
+
+void
_rshav(Vlong *r, Vlong a, int b)
{
long t;