mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2025-01-24 12:35:55 +08:00
52 lines
801 B
ArmAsm
52 lines
801 B
ArmAsm
|
# mips r6 test for forbidden slot behaviour
|
||
|
# mach: mips32r6 mips64r6
|
||
|
# as: -mabi=eabi
|
||
|
# ld: -N -Ttext=0x80010000
|
||
|
# output: *\\nReservedInstruction at PC = *\\nprogram stopped with signal 4 (Illegal instruction).\\n
|
||
|
# xerror:
|
||
|
|
||
|
.include "testutils.inc"
|
||
|
|
||
|
setup
|
||
|
|
||
|
.set noreorder
|
||
|
|
||
|
.ent DIAG
|
||
|
DIAG:
|
||
|
|
||
|
writemsg "[1] Test if FS is ignored when branch is taken"
|
||
|
li $4, 0
|
||
|
beqzalc $4, L1
|
||
|
bc L2
|
||
|
|
||
|
L2:
|
||
|
fail
|
||
|
|
||
|
L1:
|
||
|
writemsg "[2] Test if FS is used when branch is not taken"
|
||
|
li $4, 1
|
||
|
blezc $4, L3
|
||
|
addiu $4, $4, 1
|
||
|
li $2, 2
|
||
|
beq $4, $2, L4
|
||
|
|
||
|
L3:
|
||
|
nop
|
||
|
fail
|
||
|
|
||
|
L4:
|
||
|
writemsg "[3] Test if FS causes an error when it contains a branch"
|
||
|
li $4, 3
|
||
|
beqzalc $4, L6
|
||
|
bc L5
|
||
|
|
||
|
L5:
|
||
|
nop
|
||
|
fail
|
||
|
|
||
|
L6:
|
||
|
#There is no passing condition here, all routes to the end indicate failure
|
||
|
fail
|
||
|
|
||
|
.end DIAG
|