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_cmpxm.s (1513B)


      1# mach: crisv0 crisv3 crisv8 crisv10 crisv32
      2# output: 2\n2\n2\n2\nffff\nffff\nffff\nffff\nffffffff\nffffffff\nffffffff\n78134452\n78134452\n78134452\n78134452\n4452\n80000032\n
      3
      4 .include "testutils.inc"
      5 .data
      6x:
      7 .byte 0xff
      8 .word 0xffff
      9 .word 0xff
     10 .word 0xffff
     11 .byte 0x89
     12 .word 0xf789
     13 .word 0x8002
     14 .word 0x764
     15
     16 start
     17 moveq 2,r3
     18 move.d x,r5
     19 cmps.b [r5+],r3
     20 test_cc 0 0 0 1
     21 checkr3 2
     22
     23 moveq 2,r3
     24 cmps.w [r5+],r3
     25 test_cc 0 0 0 1
     26 checkr3 2
     27
     28 moveq 2,r3
     29 subq 3,r5
     30 cmpu.b [r5+],r3
     31 test_cc 1 0 0 1
     32 checkr3 2
     33
     34 moveq 2,r3
     35 cmpu.w [r5+],r3
     36 test_cc 1 0 0 1
     37 subq 3,r5
     38 checkr3 2
     39
     40 move.d 0xffff,r3
     41 cmpu.b [r5],r3
     42 test_cc 0 0 0 0
     43 checkr3 ffff
     44
     45 move.d 0xffff,r3
     46 cmpu.w [r5],r3
     47 test_cc 0 1 0 0
     48 checkr3 ffff
     49
     50 move.d 0xffff,r3
     51 cmps.b [r5],r3
     52 test_cc 0 0 0 1
     53 checkr3 ffff
     54
     55 move.d 0xffff,r3
     56 cmps.w [r5],r3
     57 test_cc 0 0 0 1
     58 checkr3 ffff
     59
     60 moveq -1,r3
     61 cmps.b [r5],r3
     62 test_cc 0 1 0 0
     63 addq 3,r5
     64 checkr3 ffffffff
     65
     66 moveq -1,r3
     67 cmps.w [r5+],r3
     68 test_cc 1 0 0 0
     69 checkr3 ffffffff
     70
     71 moveq -1,r3
     72 cmps.w [r5+],r3
     73 test_cc 0 1 0 0
     74 checkr3 ffffffff
     75
     76 move.d 0x78134452,r3
     77 cmpu.b [r5],r3
     78 test_cc 0 0 0 0
     79 checkr3 78134452
     80
     81 move.d 0x78134452,r3
     82 cmps.b [r5+],r3
     83 test_cc 0 0 0 1
     84 checkr3 78134452
     85
     86 move.d 0x78134452,r3
     87 cmpu.w [r5],r3
     88 test_cc 0 0 0 0
     89 checkr3 78134452
     90
     91 move.d 0x78134452,r3
     92 cmps.w [r5+],r3
     93 test_cc 0 0 0 1
     94 checkr3 78134452
     95
     96 move.d 0x4452,r3
     97 cmps.w [r5+],r3
     98 test_cc 0 0 0 1
     99 checkr3 4452
    100
    101 move.d 0x80000032,r3
    102 cmpu.w [r5+],r3
    103 test_cc 0 0 1 0
    104 checkr3 80000032
    105
    106 quit