https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98585
Bug ID: 98585 Summary: [11 Regression] target attribute resets cmodel on x86 Product: gcc Version: 11.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: law at redhat dot com CC: hjl.tools at gmail dot com, jakub at redhat dot com Target Milestone: --- Using the "target" attribute on x86 causes a reset of the cmodel from the command line. Compile this testcase with -mcmodel-large with gcc-10. You will see that we use movabsq to load the address of "bar" into a register and use an indirect jump. With gcc-11 we make a direct jump/call. This causes grub2 to FTBFS in Fedora rawhide and RHEL 9. This appears to be caused by ba948b37768c99cd8eb9f5b6fbd45fcf4bd15b78 void bar (void); void __attribute__ ((target ("bmi2"))) foo() { bar (); }