Hello, I asked a question on Stack Overflow (http://stackoverflow.com/questions/10964893/q-in-inline-assembly-with-arch-i386) a couple days ago, but thought I would ask here in case someone can help me out. My question has to do with the use of the 'q' modifier to %1 on line 110 of pulsecore/svolume_mmx.c (of PulseAudio release 1.1)
In particular, I'm trying to link PulseAudio to a 32-bit application on my 64-bit mac. When I compile this file with the "-arch i386" flag, the asm code generator fills in "%q1" to %rcx, which is a 64-bit register. The assembler then can't assemble the file in 32-bit mode. Using any combination of "-arch i386", "-m32" and "-march i386" doesn't help. >From what little documentation I could find, the "q" means "use a 64-bit register if you have one," so I can understand what's going wrong here. Does anyone know of a way to convince the asm code generator to only use 32-bit registers, even when the 'q' modifier is given to "%1"? I'm hoping for just something I can add to CFLAGS. Thanks, Myles P.S. My current workaround is to comment out the function and disable the call to set the volume function to the MMX version, but this isn't a long-term solution. _______________________________________________ pulseaudio-discuss mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss
