qemu/tests/tcg/xtensa/test_b.S
<<
>>
Prefs
   1#include "macros.inc"
   2
   3test_suite b
   4
   5test bnone
   6    movi    a2, 0xa5a5ff00
   7    movi    a3, 0x5a5a00ff
   8    bnone   a2, a3, 1f
   9    test_fail
  101:
  11    movi    a2, 0xa5a5ff01
  12    bnone   a2, a3, 1f
  13    j       2f
  141:
  15    test_fail
  162:
  17test_end
  18
  19test beq
  20    movi    a2, 0
  21    movi    a3, 0
  22    beq     a2, a3, 1f
  23    test_fail
  241:
  25    movi    a2, 1
  26    beq     a2, a3, 1f
  27    j       2f
  281:
  29    test_fail
  302:
  31test_end
  32
  33test blt
  34    movi    a2, 6
  35    movi    a3, 7
  36    blt     a2, a3, 1f
  37    test_fail
  381:
  39    movi    a2, 0xffffffff
  40    blt     a2, a3, 1f
  41    test_fail
  421:
  43    movi    a2, 7
  44    blt     a2, a3, 1f
  45    j       2f
  461:
  47    test_fail
  482:
  49test_end
  50
  51test bltu
  52    movi    a2, 6
  53    movi    a3, 7
  54    bltu    a2, a3, 1f
  55    test_fail
  561:
  57    movi    a2, 7
  58    bltu    a2, a3, 1f
  59    j       2f
  601:
  61    test_fail
  622:
  63    movi    a2, 0xffffffff
  64    bltu    a2, a3, 1f
  65    j       2f
  661:
  67    test_fail
  682:
  69test_end
  70
  71test ball
  72    movi    a2, 0xa5a5ffa5
  73    movi    a3, 0xa5a5ff00
  74    ball    a2, a3, 1f
  75    test_fail
  761:
  77    movi    a2, 0xa5a5a5a5
  78    ball    a2, a3, 1f
  79    j       2f
  801:
  81    test_fail
  822:
  83test_end
  84
  85test bbc
  86    movi    a2, 0xfffffffd
  87#undef BIT
  88#if XCHAL_HAVE_BE
  89#define BIT 0xfffffffe
  90#else
  91#define BIT 0xffffff01
  92#endif
  93    movi    a3, BIT
  94    bbc     a2, a3, 1f
  95    test_fail
  961:
  97    movi    a2, 8
  98#undef BIT
  99#if XCHAL_HAVE_BE
 100#define BIT 0xfffffffc
 101#else
 102#define BIT 0xffffff03
 103#endif
 104    movi    a3, BIT
 105    bbc     a2, a3, 1f
 106    j       2f
 1071:
 108    test_fail
 1092:
 110test_end
 111
 112test bbci
 113    movi    a2, 0xfffdffff
 114    bbci.l  a2, 17, 1f
 115    test_fail
 1161:
 117    movi    a2, 0x00020000
 118    bbci.l  a2, 17, 1f
 119    j       2f
 1201:
 121    test_fail
 1222:
 123test_end
 124
 125test bany
 126    movi    a2, 0xa5a5ff01
 127    movi    a3, 0x5a5a00ff
 128    bany    a2, a3, 1f
 129    test_fail
 1301:
 131    movi    a2, 0xa5a5ff00
 132    bany    a2, a3, 1f
 133    j       2f
 1341:
 135    test_fail
 1362:
 137test_end
 138
 139test bne
 140    movi    a2, 1
 141    movi    a3, 0
 142    bne     a2, a3, 1f
 143    test_fail
 1441:
 145    movi    a2, 0
 146    bne     a2, a3, 1f
 147    j       2f
 1481:
 149    test_fail
 1502:
 151test_end
 152
 153test bge
 154    movi    a2, 7
 155    movi    a3, 7
 156    bge     a2, a3, 1f
 157    test_fail
 1581:
 159    movi    a2, 6
 160    bge     a2, a3, 1f
 161    j       2f
 1621:
 163    test_fail
 1642:
 165    movi    a2, 0xffffffff
 166    bge     a2, a3, 1f
 167    j       2f
 1681:
 169    test_fail
 1702:
 171test_end
 172
 173test bgeu
 174    movi    a2, 7
 175    movi    a3, 7
 176    bgeu    a2, a3, 1f
 177    test_fail
 1781:
 179    movi    a2, 0xffffffff
 180    bgeu    a2, a3, 1f
 181    test_fail
 1821:
 183    movi    a2, 6
 184    bgeu    a2, a3, 1f
 185    j       2f
 1861:
 187    test_fail
 1882:
 189test_end
 190
 191test bnall
 192    movi    a2, 0xa5a5a5a5
 193    movi    a3, 0xa5a5ff00
 194    bnall   a2, a3, 1f
 195    test_fail
 1961:
 197    movi    a2, 0xa5a5ffa5
 198    bnall   a2, a3, 1f
 199    j       2f
 2001:
 201    test_fail
 2022:
 203test_end
 204
 205test bbs
 206    movi    a2, 8
 207#undef BIT
 208#if XCHAL_HAVE_BE
 209#define BIT 0xfffffffc
 210#else
 211#define BIT 0xffffff03
 212#endif
 213    movi    a3, BIT
 214    bbs     a2, a3, 1f
 215    test_fail
 2161:
 217    movi    a2, 0xfffffffd
 218#undef BIT
 219#if XCHAL_HAVE_BE
 220#define BIT 0xfffffffe
 221#else
 222#define BIT 0xffffff01
 223#endif
 224    movi    a3, BIT
 225    bbs     a2, a3, 1f
 226    j       2f
 2271:
 228    test_fail
 2292:
 230test_end
 231
 232test bbsi
 233    movi    a2, 0x00020000
 234    bbsi.l  a2, 17, 1f
 235    test_fail
 2361:
 237    movi    a2, 0xfffdffff
 238    bbsi.l  a2, 17, 1f
 239    j       2f
 2401:
 241    test_fail
 2422:
 243test_end
 244
 245test_suite_end
 246