#NEWLINE# def test_memory_instructions( self ) : #NEWLINE# #INDENT# instr_samples = [ [ 'str r0, [r12]' , 'ldr  r1, [r12]' ] , [ 'strb r0, [r12]' , 'ldrb  r1, [r12]' ] , [ 'strh r0, [r12]' , 'ldrh  r1, [r12]' ] , [ 'strd r6, [r12]' , 'ldrd  r2, [r12]' ] , [ 'strd r6, r7, [r12]' , 'ldrd  r8, r9, [r12]' ] , [ 'stm r12!, {r0 - r4}' , 'ldmdb r12, {r5 - r9}' ] , [ 'stmia r12, {r8 - r9}' , 'ldmia r12, {r1 - r2}' ] , [ 'stmib r12!, {r11}' , 'ldmda r12!, {r3}' ] , [ 'add r12, r12, #0x100' , 'stmda r12, {r9 - r11}' , 'ldmda r12, {r1 - r3}' ] , [ 'add r12, r12, #0x100' , 'stmdb r12!, {r3}' , 'ldmia r12!, {r9}' ] , [ 'add r12, r12, #0x100' , 'stmfd r12, {r2 - r4}' ] , [ 'stmfa r12!, {r1 - r4}' ] , [ 'add r12, r12, #0x100' , 'stmed r12, {r6 - r9}' ] , [ 'stmea r12!, {r5 - r7}' ] , [ 'mov r0, r13' , 'mov r13, r12' , 'push {r1 - r10}' , 'pop {r2 - r11}' , 'mov r13, r0' , 'mov r0, #0' ] ] #NEWLINE# for instr in instr_samples : #NEWLINE# #INDENT# self . __test_asm_instruction_with_mem ( instr , 'r12' )