AVR32 -mrelax GCC Bug?

OP #2896085
Lesenswert?
• ▲
▼
Hallo,


ich bin mir nicht sicher ob es sich wirklich um einen Bug handelt, aber 
bei der aktuellen AVR32 GCC Version(3.4.0.332 - GCC  4.4.3), die mit dem 
Atmel Studio 6 ausgeliefert wird, scheint bei mir nicht automatisch die 
Option -mrelax an den Linker weitergegeben zu werden. Laut der Atmel 
Note AVR32006 sollte diese Option automatisch bei -O2 oder -O3 gesetzt 
sein. Nach längern Tests konnte ich das aber nicht bestätigen. Auch die 
Angabe von -mrelax bei den Compileroptimierungsoptionen brachte 
(beabsichtigt, da kein Linker?) keinen Erfolg. Erst wenn man die Option 
bei der Linkeroptimierung angiebt scheint sie Wirkung zu zeigen.

Ich hab bereits seit längernen nach diesem Bug auf verschiedenen Foren 
gesucht und nichts dazu gefunden. Es wäre schön wenn jemand diesen Bug 
bestätigen könnte oder mich aufklären könnte ob ich etwas übersehen 
habe. Vieleicht dieser Post aber auch schon anderen falls Sie über 
dieses Problem stolpern sollten.

Gruß Leonhard

Weitere Daten:
- Atmel Studio 6 (Version: 6.0.1938 - Service Pack 1)
- uC: AT32UC3A1512 (sollte aber nichts zur Sache tun)

P.S: Sehe gerade, dass ich im falschen Subforum bin...kann man den 
Beitrag irgendwie verschieben?
OP #2896981
Lesenswert?
• ▲
▼
Nachdem ich dem Fehler über -v versucht habe auf den Grund zu gehen, ist 
mir aufgefallen, dass das Atmel Studio beim Aufruf des Linkers die 
Optimierungsstufe nicht übergibt. Man muss z.B. -O2 bei den 
Linkeroptionen extra angeben. Scheint also ein Bug vom Atmel Studio zu 
sein und nicht von GCC.
OP #2897032
Lesenswert?
• ▲
▼
Aber ld wird ja nicht direkt von Atmel Studio aufgerufen, sondern 
implizit über den Compiler (avr32-gcc).

Ferner würde ich erwarten, dass wenn ich dort als Optimierungslevel O2 
angebe, dass auch der Linker optimiert, zumal es keine extra Option für 
die Linkeroptimierung gibt (also kein schönes Kästchen / Dropdownmenü 
etc.). Wenn das gewollt ist, dann OK. Für mich perönlich ist dieses 
Verhalten nicht intuitiv.
Aber Danke für die Hilfe!

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 13 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.