mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2025-01-30 12:44:10 +08:00
105 lines
2.4 KiB
Plaintext
105 lines
2.4 KiB
Plaintext
|
#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 0xd0000036\n
|
||
|
#output: /rv: := 0x76543210\n
|
||
|
#output: /rv: DMA W 0x20020..0x20043\n
|
||
|
#output: /rv: 0x20020: 12 23 34 56\n
|
||
|
#output: /rv: 0x20024: 79 8a bd de\n
|
||
|
#output: /rv: 0x20028: fb ad ba db\n
|
||
|
#output: /rv: 0x2002c: ad 56 78 9a\n
|
||
|
#output: /rv: 0x20030: fd e1 23 45\n
|
||
|
#output: /rv: 0x20034: 66 54 32 1a\n
|
||
|
#output: /rv: 0x20038: ac cb be ed\n
|
||
|
#output: /rv: 0x2003c: db ed aa da\n
|
||
|
#output: /rv: 0x20040: 00 aa bb cc\n
|
||
|
#output: /rv: REG R 0xd0000038\n
|
||
|
#output: /rv: := 0x76543211\n
|
||
|
#output: /rv: DMA R 0x20000..0x20023\n
|
||
|
#output: /rv: 0x20000: aa 55 12 23\n
|
||
|
#output: /rv: 0x20004: 34 56 79 8a\n
|
||
|
#output: /rv: 0x20008: bd de fb ad\n
|
||
|
#output: /rv: 0x2000c: ba db ad 56\n
|
||
|
#output: /rv: 0x20010: 78 9a fd e1\n
|
||
|
#output: /rv: 0x20014: 23 45 66 54\n
|
||
|
#output: /rv: 0x20018: 32 1a ac cb\n
|
||
|
#output: /rv: 0x2001c: be ed db ed\n
|
||
|
#output: /rv: 0x20020: aa da 00 aa\n
|
||
|
#output: /rv: IRQ 0x8\n
|
||
|
#output: /rv: REG R 0xd0000038\n
|
||
|
#output: /rv: := 0x76543212\n
|
||
|
#output: pass\n
|
||
|
|
||
|
# This is a slight variation of mem1.ms just to trig the "buffer needs
|
||
|
# to be malloced for large request size" for the DMA request.
|
||
|
|
||
|
# 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,a8836,76543210
|
||
|
#r s,e020,12233456798abddefbadbadbad56789afde123456654321aaccbbeeddbedaada00aabbcc
|
||
|
#r r,a8838,76543211
|
||
|
#r l,e000,aa5512233456798abddefbadbadbad56789afde123456654321aaccbbeeddbedaada00aa
|
||
|
#r I,8
|
||
|
#r r,a8838,76543212
|
||
|
|
||
|
.include "testutils.inc"
|
||
|
start
|
||
|
test_h_mem 0x76543210 0xd0000036
|
||
|
|
||
|
move.d 0x2003f,$r1
|
||
|
move.d 0x10000,$r3
|
||
|
0:
|
||
|
test.b [$r1]
|
||
|
bne 1f
|
||
|
subq 1,$r3
|
||
|
bne 0b
|
||
|
nop
|
||
|
|
||
|
1:
|
||
|
test_h_mem 0x56342312 0x20020
|
||
|
test_h_mem 0xdebd8a79 0x20024
|
||
|
test_h_mem 0xdbbaadfb 0x20028
|
||
|
test_h_mem 0x9a7856ad 0x2002c
|
||
|
test_h_mem 0x4523e1fd 0x20030
|
||
|
test_h_mem 0x1a325466 0x20034
|
||
|
test_h_mem 0xedbecbac 0x20038
|
||
|
test_h_mem 0xdaaaeddb 0x2003c
|
||
|
test_h_mem 0xccbbaa00 0x20040
|
||
|
|
||
|
move.d 0x20020,$r0
|
||
|
move.d 0x20000,$r1
|
||
|
move.w 0x55aa,$r2
|
||
|
move.w $r2,[r1+]
|
||
|
.rept 9
|
||
|
move.d [$r0+],$r2
|
||
|
move.d $r2,[$r1+]
|
||
|
.endr
|
||
|
|
||
|
test_h_mem 0x76543211 0xd0000038
|
||
|
|
||
|
.if ..asm.arch.cris.v32
|
||
|
move irqvec1,$ebp
|
||
|
.else
|
||
|
move irqvec1,$ibr
|
||
|
.endif
|
||
|
ei
|
||
|
move.d 0x100000,$r9
|
||
|
0:
|
||
|
subq 1,$r9
|
||
|
bne 0b
|
||
|
nop
|
||
|
killme:
|
||
|
fail
|
||
|
|
||
|
irq0x34:
|
||
|
test_h_mem 0x76543212 0xd0000038
|
||
|
pass
|
||
|
|
||
|
.fill 65536*2+128,1,0
|
||
|
|
||
|
singlevec irqvec1,0x34,irq0x34
|