; Modular address postincrement/postdecrement test start: ; program PSW for modular address mode add r1,r0,0x81000000 nop || nop mvtsys psw,r1 || nop nop || nop test1: ; set modular address limits: 0x18 bytes add r1,r0,0x20000070 ; [start, ... nop || nop mvtsys mod_s,r1 || nop nop || nop add r1,r0,0x20000088 ; ..., end) nop || nop mvtsys mod_e,r1 || nop ; modular autoincrement test add r30,r0,0x20000070 ; base address = mod_s ld2w r40,@(r30+,r0) || nop ; after: r30 = ...078 ld2w r40,@(r30+,r0) || nop ; after: r30 = ...080 ld2w r40,@(r30+,r0) || nop ; after: r30 = ...070 add r29,r0,0x20000070 ; expected end address; wrapping around cmpeq f1,r30,r29 bra/xf fail test2: ; set modular address limits: 0x18 bytes add r1,r0,0x20000088 ; [start, ... nop || nop mvtsys mod_s,r1 || nop nop || nop add r1,r0,0x20000070 ; ..., end) nop || nop mvtsys mod_e,r1 || nop ; modular autodecrement test add r30,r0,0x20000088 ; base address = mod_s ld2w r40,@(r30-,r0) || nop ; after: r30 = ...080 ld2w r40,@(r30-,r0) || nop ; after: r30 = ...078 ld2w r40,@(r30-,r0) || nop ; after: r30 = ...088 add r29,r0,0x20000088 ; expected end address; wrapping around cmpeq f1,r30,r29 bra/xf fail ok: add r2,r0,0 .long 0x0e000004, 0x00f00000 fail: add r2,r0,47 .long 0x0e000004, 0x00f00000