The current code cannot handle register class names like 'i32', which is a valid register class name in WebAssembly.
When parsing %0:i32, in which i32 is a register class name, this i32 token is lexed here, before calling parseRegisterClassOrBank function. And the token is created here in lexMIToken function. So if the name is i32, it will be categorized as an integer type rather than an identifier type, the prerequisite that this gets checked against register class/bank names.
To keep the same behaviour as before, we need to check that the following characters are digits and error out if not. If not, I think this will assert in APInt instead of emitting a parsing error.