The way the alignment is determined here is not compatible with opaque pointers -- we'd have to thread it through using either align or elementtype attributes.
However, as far as I can tell this alignment is actually never used for this particular intrinsic, so I've dropped the assignment entirely and converted RecordAlignment to MaybeAlign, so we get an assertion failure if it does end up being used.