| # fr30 testcase for int $u8 |
| # mach(): fr30 |
| |
| .include "testutils.inc" |
| |
| START |
| |
| .text |
| .global int |
| int: |
| ; Test int $u8 - setup and test an interrupt #0xfd (randomly chosen) |
| mvr_h_gr tbr,r7 |
| inci_h_gr 8,r7 |
| mvi_h_mem pass,r7 |
| mvi_h_gr doint,r9 |
| inci_h_gr 2,r9 |
| mvr_h_gr ssp,r10 |
| set_cc 0x0f ; Condition codes should not change |
| set_s_user ; Set opposite of expected |
| set_i 1 ; Set opposite of expected |
| mvr_h_gr ps,r8 |
| doint: int 0xfd |
| fail |
| |
| pass: |
| test_cc 1 1 1 1 |
| test_s_system |
| test_i 0 |
| inci_h_gr -4,r10 |
| testr_h_mem r8,r10 |
| inci_h_gr -4,r10 |
| testr_h_mem r9,r10 |
| testr_h_dr r10,ssp |
| |
| pass |