summaryrefslogblamecommitdiffstats
path: root/posix-compliance/probe_rtems
blob: 074ccc6115d4efb0df795c9f3d04de71bbd90463 (plain) (tree)
1
2
3
4
5
6




                          
                                                      






























                                                                               
                     










                                                        
#! /bin/bash

lfile=unprobed_methods.txt
cpu=arm
bsp=xilinx_zynq_a9_qemu
bsp_path=/home/joel/rtems-work/tools/5/bsps/arm-rtems5
bsp_flags="-march=armv7-a -mthumb -mfpu=neon -mfloat-abi=hard -mtune=cortex-a9"

cat_template()
{
cat <<EOF
void @METHOD@(void);

int main(int argc, char **argv)
{
  @METHOD@();
  return 0;
}
EOF
}

gen_prober()
{
  method=$1
  mname=`echo ${method} | sed -e 's/[()]//g'`
  cat_template | sed -e "s/@METHOD@/${mname}/g"
}

cat ${lfile} | while read method
do
  grep ${method} probe_misses.txt >/dev/null
  if [ $? -eq 0 ] ; then
    echo "${method},HAND-YES"
    continue
  fi

  gen_prober ${method} >tmp_probe.c
  ${cpu}-rtems5-gcc \
    -B${bsp_path}/${bsp}/lib/ -specs bsp_specs -qrtems \
    ${bsp_flags} \
    tmp_probe.c >/dev/null 2>&1
  if [ $? -eq 0 ] ; then
    echo "${method},RT-YES"
    continue
  fi
  echo "${method},RT-NO"
done

# rm -f tmp_probe.c a.out