qemu/tests/tcg/openrisc/test_sflesi.c
<<
>>
Prefs
   1#include <stdio.h>
   2
   3int main(void)
   4{
   5    int a;
   6    int result;
   7
   8    a = 0;
   9    result = 4;
  10    __asm
  11    ("1:\n\t"
  12     "l.addi   %0, %0, 4\n\t"
  13     "l.sflesi %0, 0x3\n\t"
  14     "l.bf 1b\n\t"
  15     "l.nop\n\t"
  16     : "+r"(a)
  17    );
  18    if (a != result) {
  19        printf("sflesi error\n");
  20        return -1;
  21    }
  22
  23    a = 0;
  24    result = 4;
  25    __asm
  26    ("1:\n\t"
  27     "l.addi   %0, %0, 1\n\t"
  28     "l.sflesi %0, 0x3\n\t"
  29     "l.bf 1b\n\t"
  30     "l.nop\n\t"
  31     : "+r"(a)
  32    );
  33    if (a != result) {
  34        printf("sflesi error\n");
  35        return -1;
  36    }
  37
  38    return 0;
  39}
  40