summaryrefslogtreecommitdiff
path: root/kaldi_io/src/tools/ATLAS/include/atlas_altivec.h
diff options
context:
space:
mode:
Diffstat (limited to 'kaldi_io/src/tools/ATLAS/include/atlas_altivec.h')
-rw-r--r--kaldi_io/src/tools/ATLAS/include/atlas_altivec.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/kaldi_io/src/tools/ATLAS/include/atlas_altivec.h b/kaldi_io/src/tools/ATLAS/include/atlas_altivec.h
new file mode 100644
index 0000000..a772448
--- /dev/null
+++ b/kaldi_io/src/tools/ATLAS/include/atlas_altivec.h
@@ -0,0 +1,27 @@
+#ifndef ATLAS_ALTIVEC_H
+ #define ATLAS_ALTIVEC_H
+
+#ifdef ATL_AltiVec
+ #ifdef ATL_AVgcc
+ #include <altivec.h>
+
+ #define VECTOR_INIT(v0_,v1_,v2_,v3_) (vector float) {v0_,v1_,v2_,v3_}
+ #define VECTOR_INITI(v0_,v1_,v2_,v3_) (vector int) {v0_,v1_,v2_,v3_}
+ #else
+ #define VECTOR_INIT(v0_,v1_,v2_,v3_) (vector float)(v0_,v1_,v2_,v3_)
+ #define VECTOR_INITI(v0_,v1_,v2_,v3_) (vector int)(v0_,v1_,v2_,v3_)
+ #define VECTOR_INITL(v0_,v1_,v2_,v3_) (vector long)(v0_,v1_,v2_,v3_)
+ #endif
+ #define ATL_GetCtrl(stride, count, size) \
+ (int)((stride) | ((count)<<16) | ((size)<<24))
+ #define ATL_pfavR(ptr, cwrd, stream) \
+ vec_dst((vector float *)(ptr), (cwrd), (stream))
+ #define ATL_pfavW(ptr, cwrd, stream) \
+ vec_dstst((vector float *)(ptr), (cwrd), (stream))
+#else
+ #define ATL_GetCtrl(stride, count, size)
+ #define ATL_pfavR(ptr, cwrd, stream)
+ #define ATL_pfavW(ptr, cwrd, stream)
+#endif
+
+#endif