op.c: ro ops for mysubs

Bring the jollity of read-only ops to my subs
fix Win32 nmake cant rebuild DynaLoader.obj on Makefile regen bug

See [perl #123123] for details.
fuse returning branches in pp_goto

before 0xA08 bytes of machine code on miniperl VC2003, after 0x9B0

All 3 exit/return paths of pp_goto call PERL_ASYNC_CHECK, but due to
subtle differences between them, they were 3 separate branches in machine
code that shared nothing. In the first, a plain C return was done instead
of a RETURNOP (which contains "PL_stack_sp = sp"). In the 2 RETURNOPs, one
returned a OP * from a CV*, the other returned a C auto. They couldn't be
fused therefore, since PERL_ASYNC_CHECK could, according to C lang,
rewrite CvSTART. To fix this, reorder the order of operations so 1 instance
of PERL_ASYNC_CHECK is shared by the 3 different exit paths. Also due to
the "if (!(do_dump || label_len)) DIE" it is impossible to not run one or
the other.  The isolated if(do_dump) and if(label_len), mean that unless
a C optimizer was very smart (VC wasnt), there was an control path where
PERL_ASYNC_CHECK would execute twice in row. Remove that control path
explicitly.  There might be questionable stack usage/stack reallocation
near PERLDB_GOTO but I am not looking for that in this patch.