r223862 caused a regression; quoting:
The selection logic for vld/vst doesn't care about less-than-standard alignment attributes. In this case, the alignment of the loads is 1, but SelectVLD selected VLD1q64, because the result type was v2i64. It was obvious from the testcases I added in that commit, but I didn't register the wrongness.
This patch introduces bitcasts if necessary, and changes the vld/vst type to one whose standard alignment matches the original load/store alignment.