Wie Flashverbrauch pro Funktion / Datei anzeigen (avr-gcc WinAVR 20100110 4.3.3)

OP #5197801
Lesenswert?

Hallo,

ich arbeite mit avr-gcc WinAVR 20100110 4.3.3.

Ich habe das Problem, daß mir das Flash fast nicht mehr reicht und 
möchte schauen, wo der Flashverbrauch im Detail ist.


AVR Memory Usage:
-----------------
Device: atmega2560

Program:  235128 bytes           ===> der Prozessor hat 256k
(.text + .data + .bootloader)

Data:       6335 bytes
(.data + .bss + .noinit)



Wie kann man den Flashverbrauch pro Funktion bzw. pro C-Datei heraus 
finden?

Habe schon mal versucht, daß MAP-File zu durchforsten, aber so richtig 
bin ich nicht weiter gekommen.

Gruß
Martin
#5200064
Lesenswert?

Du kannst die Ausgabe von "avr-nm main.elf" sortieren und dann immer die 
Differenz zwischen zwei Zeilen ausrechnen. Wenn du pro Funktion/Variable 
eine ELF-Section erzeugen lässt, kannst du das auch mit der Ausgabe von 
"avr-readelf" machen.

Ich hab für sowas ähnliches (das Mapfile vom avrasm) ein kleines 
Perlscript.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren