binutils-gdb/sim/testsuite/cris/hw/rv-n-cris/irq1.ms
Hans-Peter Nilsson 46f238477f sim/testsuite/cris/hw/rv-n-cris/irq1.ms: Disable due to randomness
For reasons that remain largely to be investigated (besides
the apparent lack of synchronization between two processes),
this test fails randomly, with two different sets of common
outputs.  Curiously, that doesn't happen for the other
similar tests.  There's a comment that mentions this, though
that doesn't make it a sustainable part of a test-suite.
(Known-blinking tests should be disabled until fixed.)

sim/testsuite/cris:
	* hw/rv-n-cris/irq1.ms: Disable by use of a never-matched
	"progos" value.
2022-02-14 23:50:42 +01:00

71 lines
1.3 KiB
Plaintext

#progos: nowhere:disabled-due-to-randomness
#mach: crisv10 crisv32
#sim(crisv10): --hw-device "/rv/trace? true"
#sim(crisv32): --hw-device "/rv/trace? true"
#output: /rv: WD\n
#output: /rv: REG R 0xd0000032\n
#output: /rv: := 0xabcdef01\n
#output: /rv: IRQ 0x4\n
#output: /rv: REG R 0xd0000036\n
#output: /rv: := 0x76543210\n
#output: /rv: REG R 0xd0000036\n
#output: /rv: := 0x76543211\n
#output: /rv: REG R 0xd0000030\n
#output: /rv: IRQ 0x0\n
#output: /rv: := 0xeeff4455\n
#output: pass\n
# Trivial test of interrupts.
# Locations of IRQ notifiers above depend on when the simulator is
# polled; adjustments may be needed (after checking that no poll is
# gone due to a bug!)
#r W,
#r r,a8832,abcdef01
#r I,4
#r r,a8836,76543210
#r r,a8836,76543211
#r I,0
#r r,a8830,eeff4455
.lcomm dummy,4
.include "testutils.inc"
start
.if ..asm.arch.cris.v32
move irqvec1,$ebp
.else
move irqvec1,$ibr
.endif
test_h_mem 0xabcdef01 0xd0000032
nop
nop
test_h_mem 0x76543210 0xd0000036
ei
test_h_mem 0,dummy
wouldreturnhere:
nop
killme:
fail
returnhere:
test_h_mem 0x76543211 0xd0000036
test_h_mem 0xeeff4455 0xd0000030
pass
irq0x33:
.if ..asm.arch.cris.v32
test_h_dr wouldreturnhere,$erp
move returnhere,$erp
rete
rfe
.else
move $dccr,$r0
test_h_dr wouldreturnhere,$irp
move returnhere,$irp
reti
move $r0,$dccr
.endif
singlevec irqvec1,0x33,irq0x33