diff options
author | B. Watson <yalhcru@gmail.com> | 2016-02-28 02:56:41 -0500 |
---|---|---|
committer | B. Watson <yalhcru@gmail.com> | 2016-02-28 02:56:41 -0500 |
commit | 8889d0f1bb00b3bb52afb92a1069112817ddbb81 (patch) | |
tree | 5200ddcb3d06cf87332b7f8117fbc147c642d317 /procsizes.pl | |
parent | 9d60dc2142964aa7cb0e18049170455036a7b1d1 (diff) | |
download | taipan-8889d0f1bb00b3bb52afb92a1069112817ddbb81.tar.gz |
add procsizes target, rewrite get_item in asm, combine some functions, 7808 bytes free
Diffstat (limited to 'procsizes.pl')
-rw-r--r-- | procsizes.pl | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/procsizes.pl b/procsizes.pl new file mode 100644 index 0000000..287cf46 --- /dev/null +++ b/procsizes.pl @@ -0,0 +1,24 @@ +#!/usr/bin/perl -w + +open IN, "<taipan.lst" or die $!; + +while(<IN>) { + (/^([0-9A-F]{6})/) && (eval "\$addr = 0x$1"); + if(/\.proc\s+_(\w+)/) { + $proc = $1; + $start{$proc} = $addr; + } elsif(/\.endproc/) { + $end{$proc} = $addr - 1; + $proc = ""; + } +} + +for(sort keys %start) { + $len{$_} = $end{$_} - $start{$_} + 1; +} + +for(sort { $len{$a} <=> $len{$b} } keys %len) { + printf "% 32s % d\n", $_, $len{$_}; + $total += $len{$_}; +} +printf "% 32s % d\n", "Total:", $total; |