Annotation of qemu/tests/xtensa/macros.inc, revision 1.1.1.1

1.1       root        1: .macro test_suite name
                      2: .data
                      3: status: .word result
                      4: result: .space 20
                      5: .text
                      6: .global main
                      7: .align 4
                      8: main:
                      9: .endm
                     10: 
                     11: .macro reset_ps
                     12:     movi    a2, 0x4000f
                     13:     wsr     a2, ps
                     14:     isync
                     15: .endm
                     16: 
                     17: .macro test_suite_end
                     18:     reset_ps
                     19:     movi    a0, status
                     20:     l32i    a2, a0, 0
                     21:     movi    a0, result
                     22:     sub     a2, a2, a0
                     23:     movi    a3, 0
                     24:     loopnez a2, 1f
                     25:     l8ui    a2, a0, 0
                     26:     or      a3, a3, a2
                     27:     addi    a0, a0, 1
                     28: 1:
                     29:     exit
                     30: .endm
                     31: 
                     32: .macro test name
                     33: .endm
                     34: 
                     35: .macro test_end
                     36: 99:
                     37:     reset_ps
                     38:     movi    a2, status
                     39:     l32i    a3, a2, 0
                     40:     addi    a3, a3, 1
                     41:     s32i    a3, a2, 0
                     42: .endm
                     43: 
                     44: .macro exit
                     45:     movi    a2, 1
                     46:     simcall
                     47: .endm
                     48: 
                     49: .macro test_fail
                     50:     movi    a2, status
                     51:     l32i    a2, a2, 0
                     52:     movi    a3, 1
                     53:     s8i     a3, a2, 0
                     54:     j       99f
                     55: .endm
                     56: 
                     57: .macro assert cond, arg1, arg2
                     58:     b\cond  \arg1, \arg2, 90f
                     59:     test_fail
                     60: 90:
                     61:     nop
                     62: .endm
                     63: 
                     64: .macro set_vector vector, addr
                     65:     movi    a2, handler_\vector
                     66:     movi    a3, \addr
                     67:     s32i    a3, a2, 0
                     68: .endm

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.