sched: fix build with gcc 4.3.4
authorMichael Qiu <michael.qiu@intel.com>
Wed, 2 Dec 2015 02:39:27 +0000 (10:39 +0800)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Wed, 2 Dec 2015 22:10:35 +0000 (23:10 +0100)
gcc 4.3.4 does not include "immintrin.h", and will post below error:
    lib/librte_sched/rte_sched.c:56:23: error:
    immintrin.h: No such file or directory

This compiler issue is fixed with rte_vect.h

There is another issue, need SSE2 support

Fixes: 42ec27a0178a ("sched: enable SSE optimizations in config")

Signed-off-by: Michael Qiu <michael.qiu@intel.com>
lib/librte_sched/rte_sched.c

index d47cfc2..21ebf25 100644 (file)
 #endif
 
 #ifdef RTE_SCHED_VECTOR
-#include <immintrin.h>
+#include <rte_vect.h>
+
+#if defined(__SSE2__)
+#define SCHED_VECTOR_SSE2
+#endif
+
 #endif
 
 #define RTE_SCHED_TB_RATE_CONFIG_ERR          (1e-7)
@@ -1667,7 +1672,7 @@ grinder_schedule(struct rte_sched_port *port, uint32_t pos)
        return 1;
 }
 
-#ifdef RTE_SCHED_VECTOR
+#ifdef SCHED_VECTOR_SSE2
 
 static inline int
 grinder_pipe_exists(struct rte_sched_port *port, uint32_t base_pipe)