altos: Check pdata+xdata memory usage during build
[fw/altos] / src / util / check-stack
1 #!/bin/sh
2 HEADER=$1
3 MEM=$2
4
5 HEADER_STACK=`awk '/#define AO_STACK_START/ {print strtonum($3)}' $HEADER`
6 MEM_STACK=`awk '/Stack starts at/ {print strtonum ($4)}' $MEM`
7 XRAM_END=`awk '/EXTERNAL RAM/ { print strtonum ($4)}' $MEM`
8
9 if [ "$HEADER_STACK" -lt "$MEM_STACK" ]; then
10         echo $MEM_STACK | awk '{ printf ("Set AO_STACK_START to at least 0x%x\n", $1); }'
11         exit 1
12 fi
13 if [ "$XRAM_END" -ge 65024 ]; then
14     echo $XRAM_END | awk '{ printf ("Uses too much XRAM, 0x%x >= 0x%x\n", $1, 65024); }'
15     exit 1
16 fi
17
18 exit 0
19