No Actually removing a printf simply displaying the value being calculated completely removed the md5 function from the code.
The compiler did what it was supposed to do: if you were calling a function that had no side effects, it knew that it could eliminate the call without having any effect on correct operation. It was right.
Benchmarking is a known science; calling your operation in a way that insists on a side effect (as I'm sure you found) lets you get the effect you want.
Steve -- Stephen J. Friedl | Unix Wizard | Microsoft Security MVP | Orange County, California USA | my web site