mikrocontroller.net

Forum: Compiler & IDEs GCC RJMP


Autor: JojoS (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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?

Autor: JojoS (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
oh, dank ans Roboternetz, da gibts eine nette gcc Beschreibung und das
Zauberwort heisst '-mshort-calls'. War einfacher als ich dachte.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.