> >So > >how can I fix this in assembly. I am not an expert with inlined assembly, > >so > >maybe someone can correct me if I am wrong, but something like this needs > >to > >be added: > > > >or %ecx, %ecx > >jz 2 > > > >2: > > This is wrong beacause the result is stored in ecx. Better using > JECXZ instruction > before the loop. > > Greeting, > rookie
No, it's a correct method to set/reset the zero flag: (X | X) == X just as (X & X) == X So, he could also write: "and %ecx, %ecx". I may be wrong, but in the old 386/486 days the "jecxz" was even less efficient, wasn't it? <history> Twenty years ago, my z80 programs had a lot of lines like and a ret z Weren't there discussions, if an nmos cpu consumed more electric power with either "and a" or "or a"? ;-) </history> Norbert _______________________________________________ freebsd-hackers@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to "[EMAIL PROTECTED]"