OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-old/] [binutils-2.18.50/] [gas/] [testsuite/] [gas/] [m68hc11/] [bug-1825.s] - Rev 856

Go to most recent revision | Compare with Previous | Blame | View Log

;;; Bug #1825: gas assemble PC-relative indexed addressing modes incorrectly
;;; http://savannah.gnu.org/bugs/?func=detailbug&bug_id=1825&group_id=2424
;;; 
	.sect .text
	.globl _main
_main:
	nop
	ldx	L1,pc		; Assemble to 5-bit > 0 offset
	bra	L2
L1:
	.dc.w	0xaabb
L2:
	subd	L1,pc		; Assemble to 5-bit < 0 offset
L3:
	.ds.b	14, 0xA7
	ldab	L3,pc		; 5-bit < 0 offset
	ldab	L4,pc		; 5-bit > 0 offset
	.skip	15
L4:
	.skip	128
	subd	L4,pc		; 9-bit < 0 offset
	addd	L5,pc		; 9-bit > 0 offset
	.skip	128
L5:
	.skip	256-3
	orab	L5,pc		; 9 bit < 0 offset (min value)
	oraa	L6,pc		; 9 bit > 0 offset (max value)
	.skip	255
L6:
	.skip	256-2
	orab	L6,pc		; 16 bit < 0 offset
	anda	_main,pc	; 16 bit < 0 offset
	andb	L7,pc
	.skip	256
L7:
	stab	external,pc	; External 16-bit PCREL
	ldd	_table,pc
	addd	_table+2,pc
	subd	_table+4,pc
	addd	_table+8,pc
	addd	_table+12,pc
	addd	_table+16,pc
	rts
	nop
_table:
	.ds.b	16,0
	leax	_table,sp	; 16-bit absolute reloc
	leay	_table,x
	leax	_table,y
 

Go to most recent revision | Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.