2 @rime = ( "abc", "collect", "ctimer", "ibc", "ipolite", "mesh", "meshconn",
3 "mh", "neighbor-discovery", "neighbor", "nf", "polite", "queuebuf",
4 "rime", "rimeaddr", "packetbuf", "rimestats", "rmesh", "rmh",
5 "route-discovery", "route", "ruc", "rucb",
6 "rudolph0", "rudolph1", "rudolph2", "sabc", "sibc", "suc",
7 "trickle", "uc", "timesynch", "nullmac", "xmac" );
8 @
{$rime{$_}} = (0, 0) foreach (@rime);
10 @sky = ( "battery-sensor", "button-sensor", "cfs-xmem", "clock",
11 "contiki-sky-main", "ds2411", "flash", "msp430",
13 "i2c", "leds-arch", "light", "radio-sensor", "sht11",
14 "simple-cc2420-arch", "simple-cc2420", "spi", "slip",
15 "uart1", "watchdog", "xmem", "rtimer-arch" );
16 @
{$sky{$_}} = (0, 0) foreach (@sky);
18 @elfloader = ( "elfloader", "elfloader-msp430" );
19 @
{$elfloader{$_}} = (0, 0) foreach (@elfloader);
21 @core = ( "autostart", "energest", "etimer", "irq", "leds", "list",
22 "memb", "mt", "print-stats", "process", "procinit",
23 "profile-aggregates", "profile", "random", "sensors",
24 "serial", "timer", "timetable", "timetable-aggregate",
26 @
{$core{$_}} = (0, 0) foreach (@core);
28 @uip = ( "hc", "psock", "resolv", "slip", "tcpdump", "tcpip", "uaodv-rt", "uaodv",
29 "uip-fw-drv", "uip-ipchksum", "uip-neighbor", "uip-over-mesh",
30 "uip-split", "uip-udp-packet", "uip", "uip_arp", "uiplib", "uip-fw");
31 @
{$uip{$_}} = (0, 0) foreach (@uip);
34 if(/(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+\w+\s+\w+\/([\w\
-]+).o
/) {
39 if(defined $rime{$file}) {
40 @
{$rime{$file}} = ($filerom, $fileram);
41 $rom{"rime"} += $filerom;
42 $ram{"rime"} += $fileram;
43 } elsif(defined $sky{$file}) {
44 @
{$sky{$file}} = ($filerom, $fileram);
45 $rom{"sky"} += $filerom;
46 $ram{"sky"} += $fileram;
47 } elsif(defined $elfloader{$file}) {
48 @
{$elfloader{$file}} = ($filerom, $fileram);
49 $rom{"elfloader"} += $filerom;
50 $ram{"elfloader"} += $fileram;
51 } elsif(defined $core{$file}) {
52 @
{$core{$file}} = ($filerom, $fileram);
53 $rom{"core"} += $filerom;
54 $ram{"core"} += $fileram;
55 } elsif(defined $uip{$file}) {
56 @
{$uip{$file}} = ($filerom, $fileram);
57 $rom{"uip"} += $filerom;
58 $ram{"uip"} += $fileram;
60 @
{$other{$file}} = ($filerom, $fileram);
61 $rom{"other"} += $filerom;
62 $ram{"other"} += $fileram;
67 foreach $f (sort keys %rom) {
68 print "$f $rom{$f} $ram{$f}\n";
72 foreach $f (sort keys %core) {
73 print "$f $core{$f}[0] $core{$f}[1]\n";
76 print "\n\n# elfloader\n";
77 foreach $f (sort keys %elfloader) {
78 print "$f $elfloader{$f}[0] $elfloader{$f}[1]\n";
81 print "\n\n# other\n";
82 foreach $f (sort keys %other) {
83 print "$f $other{$f}[0] $other{$f}[1]\n";
87 foreach $f (sort keys %rime) {
88 print "$f $rime{$f}[0] $rime{$f}[1]\n";
92 foreach $f (sort keys %sky) {
93 print "$f $sky{$f}[0] $sky{$f}[1]\n";
97 foreach $f (sort keys %uip) {
98 print "$f $uip{$f}[0] $uip{$f}[1]\n";