https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61572
--- Comment #6 from Richard Biener <rguenth at gcc dot gnu.org> --- (In reply to Richard Biener from comment #5) > The question of course is why rdx is live from function entry to its first > use. > My patch will only continue to paper over this issue. Because of /* Set the bit for regs that are considered being defined at the entry. */ static void df_get_entry_block_def_set (bitmap entry_block_defs) { rtx r; int i; bitmap_clear (entry_block_defs); for (i = 0; i < FIRST_PSEUDO_REGISTER; i++) { if (global_regs[i]) bitmap_set_bit (entry_block_defs, i); if (FUNCTION_ARG_REGNO_P (i)) bitmap_set_bit (entry_block_defs, INCOMING_REGNO (i)); } dx is FUNCTION_ARG_REGNO_P. I wonder if we can do less conservative here ...