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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-old/] [binutils-2.18.50/] [gas/] [testsuite/] [gas/] [arm/] [group-reloc-ldr.s] - Rev 816

Compare with Previous | Blame | View Log

@ Tests for LDR group relocations.
 
	.text
 
	.macro ldrtest load store sym offset
 
	\load	r0, [r0, #:pc_g0:(\sym \offset)]
	\load	r0, [r0, #:pc_g1:(\sym \offset)]
	\load	r0, [r0, #:pc_g2:(\sym \offset)]
	\load	r0, [r0, #:sb_g0:(\sym \offset)]
	\load	r0, [r0, #:sb_g1:(\sym \offset)]
	\load	r0, [r0, #:sb_g2:(\sym \offset)]
 
	\store	r0, [r0, #:pc_g0:(\sym \offset)]
	\store	r0, [r0, #:pc_g1:(\sym \offset)]
	\store	r0, [r0, #:pc_g2:(\sym \offset)]
	\store	r0, [r0, #:sb_g0:(\sym \offset)]
	\store	r0, [r0, #:sb_g1:(\sym \offset)]
	\store	r0, [r0, #:sb_g2:(\sym \offset)]
 
	.endm
 
@ LDR/STR/LDRB/STRB only have 12 bits available for the magnitude of the addend.
@ So these should all (just) work.
 
	ldrtest ldr str f "+ 4095"
	ldrtest ldrb strb f "+ 4095"
	ldrtest ldr str f "- 4095"
	ldrtest ldrb strb f "- 4095"
 
@ The same as the above, but for a local symbol.  These should not be
@ resolved by the assembler but instead left to the linker.
 
	ldrtest ldr str localsym "+ 4095"
	ldrtest ldrb strb localsym "+ 4095"
	ldrtest ldr str localsym "- 4095"
	ldrtest ldrb strb localsym "- 4095"
 
localsym:
	mov	r0, #0
 
 

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.