This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Fix opcode entries for h8sx move patterns


Some h8sx move operands were missing a NO_SYMBOLS flag, meaning that
references to external symbols were often too short.  For example:

        mov.l   #foo,er0

would use an 8-bit relocation if foo were external.

Patch tested on h8300-elf.  OK to install?

Richard


include/opcode/
	* h8300.h (IMM4_NS, IMM8_NS): New.
	(h8_opcodes): Replace IMM4 with IMM4_NS in mov.b and mov.w entries.
	Likewise IMM8 for mov.w and mov.l.  Likewise IMM16U for mov.l.

gas/testsuite
	* gas/h8300/h8sx_mov_imm.[sd]: New test.
	* gas/h8300/h8300.exp: Run it.

Index: include/opcode/h8300.h
===================================================================
RCS file: /cvs/src/src/include/opcode/h8300.h,v
retrieving revision 1.15
diff -c -d -p -F^\([(a-zA-Z0-9_]\|#define\) -r1.15 h8300.h
*** include/opcode/h8300.h	5 Jun 2003 18:47:12 -0000	1.15
--- include/opcode/h8300.h	9 Jun 2003 16:33:19 -0000
*************** enum h8_flags {
*** 130,135 ****
--- 130,137 ----
  
    IMM3NZ_NS =   IMM3NZ | NO_SYMBOLS,
    IMM2_NS =     IMM2 | NO_SYMBOLS,
+   IMM4_NS =	IMM4 | NO_SYMBOLS,
+   IMM8_NS =	IMM8 | NO_SYMBOLS,
    IMM16_NS =    IMM16 | NO_SYMBOLS,
    IMM16U_NS =   IMM16U | NO_SYMBOLS,
  
*************** struct h8_opcode h8_opcodes[] = 
*** 1441,1448 ****
  
  
    {O (O_MOV, SB), AV_H8,   2, "mov.b", {{IMM8, RD8,      E}}, {{0xF, RD8,            IMM8LIST,     E}}},
!   {O (O_MOV, SB), AV_H8SX, 0, "mov.b", {{IMM4, ABS16DST, E}}, {{0x6, 0xa, 0xd, IMM4, DSTABS16LIST, E}}},
!   {O (O_MOV, SB), AV_H8SX, 0, "mov.b", {{IMM4, ABS32DST, E}}, {{0x6, 0xa, 0xf, IMM4, DSTABS32LIST, E}}},
    MOVFROM_IMM8 (O (O_MOV, SB), PREFIX_017D, "mov.b", IMM8),
  
    {O (O_MOV, SB), AV_H8,   2,    "mov.b", {{RS8, RD8,     E}}, {{0x0, 0xC, RS8, RD8,    E}}},
--- 1443,1450 ----
  
  
    {O (O_MOV, SB), AV_H8,   2, "mov.b", {{IMM8, RD8,      E}}, {{0xF, RD8,            IMM8LIST,     E}}},
!   {O (O_MOV, SB), AV_H8SX, 0, "mov.b", {{IMM4_NS, ABS16DST, E}}, {{0x6, 0xa, 0xd, IMM4, DSTABS16LIST, E}}},
!   {O (O_MOV, SB), AV_H8SX, 0, "mov.b", {{IMM4_NS, ABS32DST, E}}, {{0x6, 0xa, 0xf, IMM4, DSTABS32LIST, E}}},
    MOVFROM_IMM8 (O (O_MOV, SB), PREFIX_017D, "mov.b", IMM8),
  
    {O (O_MOV, SB), AV_H8,   2,    "mov.b", {{RS8, RD8,     E}}, {{0x0, 0xC, RS8, RD8,    E}}},
*************** struct h8_opcode h8_opcodes[] = 
*** 1470,1479 ****
  
    {O (O_MOV, SW), AV_H8SX, 0, "mov.w", {{IMM3NZ_NS, RD16, E}}, {{0x0, 0xf, B30 | IMM3NZ, RD16,   E}}},
    {O (O_MOV, SW), AV_H8,   4, "mov.w", {{IMM16,     RD16, E}}, {{0x7, 0x9, 0x0, RD16, IMM16LIST, E}}},
!   {O (O_MOV, SW), AV_H8SX, 0, "mov.w", {{IMM4,  ABS16DST, E}}, {{0x6, 0xb, 0xd, IMM4, DSTABS16LIST, E}}},
!   {O (O_MOV, SW), AV_H8SX, 0, "mov.w", {{IMM4,  ABS32DST, E}}, {{0x6, 0xb, 0xf, IMM4, DSTABS32LIST, E}}},
  
!   MOVFROM_IMM8 (O (O_MOV, SW), PREFIX_015D,   "mov.w", IMM8),
    MOVFROM_IMM  (O (O_MOV, SW), PREFIX_7974,   "mov.w", IMM16, IMM16LIST),
  
    {O (O_MOV, SW), AV_H8,   2, "mov.w", {{RS16, RD16,      E}}, {{0x0, 0xD, RS16, RD16, E}}},
--- 1472,1481 ----
  
    {O (O_MOV, SW), AV_H8SX, 0, "mov.w", {{IMM3NZ_NS, RD16, E}}, {{0x0, 0xf, B30 | IMM3NZ, RD16,   E}}},
    {O (O_MOV, SW), AV_H8,   4, "mov.w", {{IMM16,     RD16, E}}, {{0x7, 0x9, 0x0, RD16, IMM16LIST, E}}},
!   {O (O_MOV, SW), AV_H8SX, 0, "mov.w", {{IMM4_NS,  ABS16DST, E}}, {{0x6, 0xb, 0xd, IMM4, DSTABS16LIST, E}}},
!   {O (O_MOV, SW), AV_H8SX, 0, "mov.w", {{IMM4_NS,  ABS32DST, E}}, {{0x6, 0xb, 0xf, IMM4, DSTABS32LIST, E}}},
  
!   MOVFROM_IMM8 (O (O_MOV, SW), PREFIX_015D,   "mov.w", IMM8_NS),
    MOVFROM_IMM  (O (O_MOV, SW), PREFIX_7974,   "mov.w", IMM16, IMM16LIST),
  
    {O (O_MOV, SW), AV_H8,   2, "mov.w", {{RS16, RD16,      E}}, {{0x0, 0xD, RS16, RD16, E}}},
*************** struct h8_opcode h8_opcodes[] = 
*** 1499,1506 ****
  
    {O (O_MOV, SL), AV_H8SX, 0, "mov.l", {{IMM3NZ_NS, RD32, E}}, {{0x0, 0xf, B31 | IMM3NZ, B31 | RD32, E}}},
  
!   MOVFROM_IMM8 (O (O_MOV, SL), PREFIX_010D, "mov.l", IMM8),
!   MOVFROM_IMM  (O (O_MOV, SL), PREFIX_7A7C, "mov.l", IMM16U, IMM16ULIST),
  
    {O (O_MOV, SL), AV_H8SX, 0, "mov.l", {{IMM16U_NS, RD32, E}}, {{0x7, 0xa, 0x0, B31 | RD32, IMM16ULIST, E}}},
    {O (O_MOV, SL), AV_H8H,  4, "mov.l", {{IMM32,     RD32, E}}, {{0x7, 0xa, 0x0, B30 | RD32, IMM32LIST,  E}}},
--- 1501,1508 ----
  
    {O (O_MOV, SL), AV_H8SX, 0, "mov.l", {{IMM3NZ_NS, RD32, E}}, {{0x0, 0xf, B31 | IMM3NZ, B31 | RD32, E}}},
  
!   MOVFROM_IMM8 (O (O_MOV, SL), PREFIX_010D, "mov.l", IMM8_NS),
!   MOVFROM_IMM  (O (O_MOV, SL), PREFIX_7A7C, "mov.l", IMM16U_NS, IMM16ULIST),
  
    {O (O_MOV, SL), AV_H8SX, 0, "mov.l", {{IMM16U_NS, RD32, E}}, {{0x7, 0xa, 0x0, B31 | RD32, IMM16ULIST, E}}},
    {O (O_MOV, SL), AV_H8H,  4, "mov.l", {{IMM32,     RD32, E}}, {{0x7, 0xa, 0x0, B30 | RD32, IMM32LIST,  E}}},
Index: gas/testsuite/gas/h8300/h8300.exp
===================================================================
RCS file: /cvs/src/src/gas/testsuite/gas/h8300/h8300.exp,v
retrieving revision 1.3
diff -c -d -p -F^\([(a-zA-Z0-9_]\|#define\) -r1.3 h8300.exp
*** gas/testsuite/gas/h8300/h8300.exp	30 Aug 2001 21:08:43 -0000	1.3
--- gas/testsuite/gas/h8300/h8300.exp	9 Jun 2003 16:33:19 -0000
*************** if [istarget h8300*-*-*] then {
*** 2167,2172 ****
--- 2167,2174 ----
  
      do_h8300h_mov32bug
  
+     run_dump_test h8sx_mov_imm
+ 
      # Now some random tests
      set svr4pic [expr [istarget *-*-elf*] || [istarget *-*-irix5*] ]
      set empic [expr [istarget *-*-ecoff*] || [istarget *-*-ultrix*] || [istarget *-*-irix\[1-4\]*] ]
*** /dev/null	Thu Apr 11 15:25:15 2002
--- gas/testsuite/gas/h8300/h8sx_mov_imm.d	Mon Jun  9 17:28:53 2003
***************
*** 0 ****
--- 1,293 ----
+ # objdump: -dr
+ 
+ .*: *file format elf32-h8300
+ 
+ Disassembly of section \.text:
+ 
+ .* <.*>:
+ .*:	fa 00 *	fa 00 * mov.b	#0x0,r2l
+ 			.*: R_H8_DIR8	foo
+ .*:	fa 00 *	fa 00 * mov.b	#0x0,r2l
+ 			.*: R_H8_DIR8	.L1
+ .*:	fa 00 *	fa 00 * mov.b	#0x0,r2l
+ 			.*: R_H8_DIR8	bar
+ .*:	01 7d 02 00 *	01 7d 02 00 * mov.b	#0x0,@r2
+ 			.*: R_H8_DIR8	foo
+ .*:	01 7d 02 00 *	01 7d 02 00 * mov.b	#0x0,@r2
+ 			.*: R_H8_DIR8	.L1
+ .*:	01 7d 02 00 *	01 7d 02 00 * mov.b	#0x0,@r2
+ 			.*: R_H8_DIR8	bar
+ .*:	01 7d b2 00 *	01 7d b2 00 * mov.b	#0x0,@-r2
+ 			.*: R_H8_DIR8	foo
+ .*:	01 7d 82 00 *	01 7d 82 00 * mov.b	#0x0,@r2\+
+ 			.*: R_H8_DIR8	.L1
+ .*:	01 7d a2 00 *	01 7d a2 00 * mov.b	#0x0,@r2-
+ 			.*: R_H8_DIR8	bar
+ .*:	01 7d 22 00 *	01 7d 22 00 * mov.b	#0x0,@\(0x2:2,r2\)
+ 			.*: R_H8_DIR8	foo
+ .*:	01 7d 22 00 *	01 7d 22 00 * mov.b	#0x0,@\(0x2:2,r2\)
+ 			.*: R_H8_DIR8	.L1
+ .*:	01 7d 22 00 *	01 7d 22 00 * mov.b	#0x0,@\(0x2:2,r2\)
+ 			.*: R_H8_DIR8	bar
+ .*:	01 7d c2 00 *	01 7d c2 00 00 10 * mov.b	#0x0,@\(0x10:16,r2\)
+ .*:	00 10 *
+ 			.*: R_H8_DIR8	foo
+ .*:	01 7d c2 00 *	01 7d c2 00 00 10 * mov.b	#0x0,@\(0x10:16,r2\)
+ .*:	00 10 *
+ 			.*: R_H8_DIR8	.L1
+ .*:	01 7d c2 00 *	01 7d c2 00 00 10 * mov.b	#0x0,@\(0x10:16,r2\)
+ .*:	00 10 *
+ 			.*: R_H8_DIR8	bar
+ .*:	01 7d d2 00 *	01 7d d2 00 00 10 * mov.b	#0x0,@\(0x10:16,r2l.b\)
+ .*:	00 10 *
+ 			.*: R_H8_DIR8	foo
+ .*:	01 7d e2 00 *	01 7d e2 00 00 10 * mov.b	#0x0,@\(0x10:16,r2.w\)
+ .*:	00 10 *
+ 			.*: R_H8_DIR8	.L1
+ .*:	01 7d f2 00 *	01 7d f2 00 00 10 * mov.b	#0x0,@\(0x10:16,er2.l\)
+ .*:	00 10 *
+ 			.*: R_H8_DIR8	bar
+ .*:	01 7d ca 00 *	01 7d ca 00 00 01 23 45 * mov.b	#0x0,@\(0x12345:32,r2\)
+ .*:	00 01 23 45 *
+ 			.*: R_H8_DIR8	foo
+ .*:	01 7d ca 00 *	01 7d ca 00 00 01 23 45 * mov.b	#0x0,@\(0x12345:32,r2\)
+ .*:	00 01 23 45 *
+ 			.*: R_H8_DIR8	.L1
+ .*:	01 7d ca 00 *	01 7d ca 00 00 01 23 45 * mov.b	#0x0,@\(0x12345:32,r2\)
+ .*:	00 01 23 45 *
+ 			.*: R_H8_DIR8	bar
+ .*:	01 7d da 00 *	01 7d da 00 00 01 23 45 * mov.b	#0x0,@\(0x12345:32,r2l.b\)
+ .*:	00 01 23 45 *
+ 			.*: R_H8_DIR8	foo
+ .*:	01 7d ea 00 *	01 7d ea 00 00 01 23 45 * mov.b	#0x0,@\(0x12345:32,r2.w\)
+ .*:	00 01 23 45 *
+ 			.*: R_H8_DIR8	.L1
+ .*:	01 7d fa 00 *	01 7d fa 00 00 01 23 45 * mov.b	#0x0,@\(0x12345:32,er2.l\)
+ .*:	00 01 23 45 *
+ 			.*: R_H8_DIR8	bar
+ .*:	01 7d 40 00 *	01 7d 40 00 80 00 * mov.b	#0x0,@0x8000:16
+ .*:	80 00 *
+ 			.*: R_H8_DIR8	foo
+ .*:	01 7d 40 00 *	01 7d 40 00 80 00 * mov.b	#0x0,@0x8000:16
+ .*:	80 00 *
+ 			.*: R_H8_DIR8	.L1
+ .*:	01 7d 40 00 *	01 7d 40 00 80 00 * mov.b	#0x0,@0x8000:16
+ .*:	80 00 *
+ 			.*: R_H8_DIR8	bar
+ .*:	01 7d 48 00 *	01 7d 48 00 00 01 80 00 * mov.b	#0x0,@0x18000:32
+ .*:	00 01 80 00 *
+ 			.*: R_H8_DIR8	foo
+ .*:	01 7d 48 00 *	01 7d 48 00 00 01 80 00 * mov.b	#0x0,@0x18000:32
+ .*:	00 01 80 00 *
+ 			.*: R_H8_DIR8	.L1
+ .*:	01 7d 48 00 *	01 7d 48 00 00 01 80 00 * mov.b	#0x0,@0x18000:32
+ .*:	00 01 80 00 *
+ 			.*: R_H8_DIR8	bar
+ .*:	79 02 00 00 *	79 02 00 00 * mov.w	#0x0,r2
+ 			.*: R_H8_DIR16	foo
+ .*:	79 02 00 00 *	79 02 00 00 * mov.w	#0x0,r2
+ 			.*: R_H8_DIR16	.L1
+ .*:	79 02 00 00 *	79 02 00 00 * mov.w	#0x0,r2
+ 			.*: R_H8_DIR16	bar
+ .*:	79 74 00 00 *	79 74 00 00 02 00 * mov.w	#0x0,@r2
+ .*:	02 00 *
+ 			.*: R_H8_DIR16	foo
+ .*:	79 74 00 00 *	79 74 00 00 02 00 * mov.w	#0x0,@r2
+ .*:	02 00 *
+ 			.*: R_H8_DIR16	.L1
+ .*:	79 74 00 00 *	79 74 00 00 02 00 * mov.w	#0x0,@r2
+ .*:	02 00 *
+ 			.*: R_H8_DIR16	bar
+ .*:	79 74 00 00 *	79 74 00 00 b2 00 * mov.w	#0x0,@-r2
+ .*:	b2 00 *
+ 			.*: R_H8_DIR16	foo
+ .*:	79 74 00 00 *	79 74 00 00 82 00 * mov.w	#0x0,@r2\+
+ .*:	82 00 *
+ 			.*: R_H8_DIR16	.L1
+ .*:	79 74 00 00 *	79 74 00 00 a2 00 * mov.w	#0x0,@r2-
+ .*:	a2 00 *
+ 			.*: R_H8_DIR16	bar
+ .*:	79 74 00 00 *	79 74 00 00 22 00 * mov.w	#0x0,@\(0x4:2,r2\)
+ .*:	22 00 *
+ 			.*: R_H8_DIR16	foo
+ .*:	79 74 00 00 *	79 74 00 00 22 00 * mov.w	#0x0,@\(0x4:2,r2\)
+ .*:	22 00 *
+ 			.*: R_H8_DIR16	.L1
+ .*:	79 74 00 00 *	79 74 00 00 22 00 * mov.w	#0x0,@\(0x4:2,r2\)
+ .*:	22 00 *
+ 			.*: R_H8_DIR16	bar
+ .*:	79 74 00 00 *	79 74 00 00 c2 00 00 10 * mov.w	#0x0,@\(0x10:16,r2\)
+ .*:	c2 00 00 10 *
+ 			.*: R_H8_DIR16	foo
+ .*:	79 74 00 00 *	79 74 00 00 c2 00 00 10 * mov.w	#0x0,@\(0x10:16,r2\)
+ .*:	c2 00 00 10 *
+ 			.*: R_H8_DIR16	.L1
+ .*:	79 74 00 00 *	79 74 00 00 c2 00 00 10 * mov.w	#0x0,@\(0x10:16,r2\)
+ .*:	c2 00 00 10 *
+ 			.*: R_H8_DIR16	bar
+ .*:	79 74 00 00 *	79 74 00 00 d2 00 00 10 * mov.w	#0x0,@\(0x10:16,r2l.b\)
+ .*:	d2 00 00 10 *
+ 			.*: R_H8_DIR16	foo
+ .*:	79 74 00 00 *	79 74 00 00 e2 00 00 10 * mov.w	#0x0,@\(0x10:16,r2.w\)
+ .*:	e2 00 00 10 *
+ 			.*: R_H8_DIR16	.L1
+ .*:	79 74 00 00 *	79 74 00 00 f2 00 00 10 * mov.w	#0x0,@\(0x10:16,er2.l\)
+ .*:	f2 00 00 10 *
+ 			.*: R_H8_DIR16	bar
+ .*:	79 74 00 00 *	79 74 00 00 ca 00 00 01 23 45 * mov.w	#0x0,@\(0x12345:32,r2\)
+ .*:	ca 00 00 01 *
+ .*:	23 45 *
+ 			.*: R_H8_DIR16	foo
+ .*:	79 74 00 00 *	79 74 00 00 ca 00 00 01 23 45 * mov.w	#0x0,@\(0x12345:32,r2\)
+ .*:	ca 00 00 01 *
+ .*:	23 45 *
+ 			.*: R_H8_DIR16	.L1
+ .*:	79 74 00 00 *	79 74 00 00 ca 00 00 01 23 45 * mov.w	#0x0,@\(0x12345:32,r2\)
+ .*:	ca 00 00 01 *
+ .*:	23 45 *
+ 			.*: R_H8_DIR16	bar
+ .*:	79 74 00 00 *	79 74 00 00 da 00 00 01 23 45 * mov.w	#0x0,@\(0x12345:32,r2l.b\)
+ .*:	da 00 00 01 *
+ .*:	23 45 *
+ 			.*: R_H8_DIR16	foo
+ .*:	79 74 00 00 *	79 74 00 00 ea 00 00 01 23 45 * mov.w	#0x0,@\(0x12345:32,r2.w\)
+ .*:	ea 00 00 01 *
+ .*:	23 45 *
+ 			.*: R_H8_DIR16	.L1
+ .*:	79 74 00 00 *	79 74 00 00 fa 00 00 01 23 45 * mov.w	#0x0,@\(0x12345:32,er2.l\)
+ .*:	fa 00 00 01 *
+ .*:	23 45 *
+ 			.*: R_H8_DIR16	bar
+ .*:	79 74 00 00 *	79 74 00 00 40 00 80 00 * mov.w	#0x0,@0x8000:16
+ .*:	40 00 80 00 *
+ 			.*: R_H8_DIR16	foo
+ .*:	79 74 00 00 *	79 74 00 00 40 00 80 00 * mov.w	#0x0,@0x8000:16
+ .*:	40 00 80 00 *
+ 			.*: R_H8_DIR16	.L1
+ .*:	79 74 00 00 *	79 74 00 00 40 00 80 00 * mov.w	#0x0,@0x8000:16
+ .*:	40 00 80 00 *
+ 			.*: R_H8_DIR16	bar
+ .*:	79 74 00 00 *	79 74 00 00 48 00 00 01 80 00 * mov.w	#0x0,@0x18000:32
+ .*:	48 00 00 01 *
+ .*:	80 00 *
+ 			.*: R_H8_DIR16	foo
+ .*:	79 74 00 00 *	79 74 00 00 48 00 00 01 80 00 * mov.w	#0x0,@0x18000:32
+ .*:	48 00 00 01 *
+ .*:	80 00 *
+ 			.*: R_H8_DIR16	.L1
+ .*:	79 74 00 00 *	79 74 00 00 48 00 00 01 80 00 * mov.w	#0x0,@0x18000:32
+ .*:	48 00 00 01 *
+ .*:	80 00 *
+ 			.*: R_H8_DIR16	bar
+ 
+ .* <.*>:
+ .*:	7a 02 00 00 *	7a 02 00 00 00 00 * mov.l	#0x0,er2
+ .*:	00 00 *
+ 			.*: R_H8_DIR32	foo
+ .*:	7a 02 00 00 *	7a 02 00 00 00 00 * mov.l	#0x0,er2
+ .*:	00 00 *
+ 			.*: R_H8_DIR32	.L1
+ .*:	7a 02 00 00 *	7a 02 00 00 00 00 * mov.l	#0x0,er2
+ .*:	00 00 *
+ 			.*: R_H8_DIR32	bar
+ .*:	7a 74 00 00 *	7a 74 00 00 00 00 02 00 * mov.l	#0x0,@r2
+ .*:	00 00 02 00 *
+ 			.*: R_H8_DIR32	foo
+ .*:	7a 74 00 00 *	7a 74 00 00 00 00 02 00 * mov.l	#0x0,@r2
+ .*:	00 00 02 00 *
+ 			.*: R_H8_DIR32	.L1
+ .*:	7a 74 00 00 *	7a 74 00 00 00 00 02 00 * mov.l	#0x0,@r2
+ .*:	00 00 02 00 *
+ 			.*: R_H8_DIR32	bar
+ .*:	7a 74 00 00 *	7a 74 00 00 00 00 b2 00 * mov.l	#0x0,@-r2
+ .*:	00 00 b2 00 *
+ 			.*: R_H8_DIR32	foo
+ .*:	7a 74 00 00 *	7a 74 00 00 00 00 82 00 * mov.l	#0x0,@r2\+
+ .*:	00 00 82 00 *
+ 			.*: R_H8_DIR32	.L1
+ .*:	7a 74 00 00 *	7a 74 00 00 00 00 a2 00 * mov.l	#0x0,@r2-
+ .*:	00 00 a2 00 *
+ 			.*: R_H8_DIR32	bar
+ .*:	7a 74 00 00 *	7a 74 00 00 00 00 22 00 * mov.l	#0x0,@\(0x8:2,r2\)
+ .*:	00 00 22 00 *
+ 			.*: R_H8_DIR32	foo
+ .*:	7a 74 00 00 *	7a 74 00 00 00 00 22 00 * mov.l	#0x0,@\(0x8:2,r2\)
+ .*:	00 00 22 00 *
+ 			.*: R_H8_DIR32	.L1
+ .*:	7a 74 00 00 *	7a 74 00 00 00 00 22 00 * mov.l	#0x0,@\(0x8:2,r2\)
+ .*:	00 00 22 00 *
+ 			.*: R_H8_DIR32	bar
+ .*:	7a 74 00 00 *	7a 74 00 00 00 00 c2 00 00 10 * mov.l	#0x0,@\(0x10:16,r2\)
+ .*:	00 00 c2 00 *
+ .*:	00 10 *
+ 			.*: R_H8_DIR32	foo
+ .*:	7a 74 00 00 *	7a 74 00 00 00 00 c2 00 00 10 * mov.l	#0x0,@\(0x10:16,r2\)
+ .*:	00 00 c2 00 *
+ .*:	00 10 *
+ 			.*: R_H8_DIR32	.L1
+ .*:	7a 74 00 00 *	7a 74 00 00 00 00 c2 00 00 10 * mov.l	#0x0,@\(0x10:16,r2\)
+ .*:	00 00 c2 00 *
+ .*:	00 10 *
+ 			.*: R_H8_DIR32	bar
+ .*:	7a 74 00 00 *	7a 74 00 00 00 00 d2 00 00 10 * mov.l	#0x0,@\(0x10:16,r2l.b\)
+ .*:	00 00 d2 00 *
+ .*:	00 10 *
+ 			.*: R_H8_DIR32	foo
+ .*:	7a 74 00 00 *	7a 74 00 00 00 00 e2 00 00 10 * mov.l	#0x0,@\(0x10:16,r2.w\)
+ .*:	00 00 e2 00 *
+ .*:	00 10 *
+ 			.*: R_H8_DIR32	.L1
+ .*:	7a 74 00 00 *	7a 74 00 00 00 00 f2 00 00 10 * mov.l	#0x0,@\(0x10:16,er2.l\)
+ .*:	00 00 f2 00 *
+ .*:	00 10 *
+ 			.*: R_H8_DIR32	bar
+ .*:	7a 74 00 00 *	7a 74 00 00 00 00 ca 00 00 01 23 45 * mov.l	#0x0,@\(0x12345:32,r2\)
+ .*:	00 00 ca 00 *
+ .*:	00 01 23 45 *
+ 			.*: R_H8_DIR32	foo
+ .*:	7a 74 00 00 *	7a 74 00 00 00 00 ca 00 00 01 23 45 * mov.l	#0x0,@\(0x12345:32,r2\)
+ .*:	00 00 ca 00 *
+ .*:	00 01 23 45 *
+ 			.*: R_H8_DIR32	.L1
+ .*:	7a 74 00 00 *	7a 74 00 00 00 00 ca 00 00 01 23 45 * mov.l	#0x0,@\(0x12345:32,r2\)
+ .*:	00 00 ca 00 *
+ .*:	00 01 23 45 *
+ 			.*: R_H8_DIR32	bar
+ .*:	7a 74 00 00 *	7a 74 00 00 00 00 da 00 00 01 23 45 * mov.l	#0x0,@\(0x12345:32,r2l.b\)
+ .*:	00 00 da 00 *
+ .*:	00 01 23 45 *
+ 			.*: R_H8_DIR32	foo
+ .*:	7a 74 00 00 *	7a 74 00 00 00 00 ea 00 00 01 23 45 * mov.l	#0x0,@\(0x12345:32,r2.w\)
+ .*:	00 00 ea 00 *
+ .*:	00 01 23 45 *
+ 			.*: R_H8_DIR32	.L1
+ .*:	7a 74 00 00 *	7a 74 00 00 00 00 fa 00 00 01 23 45 * mov.l	#0x0,@\(0x12345:32,er2.l\)
+ .*:	00 00 fa 00 *
+ .*:	00 01 23 45 *
+ 			.*: R_H8_DIR32	bar
+ .*:	7a 74 00 00 *	7a 74 00 00 00 00 40 00 80 00 * mov.l	#0x0,@0x8000:16
+ .*:	00 00 40 00 *
+ .*:	80 00 *
+ 			.*: R_H8_DIR32	foo
+ .*:	7a 74 00 00 *	7a 74 00 00 00 00 40 00 80 00 * mov.l	#0x0,@0x8000:16
+ .*:	00 00 40 00 *
+ .*:	80 00 *
+ 			.*: R_H8_DIR32	.L1
+ .*:	7a 74 00 00 *	7a 74 00 00 00 00 40 00 80 00 * mov.l	#0x0,@0x8000:16
+ .*:	00 00 40 00 *
+ .*:	80 00 *
+ 			.*: R_H8_DIR32	bar
+ .*:	7a 74 00 00 *	7a 74 00 00 00 00 48 00 00 01 80 00 * mov.l	#0x0,@0x18000:32
+ .*:	00 00 48 00 *
+ .*:	00 01 80 00 *
+ 			.*: R_H8_DIR32	foo
+ .*:	7a 74 00 00 *	7a 74 00 00 00 00 48 00 00 01 80 00 * mov.l	#0x0,@0x18000:32
+ .*:	00 00 48 00 *
+ .*:	00 01 80 00 *
+ 			.*: R_H8_DIR32	.L1
+ .*:	7a 74 00 00 *	7a 74 00 00 00 00 48 00 00 01 80 00 * mov.l	#0x0,@0x18000:32
+ .*:	00 00 48 00 *
+ .*:	00 01 80 00 *
+ 			.*: R_H8_DIR32	bar
+ .* <.*>:
+ 	\.\.\.
*** /dev/null	Thu Apr 11 15:25:15 2002
--- gas/testsuite/gas/h8300/h8sx_mov_imm.s	Mon Jun  9 17:28:53 2003
***************
*** 0 ****
--- 1,98 ----
+ 	.h8300sx
+ 	mov.b	#foo,r2l
+ 	mov.b	#.L1,r2l
+ 	mov.b	#bar,r2l
+ 	mov.b	#foo,@er2
+ 	mov.b	#.L1,@er2
+ 	mov.b	#bar,@er2
+ 	mov.b	#foo,@-er2
+ 	mov.b	#.L1,@er2+
+ 	mov.b	#bar,@er2-
+ 	mov.b	#foo,@(2,er2)
+ 	mov.b	#.L1,@(2,er2)
+ 	mov.b	#bar,@(2,er2)
+ 	mov.b	#foo,@(16,er2)
+ 	mov.b	#.L1,@(16,er2)
+ 	mov.b	#bar,@(16,er2)
+ 	mov.b	#foo,@(16,r2l.b)
+ 	mov.b	#.L1,@(16,r2.w)
+ 	mov.b	#bar,@(16,er2.l)
+ 	mov.b	#foo,@(0x12345,er2)
+ 	mov.b	#.L1,@(0x12345,er2)
+ 	mov.b	#bar,@(0x12345,er2)
+ 	mov.b	#foo,@(0x12345,r2l.b)
+ 	mov.b	#.L1,@(0x12345,r2.w)
+ 	mov.b	#bar,@(0x12345,er2.l)
+ 	mov.b	#foo,@0xffff8000
+ 	mov.b	#.L1,@0xffff8000
+ 	mov.b	#bar,@0xffff8000
+ 	mov.b	#foo,@0x18000
+ 	mov.b	#.L1,@0x18000
+ 	mov.b	#bar,@0x18000
+ 
+ 	mov.w	#foo,r2
+ 	mov.w	#.L1,r2
+ 	mov.w	#bar,r2
+ 	mov.w	#foo,@er2
+ 	mov.w	#.L1,@er2
+ 	mov.w	#bar,@er2
+ 	mov.w	#foo,@-er2
+ 	mov.w	#.L1,@er2+
+ 	mov.w	#bar,@er2-
+ 	mov.w	#foo,@(4,er2)
+ 	mov.w	#.L1,@(4,er2)
+ 	mov.w	#bar,@(4,er2)
+ 	mov.w	#foo,@(16,er2)
+ 	mov.w	#.L1,@(16,er2)
+ 	mov.w	#bar,@(16,er2)
+ 	mov.w	#foo,@(16,r2l.b)
+ 	mov.w	#.L1,@(16,r2.w)
+ 	mov.w	#bar,@(16,er2.l)
+ 	mov.w	#foo,@(0x12345,er2)
+ 	mov.w	#.L1,@(0x12345,er2)
+ 	mov.w	#bar,@(0x12345,er2)
+ 	mov.w	#foo,@(0x12345,r2l.b)
+ 	mov.w	#.L1,@(0x12345,r2.w)
+ 	mov.w	#bar,@(0x12345,er2.l)
+ 	mov.w	#foo,@0xffff8000
+ 	mov.w	#.L1,@0xffff8000
+ 	mov.w	#bar,@0xffff8000
+ 	mov.w	#foo,@0x18000
+ 	mov.w	#.L1,@0x18000
+ 	mov.w	#bar,@0x18000
+ 
+ .L1:
+ 	mov.l	#foo,er2
+ 	mov.l	#.L1,er2
+ 	mov.l	#bar,er2
+ 	mov.l	#foo,@er2
+ 	mov.l	#.L1,@er2
+ 	mov.l	#bar,@er2
+ 	mov.l	#foo,@-er2
+ 	mov.l	#.L1,@er2+
+ 	mov.l	#bar,@er2-
+ 	mov.l	#foo,@(8,er2)
+ 	mov.l	#.L1,@(8,er2)
+ 	mov.l	#bar,@(8,er2)
+ 	mov.l	#foo,@(16,er2)
+ 	mov.l	#.L1,@(16,er2)
+ 	mov.l	#bar,@(16,er2)
+ 	mov.l	#foo,@(16,r2l.b)
+ 	mov.l	#.L1,@(16,r2.w)
+ 	mov.l	#bar,@(16,er2.l)
+ 	mov.l	#foo,@(0x12345,er2)
+ 	mov.l	#.L1,@(0x12345,er2)
+ 	mov.l	#bar,@(0x12345,er2)
+ 	mov.l	#foo,@(0x12345,r2l.b)
+ 	mov.l	#.L1,@(0x12345,r2.w)
+ 	mov.l	#bar,@(0x12345,er2.l)
+ 	mov.l	#foo,@0xffff8000
+ 	mov.l	#.L1,@0xffff8000
+ 	mov.l	#bar,@0xffff8000
+ 	mov.l	#foo,@0x18000
+ 	mov.l	#.L1,@0x18000
+ 	mov.l	#bar,@0x18000
+ 
+ 	.globl	bar
+ bar:
+ 	.space	16


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]