Please read this page from the main YASEP interface
version 2011-10-

CALL : Jump to a sub-routine and save the return address

This instruction is one of the few that write to two different registers simultaneously:

This allows the processor to jump to a subroutine (pointed to by the immediate or register value) and save the return address in a register (which gets written again in PC to return), as is demonstrated in this example:

.profile auto

; .... main program:
call my_function R5
; ....


. my_function
; function starts with the return address in R5
  ; do something useful here (or not)
mov R5 PC ; return

Note that PC as a source or destination makes no sense :