| #!/bin/bash |
| # Copyright (C) 2017-2020 The Project X-Ray Authors. |
| # |
| # Use of this source code is governed by a ISC-style |
| # license that can be found in the LICENSE file or at |
| # https://opensource.org/licenses/ISC |
| # |
| # SPDX-License-Identifier: ISC |
| |
| function display_help() { |
| echo "This is a utility script that helps displaying the total" |
| echo "amount of unknown bits in the various minitest." |
| echo "" |
| echo "The minitest must contain a Makefile which flow ends in the" |
| echo "generation of a FASM file." |
| echo "" |
| echo "Arguments:" |
| echo " -m|--minitests: list of minitest directories from which the FASM files are" |
| echo " generated and parsed to get the total amount of missing" |
| } |
| |
| MINITEST_DIRS=() |
| |
| MINITEST=0 |
| |
| for arg in $@; do |
| case "$arg" in |
| -m|--minitests) |
| MINITEST=1 |
| ;; |
| *) |
| if [ $MINITEST -eq 1 ]; then |
| MINITEST_DIRS+=($arg) |
| else |
| display_help |
| exit 1 |
| fi |
| ;; |
| esac |
| done |
| |
| if [ $# -eq 0 ]; then |
| display_help |
| exit 1 |
| fi |
| |
| for MINITEST in ${MINITEST_DIRS[*]} |
| do |
| echo "-----------------------------" |
| echo "$MINITEST" |
| echo "-----------------------------" |
| make -q -C $MINITEST all |
| FASM_FILE=`find $MINITEST -name "*.fasm"` |
| MISSING_BITS=`grep "unknown_bit" $FASM_FILE | wc -l` |
| MISSING_FRAMES=`grep "In frame" $FASM_FILE | wc -l` |
| |
| echo "Total of unknown bits: $MISSING_BITS" |
| echo "Total of unknown frames: $MISSING_FRAMES" |
| echo "" |
| done |