diff --git a/agb/src/agbabi/memcpy.s b/agb/src/agbabi/memcpy.s index 08baab52..056df5d0 100644 --- a/agb/src/agbabi/memcpy.s +++ b/agb/src/agbabi/memcpy.s @@ -14,9 +14,9 @@ .include "src/agbabi/macros.inc" .arm - .align 2 .section .iwram.__aeabi_memcpy, "ax", %progbits + .align 2 .global __agbabi_memcpy __agbabi_memcpy: .global __aeabi_memcpy @@ -115,6 +115,7 @@ __agbabi_memcpy1: bx lr .section .iwram.memcpy, "ax", %progbits + .align 2 .global memcpy memcpy: push {r0, lr} diff --git a/agb/src/agbabi/memset.s b/agb/src/agbabi/memset.s index be51ced2..d4f481e5 100644 --- a/agb/src/agbabi/memset.s +++ b/agb/src/agbabi/memset.s @@ -16,9 +16,9 @@ */ .arm - .align 2 .section .iwram.__aeabi_memset, "ax", %progbits + .align 2 .global __aeabi_memclr __aeabi_memclr: mov r2, #0 @@ -109,6 +109,7 @@ __agbabi_wordset4: bx lr .section .iwram.memset, "ax", %progbits + .align 2 .global memset memset: mov r3, r1 diff --git a/agb/src/asm_include.s b/agb/src/asm_include.s index 1682792c..a4902e04 100644 --- a/agb/src/asm_include.s +++ b/agb/src/asm_include.s @@ -17,7 +17,7 @@ .macro agb_thumb_func functionName:req .section .iwram.\functionName, "ax", %progbits .thumb -.align 2 +.align 1 .global \functionName .type \functionName, %function .func \functionName diff --git a/agb/src/save/asm_routines.s b/agb/src/save/asm_routines.s index 91128bf4..ac96ce9c 100644 --- a/agb/src/save/asm_routines.s +++ b/agb/src/save/asm_routines.s @@ -31,7 +31,9 @@ agb_thumb_func agb_rs__WramVerifyBuf @ Returns from the function successfully movs r0, #1 0: @ Jumps to here return the function unsuccessfully, because r0 contains 0 at this point - pop {r4-r5, pc} + pop {r4-r5} + pop {r1} + bx r1 agb_thumb_end agb_rs__WramVerifyBuf