Author: Eugene Nalimov
Date: 10:59:32 07/18/03
Go up one level in this thread
On July 18, 2003 at 04:05:52, Walter Faxon wrote: > [...] > >I'll believe in a version of MSVC coding cmov when and if I see it. > ; Listing generated by Microsoft (R) Optimizing Compiler Version 14.00.30506.17 TITLE x.c .386P include listing.inc if @Version gt 510 .model FLAT else text SEGMENT PARA USE32 PUBLIC 'CODE' text ENDS _DATA SEGMENT DWORD USE32 PUBLIC 'DATA' _DATA ENDS CONST SEGMENT DWORD USE32 PUBLIC 'CONST' CONST ENDS _BSS SEGMENT DWORD USE32 PUBLIC 'BSS' _BSS ENDS $$SYMBOLS SEGMENT BYTE USE32 'DEBSYM' $$SYMBOLS ENDS _TLS SEGMENT DWORD USE32 PUBLIC 'TLS' _TLS ENDS FLAT GROUP _DATA, CONST, _BSS ASSUME CS: FLAT, DS: FLAT, SS: FLAT endif INCLUDELIB LIBC INCLUDELIB OLDNAMES PUBLIC _MT32table CONST SEGMENT _MT32table DB 00H DB 09H DB 01H DB 0aH DB 0dH DB 015H DB 02H DB 01dH DB 0bH DB 0eH DB 010H DB 012H DB 016H DB 019H DB 03H DB 01eH DB 08H DB 0cH DB 014H DB 01cH DB 0fH DB 011H DB 018H DB 07H DB 013H DB 01bH DB 017H DB 06H DB 01aH DB 05H DB 04H DB 01fH CONST ENDS PUBLIC _leastSigBit64 ; Function compile flags: /Ogty text SEGMENT _bb$ = 8 ; size = 8 _leastSigBit64 PROC NEAR ; File c:\repro\x.c ; Line 23 mov eax, DWORD PTR _bb$[esp-4] ; Line 25 xor ecx, ecx test eax, eax sete cl ; Line 26 test ecx, ecx cmovne eax, DWORD PTR _bb$[esp] ; Line 27 lea edx, DWORD PTR [eax-1] xor edx, eax ; Line 28 imul edx, 130329821 ; 07c4acddH ; Line 29 shr edx, 27 ; 0000001bH movzx eax, BYTE PTR _MT32table[edx] shl ecx, 5 or eax, ecx ; Line 32 ret 0 _leastSigBit64 ENDP text ENDS END We'll fix sete/test sequence in the near future. Thanks, Eugene
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.