On Thu, Apr 02, 2009 at 12:51:55PM +0200, Uros Bizjak wrote: > I guess that somehow we have to prevent choose_reload_regs to blindly > substitute memory_operand with register when paradoxical subregs are > involved. The condition for the substitution should be similar to the > condition in nonzero_bits1 from final.c:
Yes. It would be nicer if we could get rid of these special meanings of paradoxical subregs and instead used ZERO_EXTEND and SIGN_EXTEND in their place; this would also give better code for target that can have either of these. However, that would not only require changes to reload to reload these properly, but also to all the affected targets, e.g. rtx_costs would have to discount the cost of the extension operation. This e-mail was sent from a group e-mail system of ARC International Plc. Full details of the registered names and addresses of companies within the ARC group can be found on the ARC website.ARC International plc, Registered Office: Verulam Point, Station WaySt. Albans AL1 5HE United Kingdom Registered in England and Wales No. 3592130savm-exch03