I initially encountered those assertions when trying to create
this IR alignment attribute from clang's __attribute__((assume_aligned(imm))),
because until D72994 there is no sanity checking for the value of imm.
But even then, we have llvm::Value::MaximumAlignment constant (which is 536870912),
which is enforced for clang attributes, and then there are some other magical constant
(0x40000000 i.e. 1073741824 i.e. 2 * 536870912) in
Attribute::getWithAlignment()/AttrBuilder::addAlignmentAttr().
I strongly suspect that 0x40000000 is incorrect,
and that also should be llvm::Value::MaximumAlignment.