https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65369
--- Comment #17 from Jakub Jelinek <jakub at gcc dot gnu.org> --- I've tried to add __builtin_memset(ctx, 0, sizeof (*ctx)); to the beginning of md4_init and it changes the result of the program at -O0, so I expect the testcase relies on some particular pattern of uninitialized data in ctx->block.