summaryrefslogtreecommitdiff
path: root/array.c
diff options
context:
space:
mode:
authorPeter Mikkelsen <petermikkelsen10@gmail.com>2022-01-08 22:45:00 +0000
committerPeter Mikkelsen <petermikkelsen10@gmail.com>2022-01-08 22:45:00 +0000
commit1ef3119fe613823a2145126c58948361ca7d3cd8 (patch)
tree5252d957ae512e1a727c9dec2b31e7b2a1d63e56 /array.c
parent214cdacca02552649d63f9045fdb8a17cfbb6fca (diff)
Add initial code, just to get started
Diffstat (limited to 'array.c')
-rw-r--r--array.c29
1 files changed, 29 insertions, 0 deletions
diff --git a/array.c b/array.c
new file mode 100644
index 0000000..766ccd8
--- /dev/null
+++ b/array.c
@@ -0,0 +1,29 @@
+#include <u.h>
+#include <libc.h>
+#include <bio.h>
+
+#include "apl9.h"
+
+int datasizes[] = {
+ [AtypeInt] = sizeof(vlong)
+};
+
+Array *
+mkarray(arrayDataType t, int rank, int size)
+{
+ Array *a = malloc(sizeof(Array));
+ a->rank = rank;
+ a->shape = malloc(sizeof(int) * rank);
+ a->rawdata = malloc(datasizes[t] * size);
+ a->type = t;
+ return a;
+}
+
+Array *
+mkscalarint(vlong i)
+{
+ Array *a = mkarray(AtypeInt, 0, 1);
+ a->intdata[0] = i;
+
+ return a;
+} \ No newline at end of file