Author: Gerd Isenberg
Date: 15:14:34 08/04/03
Go up one level in this thread
On August 04, 2003 at 17:30:08, Eugene Nalimov wrote: >On August 04, 2003 at 15:30:42, Gerd Isenberg wrote: > >>On August 04, 2003 at 13:28:09, Eugene Nalimov wrote: >> >>>No, AMD64 Visual C compiler does not support inline assembler. On a positive >>>side -- we now have intrinsics for bsf/bsr. >>> >>>Thanks, >>>Eugene >> >> >>Thanks Eugene, >> >>My point was AMD64 MASM in conjunction with AMD64 MSVC. >> >>I read already, that AMD64 Visual C compiler doesn't support inline assembler >>anymore. To make my integer MMX/SSE2 stuff, i have to use 64-bit MASM. > >There are lot of MMX/SSE2 intrinsics in the compiler now. So if you write your >code using those intrinsics it should work on both x86 and AMD64. More, MMX-only >code will work on Itanium as well (Itanium does not support SSE2)... > >>In my naive imagination i thought about a way to inline own, very small >>assembler functions from MASM into C. That's what i meant with "own intrinsics". >> >>But Ok, if "bsf/bsr" and even "bswap" are available as intrinsics it isn't >>necessary of course. >> >>Btw.: Do these intrinsics imply inlining? >>eg. for this bsf prototype: (don't know the identifier) >> >>unsigned __int64 _BitScanForeward(unsigned __int64 x); >> >>inlined code like this: >> >>bsf rax,rcx ; according to register convention, >> ; but may be changed/optimized by the compiler >> >> >>Regards, >>Gerd > >Yes, compiler will expand intrinsics inline. We had lot of discussions here, as >somebody suggested to generate function calls for intrinsics that are not >supported on the given platform (e.g. 64x64-->128-bit multiplication on x86), >but it was decided that if user calls intrinsic he wants performance. > >Thanks, >Eugene Great news, Eugene. Seems that intrinsics simply redundantize the need for inline assembly. Inline assembly in MSVC++ 6.0 was even a bit ugly - no fastcall passing possible. Most often a store/load sequence from/to same register. Thanks, Gerd
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.