I don't understand why you didn't simply reverse the test and enclose the frequent case inside the if {} block. I assume it was just to avoid indenting a large block of code, which is not sufficient justification for a goto.
A goto often has unforeseen effects on high-level optimizations that can be as bad as a pipeline flush. ....Roy