cachepc-qemu

Fork of AMDESE/qemu with changes for cachepc side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-qemu
Log | Files | Refs | Submodules | LICENSE | sfeed.txt

check_movsm.s (616B)


      1# mach: crisv3 crisv8 crisv10 crisv32
      2# output: 5\nfffffff5\n5\nfffffff5\n0\n
      3
      4; Movs between registers.  Check that sign-extension is performed and the
      5; full register is set.
      6
      7 .include "testutils.inc"
      8
      9 .data
     10x:
     11 .byte 5,-11
     12 .word 5,-11
     13 .word 0
     14
     15 start
     16 move.d x,r5
     17
     18 moveq -1,r3
     19 movs.b [r5+],r3
     20 test_move_cc 0 0 0 0
     21 checkr3 5
     22
     23 moveq 0,r3
     24 movs.b [r5],r3
     25 test_move_cc 1 0 0 0
     26 addq 1,r5
     27 checkr3 fffffff5
     28
     29 moveq -1,r3
     30 movs.w [r5+],r3
     31 test_move_cc 0 0 0 0
     32 checkr3 5
     33
     34 moveq 0,r3
     35 movs.w [r5],r3
     36 test_move_cc 1 0 0 0
     37 addq 2,r5
     38 checkr3 fffffff5
     39
     40 movs.w [r5],r3
     41 test_move_cc 0 1 0 0
     42 checkr3 0
     43
     44 quit