I was originally thinking that SImode represented the natural word size of the target. I don't suppose you would consider extending this strategy to DImode as the basis for a follow-up patch, rather than a show stopper for this one? "word_mode" is the right mode to use.