summaryrefslogtreecommitdiff
path: root/libguile/arrays.h
diff options
context:
space:
mode:
authorDaniel Llorens <lloda@sarc.name>2021-09-17 11:20:24 +0200
committerDaniel Llorens <lloda@sarc.name>2021-09-17 11:20:24 +0200
commit96e3686db14391310644d5237dcec8a0e2145903 (patch)
treed244cbfb00a079a468ff5ada5d8c9d738ae9f50b /libguile/arrays.h
parentaf741e50e912790b3756a9e64a0cffca9b14899b (diff)
downloadguile-96e3686db14391310644d5237dcec8a0e2145903.tar.gz
Revert shift of ndim in array tag from 3df3ba1a2c956bba122328e1fc4be614171a4f42
To avoid breaking ABI. * libguile/arrays.h (SCM_I_ARRAY_DIM, scm_i_raw_array): As stated. * module/system/vm/assembler.scm: As stated.
Diffstat (limited to 'libguile/arrays.h')
-rw-r--r--libguile/arrays.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/libguile/arrays.h b/libguile/arrays.h
index e427eab20..5457ddb95 100644
--- a/libguile/arrays.h
+++ b/libguile/arrays.h
@@ -94,7 +94,7 @@ typedef struct scm_t_array_dim
/* internal. */
#define SCM_I_ARRAYP(a) SCM_TYP16_PREDICATE (scm_tc7_array, a)
-#define SCM_I_ARRAY_NDIM(x) ((size_t) (SCM_CELL_WORD_0 (x)>>16))
+#define SCM_I_ARRAY_NDIM(x) ((size_t) (SCM_CELL_WORD_0 (x)>>17))
#define SCM_I_ARRAY_V(a) SCM_CELL_OBJECT_1 (a)
#define SCM_I_ARRAY_BASE(a) ((size_t) SCM_CELL_WORD_2 (a))
#define SCM_I_ARRAY_DIMS(a) ((scm_t_array_dim *) SCM_CELL_OBJECT_LOC (a, 3))
@@ -106,7 +106,7 @@ typedef struct scm_t_array_dim
static inline SCM
scm_i_raw_array (int ndim)
{
- return scm_words (((scm_t_bits) ndim << 16) + scm_tc7_array, 3 + ndim*3);
+ return scm_words (((scm_t_bits) ndim << 17) + scm_tc7_array, 3 + ndim*3);
}
SCM_INTERNAL SCM scm_i_make_array (int ndim);