Problem with modyfying "addsi3" in machine description

Tomasz Jankowski tomcioj@gmail.com
Mon Oct 15 11:56:00 GMT 2012


Thank you for all hints! I'll use them in my code.

2012/10/14 Georg-Johann Lay <gjl@gcc.gnu.org>:
> Expanders don't get constraints.

This sounds reasonable, but it was not stated in documentation.

>
> SET should be VOIDmode, not SImode.
>
Ok, but why? I saw in few places (I'm almost sure event in official
GCC sources), that SET was used with SImode. Why it's so important?

>
> I don't think it works.  You still have the problem with offsets during
> reload.  addsi3 is special, I think you need const_int offsets.
> Otherwise spill code generation cannot work.
>
But what's so special about addsi3? For mulsi3 GCC is able to easily
change strategy and move immediate to register itself. Why doesn't it
work for addsi3 too? What "problem with offset during reload" actually
means?

Bye!



More information about the Gcc-help mailing list