qemu

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

test_bnf.c (802B)


      1 #include <stdio.h>
      2 
      3 int main(void)
      4 {
      5     int a, b;
      6     int result;
      7 
      8     a = 0;
      9     b = 0;
     10     result = 0x3;
     11     __asm
     12     ("l.sfeqi %1, 0x0\n\t"
     13      "l.bnf 1f\n\t"
     14      "l.nop\n\t"
     15      "\n\t"
     16      "l.addi %0, %0, 0x1\n\t"
     17      "l.addi %0, %0, 0x1\n\t"
     18      "\n\t"
     19      "1:\n\t"
     20      "l.addi %0, %0, 0x1\n\t"
     21      : "+r"(a)
     22      : "r"(b)
     23     );
     24     if (a != result) {
     25         printf("l.bnf error\n");
     26         return -1;
     27     }
     28 
     29     a = 0;
     30     b = 0;
     31     result = 1;
     32     __asm
     33     ("l.sfeqi %1, 0x1\n\t"
     34      "l.bnf 1f\n\t"
     35      "l.nop\n\t"
     36      "\n\t"
     37      "l.addi %0, %0, 0x1\n\t"
     38      "l.addi %0, %0, 0x1\n\t"
     39      "\n\t"
     40      "1:\n\t"
     41      "l.addi %0, %0, 0x1\n\t"
     42      : "+r"(a)
     43      : "r"(b)
     44     );
     45     if (a != result) {
     46         printf("l.bnf error\n");
     47         return -1;
     48     }
     49 
     50     return 0;
     51 }