PIC assembly code simplify
Your code snippet is for a PIC 18.  It is a naively written routine to rotate the 32 bit variable toRotate left one bit.  Here is the code with some annotation:


         movlb   toRotate    ;set bank for access to target variable
         bcf     STATUS, C   ;init bit to shift in to 0
         btfsc   toRotate+3, 7 ;bit to shift in really is 0 ?
         bsf     STATUS, C   ;no, set it to 1
         rlcf    toRotate+0, 1 ;do the left shift by one bit
         rlcf    toRotate+1, 1
         rlcf    toRotate+2, 1
         rlcf    toRotate+3, 1