summaryrefslogtreecommitdiffstats
path: root/src/vppinfra
diff options
context:
space:
mode:
authorDamjan Marion <damarion@cisco.com>2019-09-25 00:25:36 +0200
committerAndrew Yourtchenko <ayourtch@gmail.com>2019-10-03 16:12:23 +0000
commitbebbd7f62d7f1c0286747d75e11d84bd9d792698 (patch)
treea6c7ae324a09d9e4ecf2966545572c645e450660 /src/vppinfra
parent35a265ceaef4af68e4d1d817447b0b895176a6ff (diff)
classify: use vector code even when data is not aligned
Type: feature Change-Id: I8f5f4841965beb13ebc8c2a37ce0dc331c920109 Signed-off-by: Damjan Marion <damarion@cisco.com> (cherry picked from commit 8304933922620cef005b788a36a4d3f2eab45bb5)
Diffstat (limited to 'src/vppinfra')
-rw-r--r--src/vppinfra/vector.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/vppinfra/vector.h b/src/vppinfra/vector.h
index 2b84cc24869..906d8d8fbfd 100644
--- a/src/vppinfra/vector.h
+++ b/src/vppinfra/vector.h
@@ -76,6 +76,7 @@
#endif
#define _vector_size(n) __attribute__ ((vector_size (n)))
+#define _vector_size_unaligned(n) __attribute__ ((vector_size (n), __aligned__ (1)))
#define foreach_vec64i _(i,8,8) _(i,16,4) _(i,32,2)
#define foreach_vec64u _(u,8,8) _(u,16,4) _(u,32,2)
@@ -111,6 +112,7 @@
/* Type Definitions */
#define _(t,s,c) \
typedef t##s t##s##x##c _vector_size (s/8*c); \
+typedef t##s t##s##x##c##u _vector_size_unaligned (s/8*c); \
typedef union { \
t##s##x##c as_##t##s##x##c; \
t##s as_##t##s[c]; \