Funktionierendes Program durch Funktion nicht mehr lauffähi

Gast #438897
Lesenswert?

hi
habe ein projekt für den atmega geschrieben - ca 5k.
läuft ohne probleme
durch einfügen einer weiteren funktion in den code, die aber nie 
aufgerufen wird, ist das programm nicht mehr lauffähig - es lässt sich 
zwar alles brav kompilieren aber es tut nichts mehr...?!?
woran könnte das liegen ?

vielen dank
Gast #438944
Lesenswert?

hm sehr interessant:
es geht nur mit optimize=3 ... mit optimize=0 gehts nicht

=======================================
mit optimize=3:
=======================================
Size after:
simple.elf  :
section            size      addr
.data                92   8388864
.text              5560         0
.bss                 10   8388956
.noinit               0   8388966
.eeprom               0   8454144
.stab              1032         0
.stabstr            132         0
.debug_aranges       60         0
.debug_pubnames     565         0
.debug_info        8638         0
.debug_abbrev      1022         0
.debug_line        5682         0
.debug_str          578         0
.debug_ranges        12      5560
Total             23383

=======================================
mit optimize=0:
=======================================
Size after:
simple.elf  :
section            size      addr
.data                92   8388864
.text              6206         0
.bss                 10   8388956
.noinit               0   8388966
.eeprom               0   8454144
.stab              1032         0
.stabstr            132         0
.debug_aranges       60         0
.debug_pubnames     565         0
.debug_info        4033         0
.debug_abbrev       751         0
.debug_line        2713         0
.debug_str          162         0
Total             15756
Gast #439028
Lesenswert?

Mit optimize=0 wird nicht optimiert. Es wird quasi der größtmögliche 
Code (23383 Bytes) generiert.

Mit optimize=3 wird dein compilierter Code kleiner (15756 Bytes).

Kann es sein, dass dein Controller nur 16KB Flasch hat?

Gruß,
Magnetus

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