OP * xsppw_name(pTHX)
Conversely, in ref-counted builds it creates xsppw_name() as a small wrapper function which calls the real function via a wrapper which processes the args and return values to ensure that reference counts are properly handled for code which uses old-style dSP, PUSHs(), POPs() etc, which don't adjust the reference counts of the items they manipulate.
xsppw_nargs indicates how many arguments the function consumes off the stack. It can be a constant value or an expression, such as
((PL_op->op_flags & OPf_STACKED) ? 2 : 1)
Alternatively if xsppw_nlists is 1, it indicates that the PP function consumes a list (or - rarely - if 2, consumes two lists, like pp_aassign()), as indicated by the top markstack position.
This is intended as a temporary fix when converting XS code to run under PERL_RC_STACK builds. In the longer term, the PP function should be rewritten to replace PUSHs() etc with rpp_push_1() etc.
Declare Just SP. This is actually identical to dSP, and declares a local copy of perl's stack pointer, available via the SP macro. See "SP" in perlapi. (Available for backward source code compatibility with the old (Perl 5.005) thread model.)
TARG is short for "target". It is an entry in the pad that an OPs op_targ refers to. It is scratchpad space, often used as a return value for the OP, but some use it for other purposes.
These each pop a string off the stack. There are two names for historical reasons.