This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: more m68k breakage on m68k-linux


Roman Zippel wrote:

hm.. the problem I see is that the register allocator is initialised
with random garbage. Eg FIXED_REGISTERS is 24 elts big, thus initial_fixed_regs[] is also only 24 elts and in init_reg_sets() we
copy a random 25th elt into fixed_regs[] and risk segfault.
I am pretty sure more it results in more damage later on.


I can confirm that it causes problems, after fixing FIXED_REGISTERS and CALL_USED_REGISTERS I can finally bootstrap gcc again, but my tree has another fix for a subtle miscompilation, which I still have to test separately. reg_class and all related macros still have to be fixed though.

Well done!


I'm convinced that argptr missing from FIXED_REGISTERS was an anomaly,
but I still don't quite understand how it would affect init_reg_sets().
Could you elaborate?

--
 // Bernardo Innocenti - Develer S.r.l., R&D dept.
\X/  http://www.develer.com/



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]