Has anyone checked if the performance improvement stays if only the
pointers are set to const?
I'd also suggest running the test multiple times and averaging.
Felix Nawothnig wrote:
Andreas Mohr wrote:
While I'm not too convinced in this case (1.5% improvement sounds like
within statistic noise), it should be a good idea to mark things in Wine
const whenever possible (objdump -x helps here), since it improves
reliability
Huh? He did stuff like...
-void foo(int i)
+void foo(const int i)
This will most likely not improve reliability. He also changed some
pointers to const which is wanted and will ofcourse improve reliability.
Assuming that gcc has a pretty good optimizer the only reason I can
think of (besides a GCC bug :-) why performance increased is that gcc
doesn't have to perform aliasing-analysis and can be sure that the dst
pointer will never point into local parameters (constifying local
variables could speed up things slightly more).
I'm not sure about the "restrict" semantics but maybe it could be used
instead of constifying "int i" to archieve the same effects?
Felix