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_mul16.S (1664B)


      1#include "macros.inc"
      2
      3test_suite mul16
      4
      5#if XCHAL_HAVE_MUL16
      6
      7test mul16u_pp
      8    movi    a2, 0x137f5a5a
      9    mov     a3, a2
     10    movi    a4, 0xa5a5137f
     11    movi    a6, 0x06e180a6
     12    mul16u  a5, a2, a4
     13    assert  eq, a5, a6
     14    mul16u  a2, a2, a4
     15    assert  eq, a2, a6
     16    mul16u  a3, a4, a3
     17    assert  eq, a3, a6
     18test_end
     19
     20test mul16u_np
     21    movi    a2, 0x137fa5a5
     22    mov     a3, a2
     23    movi    a4, 0xa5a5137f
     24    movi    a6, 0x0c9d6bdb
     25    mul16u  a5, a2, a4
     26    assert  eq, a5, a6
     27    mul16u  a2, a2, a4
     28    assert  eq, a2, a6
     29    mul16u  a3, a4, a3
     30    assert  eq, a3, a6
     31test_end
     32
     33test mul16u_nn
     34    movi    a2, 0x137fa5a5
     35    mov     a3, a2
     36    movi    a4, 0xa5a5f731
     37    movi    a6, 0x9ff1e795
     38    mul16u  a5, a2, a4
     39    assert  eq, a5, a6
     40    mul16u  a2, a2, a4
     41    assert  eq, a2, a6
     42    mul16u  a3, a4, a3
     43    assert  eq, a3, a6
     44test_end
     45
     46test mul16s_pp
     47    movi    a2, 0x137f5a5a
     48    mov     a3, a2
     49    movi    a4, 0xa5a5137f
     50    movi    a6, 0x06e180a6
     51    mul16s  a5, a2, a4
     52    assert  eq, a5, a6
     53    mul16s  a2, a2, a4
     54    assert  eq, a2, a6
     55    mul16s  a3, a4, a3
     56    assert  eq, a3, a6
     57test_end
     58
     59test mul16s_np
     60    movi    a2, 0x137fa5a5
     61    mov     a3, a2
     62    movi    a4, 0xa5a5137f
     63    movi    a6, 0xf91e6bdb
     64    mul16s  a5, a2, a4
     65    assert  eq, a5, a6
     66    mul16s  a2, a2, a4
     67    assert  eq, a2, a6
     68    mul16s  a3, a4, a3
     69    assert  eq, a3, a6
     70test_end
     71
     72test mul16s_nn
     73    movi    a2, 0x137fa5a5
     74    mov     a3, a2
     75    movi    a4, 0xa5a5f731
     76    movi    a6, 0x031be795
     77    mul16s  a5, a2, a4
     78    assert  eq, a5, a6
     79    mul16s  a2, a2, a4
     80    assert  eq, a2, a6
     81    mul16s  a3, a4, a3
     82    assert  eq, a3, a6
     83test_end
     84
     85#endif
     86
     87test_suite_end