3 SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
9 nm_out=($(nm -l "${kbin}" | awk '$3 ~ /^__lga*/ {print $3 "," $4}'))
11 for line in "${nm_out[@]}"
14 if [ "${parts[1]}" != "" ]; then
15 path=(${parts[1]//:/ })
16 relative=$(realpath -s --relative-to="${SCRIPT_DIR}/.." "${path[0]}")
17 nm_lookup["${parts[0]}"]="${relative}"
21 objdump_out=($(objdump -t -j .lga "${kbin}" | grep .lga | awk '!($NF ~ /_start$|_end$|_ldorder$/) {print $NF}'))
27 init_prefix="lunainit_"
28 sysmap_prefix="twiplugin_inits_"
29 devdefs_prefix="devdefs_"
32 for line in "${objdump_out[@]}"
34 loc=${nm_lookup["$line"]}
35 if [ "$loc" == "" ]; then
40 line=$(echo "$line" | awk '{ sub(/^__lga_/, ""); print }')
42 if [[ $line == $init_prefix* ]]; then
43 line=$(echo "$line" | awk "{ sub(/^${init_prefix}/, \"\"); print }")
44 init_list+=("$line $loc")
48 if [[ $line == $sysmap_prefix* ]]; then
49 line=$(echo "$line" | awk "{ sub(/^${sysmap_prefix}/, \"\"); print }")
50 sysmap_list+=("$line $loc")
54 if [[ $line == $fs_prefix* ]]; then
55 line=$(echo "$line" | awk "{ sub(/^${fs_prefix}/, \"\"); print }")
56 sysmap_list+=("$line $loc")
60 if [[ $line == $devdefs_prefix* ]]; then
61 line=$(echo "$line" | awk "{ sub(/^${devdefs_prefix}/, \"\"); print }")
65 line=$(echo "$line" | awk "{ sub(/_on_[a-z]+$/, \"\"); print }")
68 echo "| $type | \`$line\` | $loc |"