Rob Landley | a336e7c | 2006-05-07 20:58:55 +0000 | [diff] [blame] | 1 | #!/bin/sh |
| 2 | |
| 3 | # Copyright 2006 Rob Landley <rob@landley.net> |
Denys Vlasenko | 0ef64bd | 2010-08-16 20:14:46 +0200 | [diff] [blame] | 4 | # Licensed under GPLv2 or later, see file LICENSE in this source tree. |
Rob Landley | a336e7c | 2006-05-07 20:58:55 +0000 | [diff] [blame] | 5 | |
| 6 | # Dumb little utility function to print out the assembly dump of a single |
| 7 | # function, or list the functions so dumpable in an executable. You'd think |
| 8 | # there would be a way to get objdump to do this, but I can't find it. |
| 9 | |
| 10 | [ $# -lt 1 ] || [ $# -gt 2 ] && { echo "usage: showasm file function"; exit 1; } |
| 11 | |
| 12 | [ ! -f $1 ] && { echo "File $1 not found"; exit 1; } |
| 13 | |
| 14 | if [ $# -eq 1 ] |
| 15 | then |
| 16 | objdump -d $1 | sed -n -e 's/^[0-9a-fA-F]* <\(.*\)>:$/\1/p' |
| 17 | exit 0 |
| 18 | fi |
| 19 | |
| 20 | objdump -d $1 | sed -n -e '/./{H;$!d}' -e "x;/^.[0-9a-fA-F]* <$2>:/p" |