https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102294
--- Comment #6 from Andrew Pinski <pinskia at gcc dot gnu.org> --- This is literally just measuring memset times of a small structure. -mtune=intel changes the timings too. Doing -mstringop-strategy=libcall also changes the timing to the point where they are about the same as clang. So this is a target issue and not a middle-end. You need to do timings on many more processors to have the -mtune=generic changed.