def _jnzero16(ins):
    """ Jumps if top of the stack (16bit) is != 0 to arg(1)
    """
    value = ins.quad[1]
    if is_int(value):
        if int(value) != 0:
            return ['jp %s' % str(ins.quad[2])]  # Always true
        else:
            return []

    output = _16bit_oper(value)
    output.append('ld a, h')
    output.append('or l')
    output.append('jp nz, %s' % str(ins.quad[2]))
    return output
def _jnzero16 ( ins ) : value = ins . quad [ 1 ] if is_int ( value ) : if int ( value ) != 0 : return [ 'jp %s' % str ( ins . quad [ 2 ] ) ] else : return [ ] output = _16bit_oper ( value ) output . append ( 'ld a, h' ) output . append ( 'or l' ) output . append ( 'jp nz, %s' % str ( ins . quad [ 2 ] ) ) return output
Jumps if top of the stack (16bit) is != 0 to arg(1)