diff options
| -rw-r--r-- | runtime/arch/arm/memcmp16_arm.S | 19 |
1 files changed, 3 insertions, 16 deletions
diff --git a/runtime/arch/arm/memcmp16_arm.S b/runtime/arch/arm/memcmp16_arm.S index b623a2a2cb..0195b05b27 100644 --- a/runtime/arch/arm/memcmp16_arm.S +++ b/runtime/arch/arm/memcmp16_arm.S @@ -150,11 +150,7 @@ ARM_ENTRY __memcmp16 bne 8f /* restore registers and return */ mov r0, #0 - pop {r4, lr} - .cfi_restore r4 - .cfi_restore lr - .cfi_adjust_cfa_offset -8 - bx lr + pop {r4, pc} 2: /* the last 2 words are different, restart them */ ldrh r0, [r3, #-4] @@ -164,11 +160,7 @@ ARM_ENTRY __memcmp16 ldrheq ip, [r1, #-2] subseq r0, r0, ip /* restore registers and return */ - pop {r4, lr} - .cfi_restore r4 - .cfi_restore lr - .cfi_adjust_cfa_offset -8 - bx lr + pop {r4, pc} /* process the last few words */ 8: ldrh r0, [r3], #2 @@ -179,12 +171,7 @@ ARM_ENTRY __memcmp16 bne 8b 9: /* restore registers and return */ - pop {r4, lr} - .cfi_restore r4 - .cfi_restore lr - .cfi_adjust_cfa_offset -8 - bx lr - + pop {r4, pc} 5: /*************** non-congruent case ***************/ |