> hm. Isn't "m" just a memory operand? I'm not familiar with the %%reg > thing.
"m" is indeed just a memory operand that the compiler substitutes in the ASM code. The %%reg is how you nominate a register directly in x86 inline ASM (you need two percent symbols because a single percent symbol is an escape char, like it is in printf). The "m" will almost certainly - but not necessarily - boil down to (%%eax) anyway on the x86, but it also might not. > 2.91.66. That explains it. You can't compile this with that old a compiler:-( If I remember rightly, that only permits a single "+" constraint, and doesn't work properly with "+" constraints anyway. You would need to split the "+" constraint into an "=" constraint and a cross-ref input constraint, but this has other effects too, I think:-/ Also if I recall correctly, there're problems with register reloading in the gcc register allocator too that cause extra stack to get eaten if you use "=" constraints. Sometimes I hate gcc inline asm... :-) I'm told (by Arjan) that that version of the compiler isn't supported for 2.5 kernels anyway. David _______________________________________________ Jfs-discussion mailing list [EMAIL PROTECTED] http://www-124.ibm.com/developerworks/oss/mailman/listinfo/jfs-discussion
