IR: Add prefalign attribute for function definitions.
The prefalign attribute determines the function's preferred alignment.
By default, the function's preferred alignment is set in a target-specific
way, but it may be overridden with this attribute.
The backend logic will be added in followup patches.
Part of this RFC:
https://discourse.llvm.org/t/rfc-enhancing-function-alignment-attributes/88019
Reviewers: efriedma-quic, nikic, arsenm
Pull Request: https://github.com/llvm/llvm-project/pull/155527