This is the mail archive of the egcs@egcs.cygnus.com mailing list for the EGCS project. See the EGCS home page for more information.
>Hi, > >It seems that "movzb? %al,%?ax" may be faster than "and? $255,%?ax". >This patch for egcs 1.1.2 seems to make gzip faster. > >Thanks. > > Yes it maybe, but not allways, this is not the case as you can see from my message: Decompression becomes faster, while compression becomes slower. More over this generally slow down code. I do have my own patch to egcs doing the same thing as yours. To turn on suppressing of andl in favor of movz of use -mextendz-with-movz. Compiling of several programms shows general slow down. I any way "movzb? %al,%?ax" and "and? $255,%?ax" takes 1 tick both. So this is a kind of mistery with this instructions. As you can see from my message this change in uncompression code yields 20% performance boost. At the same time all the loop dealing with crc is 0x15 bytes long and takes 50% of time. The one instruction from it 5 or 3 bytes long saves 20% total time or 40% of loop time. This can not be at all. But it is. Sincerely Yours, Eugene.