On Tue, 2005-05-10 at 11:11 -0400, Jakub Jelinek wrote: > On Tue, May 10, 2005 at 05:08:34PM +0200, Nils Philippsen wrote: > > > If the only place that you want to enable -msse2 for are the clobber > > > lists of __asm statements, then perhaps best would be to conditionalize > > > them: > > > __asm ("something" : ... : ... : > > > #ifdef __SSE2__ > > > "xmm0", "xmm1" > > > #endif > > > ); > > > etc., because without -msse2 (resp. -msse (__SSE__ macro)), the registers > > > are not known to the compiler, so there is no point to tell the compiler > > > about them. > > > > Ahh. If I understand you correctly, given that the various asm optimized > > functions are in separate source files, it should be ensured that > > -mmmx/sse/sse2/3dnow are used only for the relevant source files? > > Yes (and assuming they don't also contain code that is called > unconditionally). I expect that to be the case (the code is in files called gimp- composite-{generic,mmx,altivec,sse,sse2,...}). > Or don't pass -mmmx/-msse/-msse2/-m3dnow etc. at all, and hide all the > SSE2 etc. stuff in __asm and conditionally don't expose the clobbers > to GCC. The idea is to use the most optimized code path possible from one binary. Besides, I don't really think we want to have i686,pentiumX,athlon variants of GIMP packages ;-). Nils -- Nils Philippsen / Red Hat / nphilipp@xxxxxxxxxx "They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety." -- B. Franklin, 1759 PGP fingerprint: C4A8 9474 5C4C ADE3 2B8F 656D 47D8 9B65 6951 3011 -- fedora-devel-list mailing list fedora-devel-list@xxxxxxxxxx http://www.redhat.com/mailman/listinfo/fedora-devel-list