GCC RJMP

Gast #412086
Lesenswert?
• ▲
▼
ich habe gerade ein Projekt mit dem Bootloader von P.Fleury wieder
rausgekramt und nochmal die letzte Version von seiner Homepage geladen.
Der Bootloader passt in 1 KB rein und ich habe im Makefile von MCU=mega8
auf meinen mega32 umgestellt. Und schon wurde der Code von 1016 auf 1030
Bytes vergrössert. Habe dann noch den gcc 4.1.1 aktiviert, gleicher
Effekt. Ein diff der generierten .lss files zeigt schnell das beim
mega32 die rcalls durch calls ersetzt wurden und dort die zusätzlichen
Bytes anfallen. Da ist der gcc ein bischen 'dumm', der Befehl müsste
doch von der Sprunglänge und nicht vom Device abhängen? Beim mega8 ist
es natürlich einfach, da sind alle Ziele relativ zu erreichen, aber
kann man den gcc auch dazu bewegen für den mega32 relative Sprünge zu
nutzen?

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 20 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.