From a28bd74b6289fc8675c4623baac8ca612eef18ab Mon Sep 17 00:00:00 2001
From: Paolo Monti <monti@eurecom.fr>
Date: Sun, 20 May 2018 07:54:02 +0200
Subject: [PATCH] Fix build for x86_64

---
 openair1/PHY/LTE_TRANSPORT/dlsch_demodulation.c    | 4 ++--
 openair1/PHY/LTE_TRANSPORT/dlsch_llr_computation.c | 4 ++--
 openair1/PHY/TOOLS/cadd_vv.c                       | 6 +++---
 openair1/SIMULATION/TOOLS/random_channel.c         | 2 +-
 4 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/openair1/PHY/LTE_TRANSPORT/dlsch_demodulation.c b/openair1/PHY/LTE_TRANSPORT/dlsch_demodulation.c
index a0f71e0b4a..ebfa594eb2 100644
--- a/openair1/PHY/LTE_TRANSPORT/dlsch_demodulation.c
+++ b/openair1/PHY/LTE_TRANSPORT/dlsch_demodulation.c
@@ -1905,7 +1905,7 @@ void prec2A_TM4_128(int pmi,__m128i *ch0,__m128i *ch1) {
  // print_shorts("prec2A_TM4 ch0 (end):",ch0);
   //print_shorts("prec2A_TM4 ch1 (end):",ch1);
 }
-#elsif defined(__arm__) || defined(__aarch64__)
+#elif defined(__arm__) || defined(__aarch64__)
 void prec2A_TM4_128(int pmi,int16x8_t *ch0,int16x8_t *ch1) {
   AssertFatal(1==0,"To be done for ARM\n");
 }
@@ -3454,7 +3454,7 @@ void dlsch_detection_mrc_TM34(LTE_DL_FRAME_PARMS *frame_parms,
 
   _mm_empty();
   _m_empty();
-#elsif defined(__arm__) || defined(__aarch64__)
+#elif defined(__arm__) || defined(__aarch64__)
   AssertFatal(1==0,"To be done for ARM\n");
 #endif
 }
diff --git a/openair1/PHY/LTE_TRANSPORT/dlsch_llr_computation.c b/openair1/PHY/LTE_TRANSPORT/dlsch_llr_computation.c
index 4e42b764b3..7fc0a49e07 100644
--- a/openair1/PHY/LTE_TRANSPORT/dlsch_llr_computation.c
+++ b/openair1/PHY/LTE_TRANSPORT/dlsch_llr_computation.c
@@ -1036,7 +1036,7 @@ void dlsch_16qam_llr_SIC (LTE_DL_FRAME_PARMS *frame_parms,
   }
   _mm_empty();
   _m_empty();
-#elsif defined(__arm__) || defined(__aarch64__)
+#elif defined(__arm__) || defined(__aarch64__)
   AssertFatal(1==0,"To be done for ARM\n");
 #endif
  }
@@ -1362,7 +1362,7 @@ void dlsch_64qam_llr_SIC(LTE_DL_FRAME_PARMS *frame_parms,
 
   _mm_empty();
   _m_empty();
-#elsif defined(__arm__) || defined(__aarch64__)
+#elif defined(__arm__) || defined(__aarch64__)
   AssertFatal(1==0,"To be done for ARM\n");
 #endif
   }
diff --git a/openair1/PHY/TOOLS/cadd_vv.c b/openair1/PHY/TOOLS/cadd_vv.c
index 8e8c31ea7e..66fdc0c588 100644
--- a/openair1/PHY/TOOLS/cadd_vv.c
+++ b/openair1/PHY/TOOLS/cadd_vv.c
@@ -24,13 +24,13 @@
 #define simd_q15_t __m128i
 #define simd_q31_t __m128i
 #define simd_q63_t __m128i
-#define simd_q15_short_t __m64i
+#define simd_q15_short_t __m64
 #define simd_q15_add(a,b) _mm_adds_epi16(a,b)
 #define simd_q63_add(a,b) _mm_add_epi64(a,b)
 #define simd_q15_sub(a,b) _mm_subs_epi16(a,b)
-#define simd_q63_sub(a,b) _mm_subs_epi64(a,b)
+#define simd_q63_sub(a,b) _mm_sub_epi64(a,b)
 #define simd_q15_add_short(a,b) _mm_adds_pi16(a,b)
-#define simd_q31_add(a,b) _mm_adds_epi32(a,b)
+#define simd_q31_add(a,b) _mm_add_epi32(a,b)
 #ifdef __AVX2__
 #define simd256_q15_t __m256i
 #endif
diff --git a/openair1/SIMULATION/TOOLS/random_channel.c b/openair1/SIMULATION/TOOLS/random_channel.c
index 392f6fc70e..ab1d7a9c3c 100644
--- a/openair1/SIMULATION/TOOLS/random_channel.c
+++ b/openair1/SIMULATION/TOOLS/random_channel.c
@@ -34,7 +34,7 @@
 
 #if defined(__i386__) || defined(__x86_64__) 
 extern void print_shorts(char *s,__m128i *x);
-#elsif defined (__arm__) || defined(__aarch64__)
+#elif defined (__arm__) || defined(__aarch64__)
 extern void print_shorts(char *s,int16x8_t *x);
 #endif
 void fill_channel_desc(channel_desc_t *chan_desc,
-- 
2.26.2