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_add.c (612B)


      1#include <stdio.h>
      2
      3int main(void)
      4{
      5    int a, b, d;
      6    int result;
      7
      8    a = 0x100;
      9    b = 0x100;
     10    result = 0x200;
     11    __asm
     12    ("l.add %0, %0, %1\n\t"
     13     : "+r"(a)
     14     : "r"(b)
     15    );
     16    if (a != result) {
     17        printf("add error\n");
     18        return -1;
     19    }
     20
     21    a = 0xffff;
     22    b = 0x1;
     23    result = 0x10000;
     24    __asm
     25    ("l.add %0, %0, %1\n\t"
     26     : "+r"(a)
     27     : "r"(b)
     28    );
     29    if (a != result) {
     30        printf("add error\n");
     31        return -1;
     32    }
     33
     34    a = 0x7fffffff;
     35    b = 0x1;
     36    __asm
     37    ("l.add %0, %1, %2\n\t"
     38     : "=r"(d)
     39     : "r"(b), "r"(a)
     40    );
     41
     42    return 0;
     43}