ARMAsmParser was incorrectly dropping a leading dollar sign character
from symbol names in targets of branch instructions. This was caused by
an incorrect assumption that the contents following the dollar sign
token should be handled as a constant immediate, similarly to the #
token.
This patch avoids the operand parsing from consuming the dollar sign
token when it is followed by an identifier, making sure it is properly
parsed as part of the expression.
What if we have here $ foo, i.e. whitespace after the dollar? We should not paste together two separate tokens $ and <whatever> to form an identifier, $foo, $12 are identifiers, but $ 12 is not.