qemu

FORK: QEMU emulator
git clone https://git.neptards.moe/neptards/qemu.git
Log | Files | Refs | Submodules | LICENSE

check_jsr.s (919B)


      1 # mach: crisv3 crisv8 crisv10 crisv32
      2 # output: 0\n0\n0\n0\n0\n0\n
      3 
      4 # Test that jsr Rn and jsr [PC+] work.
      5 
      6  .include "testutils.inc"
      7  start
      8 x:
      9  move.d 0f,r6
     10  setf nzvc
     11  jsr r6
     12  .if 1; ..asm.arch.cris.v32
     13  nop
     14  .endif
     15 0:
     16  test_move_cc 1 1 1 1
     17  move srp,r3
     18  sub.d 0b,r3
     19  checkr3 0
     20 
     21  move.d 1f,r0
     22  setf nzvc
     23  jsr r0
     24  .if 1 ; ..asm.arch.cris.v32
     25  moveq 0,r0
     26  .endif
     27 6:
     28  nop
     29  quit
     30 
     31 2:
     32  test_move_cc 0 0 0 0
     33  move srp,r3
     34  sub.d 3f,r3
     35  checkr3 0
     36  jsr 4f
     37  .if 1 ; ..asm.arch.cris.v32
     38  nop
     39  .endif
     40 7:
     41  nop
     42  quit
     43 
     44 8:
     45  move srp,r3
     46  sub.d 7b,r3
     47  checkr3 0
     48  quit
     49 
     50 4:
     51  move srp,r3
     52  sub.d 7b,r3
     53  checkr3 0
     54  move.d 5f,r3
     55  jump r3
     56  .if 1; ..asm.arch.cris.v32
     57  moveq 0,r3
     58  .endif
     59  quit
     60 
     61  .space 32770,0
     62 1:
     63  test_move_cc 1 1 1 1
     64  move srp,r3
     65  sub.d 6b,r3
     66  checkr3 0
     67 
     68  clearf cznv
     69  jsr 2b
     70  .if 1; ..asm.arch.cris.v32
     71  nop
     72  .endif
     73 3:
     74 
     75  quit
     76 
     77 5:
     78  move srp,r3
     79  sub.d 7b,r3
     80  checkr3 0
     81  jump 8b
     82  .if 1 ; ..asm.arch.cris.v32
     83  nop
     84  .endif
     85  quit