Macro impl_internal_sve_predicate

macro_rules! impl_internal_sve_predicate {
    ($(($name:ident, $elt:literal))*) => { ... };
}

LLVM requires the predicate lane count to be the same as the lane count it's working with. However the ACLE only defines one bool type and the instruction set doesn't have this distinction. As a result we have to create these internal types so we can match the LLVM signature. Each of these internal types can be converted to the public svbool_t type and the svbool_t type can be converted into these.