Марк Коренберг added the comment: $ gcc -O3 -DDOIT=doit ./zzz.c -o zzz && time ./zzz
real 0m1.675s user 0m1.672s sys 0m0.000s $ gcc -O3 -DDOIT=doit2 ./zzz.c -o zzz && time ./zzz real 0m1.657s user 0m1.656s sys 0m0.000s ==================================================== #include <stdint.h> static int __attribute__((noinline)) doit(int64_t index, int64_t nitems) { return index < 0 || index >= nitems; } static int __attribute__((noinline)) doit2(int64_t index, int64_t nitems) { return (uint64_t)index >= (uint64_t)nitems; } int main(void) { int count=0, i; for (i = 0; i < 1000000000; i++) { count += DOIT(832921, i); } return count; } ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue28397> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com