This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

-march prescott: GENERAL_REGS error; but -msseX Ok ?


Building mythtv with gcc 3.4.2

i386/dsputil_mmx.c: In function `h263_h_loop_filter_mmx':
i386/dsputil_mmx.c:634: error: can't find a register in class `GENERAL_REGS'
while reloading `asm'
dmesg | less make[2]: *** [dsputil_mmx.o] Error 1

My cflags are -mtune=prescott -O3 -funit-at-a-time -ffast-math
-fomit-frame-pointer


But -O3 -funit-at-a-time -ffast-math -fomit-frame-pointer -mmmx -msse -msse2 -msse3 works!


config/i386.c has:
{"prescott", PROCESSOR_NOCONA, PTA_SSE | PTA_SSE2 | PTA_SSE3
				        | PTA_MMX | PTA_PREFETCH_SSE}

So is the only reason prescott doesn't work is prefetch-sse. I can't find a switch for it. Isn't it an intrinsic that's always on? If so, why does the long form work, while prescott doesn't?

sean



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]