https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87444
--- Comment #1 from Uroš Bizjak <ubizjak at gmail dot com> --- This is by design. A comment in driver-i386.c says: /* Let the L3 replace the L2. This assumes inclusive caches and single threaded program for now. */ if (level3.sizekb) level2 = level3;