Author: Sune Fischer
Date: 12:16:40 09/19/01
Go up one level in this thread
On September 19, 2001 at 14:40:37, Dominic C. Marcello wrote:
>accidently submitted before i was done anyway its just
>__forceinline And( long long b1, long long b2 ) {
> long long ret;
> __asm {
> movq mm0, b1
> pand b1, b2
> movq ret, mm0
> }
> return ret;
>}
>
> only three instructions. More complicated things are obviously longer - for
>instance I have one inline function in assembly that sets a bit on all of the
>rotated bitboards. But most of my inline inline assembly functions are about 5
>or 6 unstructions long on average.
You can get that to compile in MSV C++?
I can't, I get errors on "__forceinline" and "long long".
I tried with:
__int64 And( __int64 b1, __int64 b2 ) {
__int64 ret;
__asm {
movq mm0, b1
pand b1, b2
movq ret, mm0
}
return ret;
}
it does not compile either,
some "improper operand type" on the line "movq ret, mm0".
What version of MSVC++ are you using, do you link to specific libraries?
-S.
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.