#!/bin/bash

if [ -f /proc/cpuinfo ] ; then
  grep -q " avx2 " /proc/cpuinfo
  if [ "$?" == "0" ] ; then
    echo "Starting with AVX2 extension"
    exec /usr/lib/srslte/bin/srsenb-avx2 $*
  else
    grep -q " avx " /proc/cpuinfo
    if [ "$?" == "0" ] ; then
      echo "Starting with AVX extension"
      exec /usr/lib/srslte/bin/srsenb-avx $*
    else
      grep -q " sse4_2 " /proc/cpuinfo
      if [ "$?" == "0" ] ; then
        echo "Starting with SSE4.2 extension"
        exec /usr/lib/srslte/bin/srsenb-sse4 $*
      else
        grep -q " neon " /proc/cpuinfo
        if [ "$?" == "0" ] ; then
          echo "Starting with NEON extension"
          exec /usr/lib/srslte/bin/srsenb-neon $*
        else
          echo "Starting without SIMD extensions"
          exec /usr/lib/srslte/bin/srsenb-generic $*
        fi
      fi
    fi
  fi
else
  echo "Starting without SIMD extensions"
  exec /usr/lib/srslte/bin/srsenb-generic $*
fi
