Author: Dann Corbit
Date: 13:46:49 02/15/04
Go up one level in this thread
On February 15, 2004 at 16:45:41, Slater Wold wrote: >On February 15, 2004 at 16:29:51, Dann Corbit wrote: > >>On February 15, 2004 at 16:25:36, Slater Wold wrote: >> >>>On February 15, 2004 at 16:21:56, Dann Corbit wrote: >>> >>>>On February 15, 2004 at 16:20:48, Slater Wold wrote: >>>> >>>>>On February 15, 2004 at 16:10:55, Dann Corbit wrote: >>>>> >>>>>>On February 15, 2004 at 15:45:02, Slater Wold wrote: >>>>>> >>>>>>>My setup: >>>>>>> >>>>>>>AMD FX 51 >>>>>>>Windows 2003 Enterprise (64 bit) >>>>>>>Intel 8.0 Compiler >>>>>>> >>>>>>> >>>>>>>Why would compiling Crafty 19.10 be 15% slower when defining /DVC_INLINE_ASM & >>>>>>>/DUSE_ASSEMBLY? >>>>>>> >>>>>>>Has anyone else ever seen that? >>>>>> >>>>>>It may mean that the compiler generated better assembly than you did. >>>>>> >>>>>>It may also mean that you pulled in the wrong assembly. Old x86 assembly will >>>>>>run on the AMD opteron type systems. It is the new stuff that will really be >>>>>>snappy. >>>>> >>>>>ICC doesn't seem to like Bob's assembly code to start off with. >>>>> >>>>> >>>>>vcinline.h(28): warning #1011: missing return statement at end of non-void funct >>>>>ion "PopCnt" >>>>> } >>>>> ^ >>>>> >>>>>vcinline.h(41): warning #1011: missing return statement at end of non-void funct >>>>>ion "FirstOne" >>>>> } >>>>> ^ >>>>> >>>>>vcinline.h(54): warning #1011: missing return statement at end of non-void funct >>>>>ion "LastOne" >>>>> } >>>>> ^ >>>> >>>>Compiler bug. It does not recall that the return is stored in EAX. >>>> >>>>Print the rest of the routine that it is crying about. I am guessing it is >>>>pulling in the wrong assembly. >>> >>>That's the only thing. I don't know enough about assembly to know what the hell >>>is going on. :) >> >>I don't know where Bob's AMD 64 assembly is. Probably a .s file, since he uses >>GCC (or maybe he is using Intel now -- not sure). > >tst.s? > > > .file "tst.c" >.globl ans > .data > .align 4 > .type ans,@object > .size ans,4 >ans: > .long -1 > .section .rodata.str1.1,"aMS",@progbits,1 >.LC0: > .string "val? " >.LC1: > .string "%d" >.LC2: > .string "ans=%d\n" > .text >.globl main > .type main,@function >main: > pushl %ebp > movl %esp, %ebp > pushl %edi > pushl %esi > pushl %ebx > subl $12, %esp > andl $-16, %esp > subl $12, %esp > pushl $.LC0 > call printf > addl $8, %esp > leal -24(%ebp), %eax > pushl %eax > pushl $.LC1 > call scanf > addl $8, %esp >ZZ: Command not found. > movl %ebx, %edx >#APP > xorl %ebx, %ebx > testl %edx, %edx > jz 2f > 1: leal -1(%edx), %eax > incl %ebx > andl %eax, %edx > jnz 1b > 2: testl %ecx, %ecx > jz 4f > 3: leal -1(%ecx), %eax > incl %ebx > andl %eax, %ecx > jnz 3b > 4: movl %ebx,ans > >#NO_APP > pushl %ebx > pushl $.LC2 > call printf > addl $8, %esp > pushl ans > pushl $.LC2 > call printf > leal -12(%ebp), %esp > popl %ebx > popl %esi > popl %edi > leave > ret >.Lfe1: > .size main,.Lfe1-main > .ident "GCC: (GNU) 3.2.2 20030222 (Red Hat Linux 3.2.2-5)" Nope. That is 32 bit assembly. Ask Robert and he can tell you want file to use.
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.