summaryrefslogtreecommitdiffstats
path: root/vec_float_neon.h
diff options
context:
space:
mode:
Diffstat (limited to 'vec_float_neon.h')
-rw-r--r--vec_float_neon.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/vec_float_neon.h b/vec_float_neon.h
index 2b4d616..6ce894a 100644
--- a/vec_float_neon.h
+++ b/vec_float_neon.h
@@ -296,7 +296,11 @@ namespace vecmathlib {
}
static realvec_t loadu(real_t const* p)
{
+#if defined __ARM_FEATURE_UNALIGNED
return vld1_f32(p);
+#else
+# error "unaligned NEON loads not implemented"
+#endif
}
static realvec_t loadu(real_t const* p, std::ptrdiff_t ioff)
{
@@ -339,7 +343,11 @@ namespace vecmathlib {
// be atomic
// p[0] = (*this)[0];
// p[1] = (*this)[1];
+#if defined __ARM_FEATURE_UNALIGNED
vst1_f32(p, v);
+#else
+# error "unaligned NEON stores not implemented"
+#endif
}
void storeu(real_t* p, std::ptrdiff_t ioff) const
{
OpenPOWER on IntegriCloud