This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
RE: postreload problem using reload_inm and SECONDARY_RELOAD macros
further hints :
The immediate which gcc wants to move in R_REGS is a (const_int 8) as described in the error message below :
arithmetic.c:197: error: insn does not satisfy its constraints:
(insn 1505 903 1506 0 (set (reg:SI 25 $R9)
(const_int 8 [0x8])) 0 {movsi_internal} (nil)
(nil))
arithmetic.c:197: internal compiler error: in reload_cse_simplify_operands, at postreload.c:391
So I added some debug trace in function 'my_secondary_input_reload_class' to understand why (const_int 8) is not reloaded to C_REGS.
'my_secondary_input_reload_class' is called several times but never with rtl expression (const_int 8).
I also checked 'my_preferred_reload_class' function and I don't see expression (const_int 8).
Selim