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

test_dsp_r1_pick_qb.c (629B)


      1#include<stdio.h>
      2#include<assert.h>
      3
      4int main()
      5{
      6    int rd, rs, rt, dsp;
      7    int result;
      8
      9    rs = 0x12345678;
     10    rt = 0x87654321;
     11    dsp = 0x0f000000;
     12    result = 0x12345678;
     13
     14    __asm
     15        ("wrdsp %3, 0x10\n\t"
     16         "pick.qb %0, %1, %2\n\t"
     17         : "=r"(rd)
     18         : "r"(rs), "r"(rt), "r"(dsp)
     19        );
     20    assert(rd == result);
     21
     22    rs = 0x12345678;
     23    rt = 0x87654321;
     24    dsp = 0x00000000;
     25    result = 0x87654321;
     26
     27    __asm
     28        ("wrdsp %3, 0x10\n\t"
     29         "pick.qb %0, %1, %2\n\t"
     30         : "=r"(rd)
     31         : "r"(rs), "r"(rt), "r"(dsp)
     32        );
     33    assert(rd == result);
     34
     35    return 0;
     36}