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 ; .... HALT ;... . 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 :