https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110254
--- Comment #2 from Peter Bergner <bergner at gcc dot gnu.org> --- (In reply to Surya Kumari Jangala from comment #0) > But improve_allocation() can also choose a register that has not been > assigned to a conflicting allocno, and also has not been assigned to any > other allocno. In this case, allocated_hardreg_p[] has to be updated. > improve_allocation() calls assign_hard_reg() to check if any of the spilled > allocnos can get hard registers. Be cognizant of if the allocno we're reassigning to another "hardreg", has a mode that represents a register pair or larger, you'll need to update multiple allocated_hardreg_p[] entries.