Re: duplicated modulo

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Am 01.04.2011 12:19, schrieb Nicolas Kaiser:
* "Michal Nazarewicz"<mina86@xxxxxxxxxx>:
On Fri, 01 Apr 2011 11:41:13 +0200, Nicolas Kaiser wrote:
I'm curious: a duplicated modulo operation can't possibly make
any difference, can it?

diff -u -p ./arch/powerpc/platforms/powermac/nvram.c
/tmp/nothing/arch/powerpc/platforms/powermac/nvram.c
--- ./arch/powerpc/platforms/powermac/nvram.c	2011-03-31
09:52:41.674292401 +0200
+++ /tmp/nothing/arch/powerpc/platforms/powermac/nvram.c
@@ -246,7 +246,6 @@ static u32 core99_calc_adler(u8 *buffer)
  	high = 0;
  	for (cnt=0; cnt<(NVRAM_SIZE-CORE99_ADLER_START); cnt++) {
  		if ((cnt % 5000) == 0) {
-			high  %= 65521UL;
  			high %= 65521UL;
  		}
  		low += buffer[cnt];

It's not just a module.  It's also an assignment.

Sure. But I fail to see where between

a %= b;
a %= b;

and

a = (a % b) % b;

and

a %= b;

would be a difference?
Perhaps an issue with signed / unsigned, or long vs. int?

--
To unsubscribe from this list: send the line "unsubscribe linux-c-programming" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Assembler]     [Git]     [Kernel List]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [C Programming]     [Yosemite Campsites]     [Yosemite News]     [GCC Help]

  Powered by Linux