https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67850
--- Comment #2 from hjl at gcc dot gnu.org <hjl at gcc dot gnu.org> --- Author: hjl Date: Wed Oct 7 10:30:12 2015 New Revision: 228565 URL: https://gcc.gnu.org/viewcvs?rev=228565&root=gcc&view=rev Log: Merge ix86_maybe_switch_abi with ix86_set_current_function ix86_maybe_switch_abi is called to late during RTL expansion and we use the stale information from compilation of the previous function. aggregate_value_p uses call_used_regs. aggregate_value_p is used by IPA and return value optimization, which are called before ix86_maybe_switch_abi is called. This patch merges ix86_maybe_switch_abi with ix86_set_current_function. PR target/67850 * config/i386/i386.c (ix86_maybe_switch_abi): Merged with ... (ix86_set_current_function): This. (TARGET_EXPAND_TO_RTL_HOOK): Removed. Modified: trunk/gcc/ChangeLog trunk/gcc/config/i386/i386.c