AltiVec mit Release-Konfiguration

dpauw

Mitglied
Thread Starter
Dabei seit
23.01.2006
Beiträge
30
Reaktionspunkte
0
Hallo zusammen!

Seit einigen Tagen sitze ich daran, eines meiner Programme für AltiVec umzubauen.
Mein Problem: Bei aktivierter Debug-Konfiguration(Altivec in den Projekteinstellungen für Debug aktiviert) kompiliert und linkt der alles perfekt.
Will ich mit Release-Konfiguration builden, erkennt der(obwohl ich Altivec auch für Release aktiviert habe) alle AltiVec-Schlüsselwörter nicht.

Woran kann das liegen? Ich habe schon ewig bei den Build-Optionen rumgesucht, aber mir keinen Reim darauf machen können.

MacOS X 10.4.4, XCode 2.2
 
Ich habe aber nunmal einen G4 und werde ihn auch noch lange haben. Mach doch mal eine Umfrage hier im Forum wieviele Leute einen AltiVec- und wie viele Leute einen SSE3-Prozessor haben...

Allerdings war das eigentlich nicht meine Frage.
 
Hmm. Am besten einfach bei den Build-Einstellungen unter "Other CFLAGS" mal -faltivec rein schreiben.
 
Hatte ich schon versucht, zeigt aber leider keinen Effekt.

Was gibt es denn sonst überhaupt noch für Unterschiede zwischen der Standard-Debug- und der Standard-Release-Konfiguration? An einem von denen muss es ja liegen...
 
Ich denke auch, das hört sich danach an dass Du die Build Option Enable AltiVec extensions (GCC_ALTIVEC_EXTENSIONS, -faltivec) in der Debug Configuration an hast, und im Release aus.

Aber tatsächlich: Wenn Du keinen guten Grund hast wirklich Altivec zu nehmen, nimm lieber das Accelerate Framework. Das setzt dann je nach Architektur auf Altivec oder SSE um.

Alex
 
Hmm. Dann schreib mal:
-faltivec -maltivec -mabi-altivec
rein.

@below
Inwiefern hilft das Accelerate-Framework? Kapselt das verschiedene Vector-Befehle, oder wie ist das? Weil ich hab das bisher nur als Bibliothek für einige Routinen gesehen.
 
Folgendes:

"-faltivec" hat keinen Einfluss.
"-mabi-altivec" erkennt der Compiler nicht

"-maltivec" erkennt der Compiler im Debugmodus("Build succeeded), im Releasemodus nicht("cc1plus: error: invalid option 'altivec'" - tatsächlich ohne 'm').

Was soll ich daraus nehmen?
 
Keine Idee. Bei mir geht's

Alex
 
hmm. Langsam werde ich ratlos...

Worin bestehen denn eigentlich bei einem kleinen Standard-C++-Konsolenprojekt die Unterschiede zwischen der Release- und der Debug-Konfiguration bei XCode?

An irgendeiner der Optionen muss es schließlich liegen. Das Problem lässt sich nämlich bei mir ohne weiteres in jedem anderen Projekt wiederholen: AltiVec für beide aktiviert, läuft nur im Debug.

Ich habe noch nicht viel XCode-Erfahrung, aber das ist doch komisch!
 
Du kannst alle Build Settings per Drag-Und-Drop in eine Datei schreiben und diff drüber laufen lassen.

Alex
 
Welche Performance- bzw. Size-Relevanten Einstellungen muss ich denn verändern, um aus einer Debug- eine Releasefähige Konfiguration zu machen?

Es gibt doch hier sicher einen Checker, der das weiß. Dann dupliziere ich einfach die Debug-Konfi, ändere die wichtigen Dinge und wir sind alle glücklich.

Und bald implementiere ich Wintel-Unterstützung(SSE3), keine Sorge...
 
Zurück
Oben Unten