Take alignment into account in isSafeToSpeculativelyExecute and isSafeToLoadUnconditionally.
I assume that pointers without explicit alignment have ABI alignment. I'm not sure that it's correct but for now it reduces the impact of the change. Otherwise we can't speculate on pointers without explicit alignment because loads without explicit alignment require ABI aligned pointers.
As a next step I'm going to common isDereferenceableAndAlignedPointer and isSafeToLoadUnconditionally code.