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

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