https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103465
Bug ID: 103465 Summary: Invalid note with -fno-reorder-blocks-and-partition Product: gcc Version: 11.2.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: rtl-optimization Assignee: unassigned at gcc dot gnu.org Reporter: tomas.kalibera at gmail dot com Target Milestone: --- With GCC 10.3.0 and 11.2.0, compiling this example with -O2 -fno-reorder-blocks-and-partition for Windows emits a note uwi.c:3:9: note: '-freorder-blocks-and-partition' does not support unwind info on this architecture 3 | #pragma GCC optimize ("unroll-loops") | ^~~ uwi.c:5:1: note: '-freorder-blocks-and-partition' does not support unwind info on this architecture 5 | int main(int argc, char **argv) { | ^~~ (even though asking GCC to _not_ perform that optimization) #include<stdio.h> #pragma GCC optimize ("unroll-loops") int main(int argc, char **argv) { printf("Hello 1\n"); printf("Hello 2\n"); printf("Hello 3\n"); return 0; } This note is emitted twice for this example and many times for bigger examples, also for other GCC optimization options pragmas. The outputs can become large (e.g. building R CRAN packages increased log file from about 1G to 12G). The note is also emitted when -freorder-blocks-and-partition is given (explicitly), which is probably intended, but it is not emitted when the optimization is used implicitly as part of -O2. The same problem exists with g++, except the wording of the note is "does not work with exceptions on this architecture" With "12.0" (5e5f880d0452ef2cffb94f4a686d56833c9f4215), the note is not emitted with -fno-reorder-blocks-and-partition, however, the other problem remains. The note is still not emitted when the optimization is enabled implicitly via -O2. Related to Bug 103274; the reason for using -fno-reorder-blocks-and-partition was to get valid unwind information for long jumps to work.