Constraint *m should be used when the address of a variable is passed
as a value. And the constraint is missing for MS inline assembly when sth
is written to the address of the variable.
The missing would cause FE delete the definition of the static varible,
and then result in "undefined reference to xxx" issue.
IIRC, we have limitation on the number. Can you check if it works when we have more than 10 global variables.