Die Berechnung Flash/SRAM geht wie folgt:

.text + .data = Flash
.data + .bss + .noinit = SRAM

.text = Programmcode
.data = initialisierte Variablen wie Strings, etc.
.bss = uninitialisierte Variablen
.eeprom = daten im EEPROM
.stab/.stabstr = IMHO (!) Symboltabelle und Symbolnamen (nur für debugging verwendet).

In Deinem Fall flash = 6636Bytes. Ist also noch deutlich kleiner als 8192.

Mögliche Erklärung: Bootloadersektion ist auf einen grossen Wert gesetzt.

Alternativer Workaround. Mal mit -O2 oder -Os kompilieren, dann sollte der Flashverbrauch sinken.