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?
Ob die Option vom Treiber an dem Linker gereicht wird, sieht du anhand der Ausgabe zusammen mit -v. Damit wird (neben anderen Infos) angezeigt, mit welchen Optionen die Subtools (Compiler, Assembler, Linker) aufgerufen werden.
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.
Das gehört so. -O2 ist eine Compiler-Option, d.h. für cc1 bzw. cc1plus bestimmt und keine Linker-Option und damit nicht für ld. Für die unterstützten Optionen der Subtools geht z.B. -v --help
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!
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.