# sh testcase for tst.b #$imm8, @(r0, gbr) -*- Asm -*-
# mach: all
# as: -isa=shcompact
# ld: -m shelf32

	.include "compact/testutils.inc"

	start

	.global orb
init:
	# Init GBR and R0.
	mov #30, r0
	ldc r0, gbr	
	mov #40, r0

orb:
	tst.b #0, @(r0, gbr)
	bf wrong
	tst.b #170, @(r0, gbr)
	bf wrong
	tst.b #0, @(r0, gbr)
	bf wrong
	tst.b #255, @(r0, gbr)

okay:
	pass
wrong:
	fail
	
