File:  [Qemu by Fabrice Bellard] / qemu / tests / cris / check_clrjmp1.s
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Tue Apr 24 16:48:00 2018 UTC (8 years, 1 month ago) by root
Branches: qemu, MAIN
CVS tags: qemu1001, qemu1000, qemu0151, qemu0150, qemu0141, qemu0140, qemu0130, qemu0125, qemu0124, qemu0123, qemu0122, qemu0121, qemu0120, qemu0111, qemu0110, qemu0105, qemu0104, qemu0103, qemu0102, qemu0101, qemu0100, qemu0091, HEAD
qemu 0.9.1

# mach: crisv3 crisv8 crisv10 crisv32
# output: ffffff00\n

; A bug resulting in a non-effectual clear.b discovered running the GCC
; testsuite; jump actually wrote to p0.

 .include "testutils.inc"

 start
 jump 1f
 nop
 .p2align 8
1:
 move.d y,r4

 .if 0 ;0 == ..asm.arch.cris.v32
; There was a bug causing this insn to set special register p0
; (byte-clear) to 8 (low 8 bits of location after insn).
 jump [r4+]
 .endif

1:
 move.d 0f,r4

; The corresponding bug would cause this insn too, to set p0.
 jump r4
 nop
 quit
0:
 moveq -1,r3
 clear.b r3
 checkr3 ffffff00
 quit

y:
 .dword 1b

unix.superglobalmegacorp.com

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