This is the mail archive of the binutils@sourceware.org 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]

[committed] MIPS16/opcodes: Make the handling of BREAK and SDBBP consistent


Disassemble the MIPS16 BREAK and SDBBP instruction's immediate operand 
in the hexadecimal rather than decimal numeral system and add respective 
operandless variants with an implicit 0 operand, making our handling of 
these instructions consistent with how we have processed their regular 
MIPS and microMIPS counterparts since forever.

	opcodes/
	* mips16-opc.c (decode_mips16_operand) <'6'>: Switch the operand
	type to hexadecimal.
	(mips16_opcodes): Add operandless "break" and "sdbbp" entries.

	binutils/
	* testsuite/binutils-all/mips/mips16-extend-insn.d: Adjust BREAK 
	and SDBBP disassembly.

	gas/
	* testsuite/gas/mips/mips16.d: Adjust BREAK disassembly.
	* testsuite/gas/mips/mips16-64@mips16.d: Likewise.
	* testsuite/gas/mips/mips16-64.d: Likewise.
	* testsuite/gas/mips/mips16-64@mips16-64.d: Likewise.
	* testsuite/gas/mips/mips16-macro.d: Likewise.
	* testsuite/gas/mips/mips16-64@mips16-macro.d: Likewise.
	* testsuite/gas/mips/mips16-sub.d: Likewise.
	* testsuite/gas/mips/mips16-32@mips16-sub.d: Likewise.
---
binutils-mips16-opcodes-break-code.diff
Index: binutils/binutils/testsuite/binutils-all/mips/mips16-extend-insn.d
===================================================================
--- binutils.orig/binutils/testsuite/binutils-all/mips/mips16-extend-insn.d	2017-03-01 02:39:39.000000000 +0000
+++ binutils/binutils/testsuite/binutils-all/mips/mips16-extend-insn.d	2017-05-10 01:10:56.569158148 +0100
@@ -215,7 +215,7 @@
 [0-9a-f]+ <[^>]*> f123      	extend	0x123
 [0-9a-f]+ <[^>]*> e8c0      	jalrc	s0
 [0-9a-f]+ <[^>]*> f123      	extend	0x123
-[0-9a-f]+ <[^>]*> e801      	sdbbp	0
+[0-9a-f]+ <[^>]*> e801      	sdbbp
 [0-9a-f]+ <[^>]*> f123      	extend	0x123
 [0-9a-f]+ <[^>]*> e802      	slt	s0,s0
 [0-9a-f]+ <[^>]*> f123      	extend	0x123
@@ -223,7 +223,7 @@
 [0-9a-f]+ <[^>]*> f123      	extend	0x123
 [0-9a-f]+ <[^>]*> e804      	sllv	s0,s0
 [0-9a-f]+ <[^>]*> f123      	extend	0x123
-[0-9a-f]+ <[^>]*> e805      	break	0
+[0-9a-f]+ <[^>]*> e805      	break
 [0-9a-f]+ <[^>]*> f123      	extend	0x123
 [0-9a-f]+ <[^>]*> e806      	srlv	s0,s0
 [0-9a-f]+ <[^>]*> f123      	extend	0x123
Index: binutils/gas/testsuite/gas/mips/mips16-32@mips16-sub.d
===================================================================
--- binutils.orig/gas/testsuite/gas/mips/mips16-32@mips16-sub.d	2017-05-10 00:12:27.652137231 +0100
+++ binutils/gas/testsuite/gas/mips/mips16-32@mips16-sub.d	2017-05-10 00:35:51.195127704 +0100
@@ -757,13 +757,13 @@
 [0-9a-f]+ <[^>]*> ea7d      	0xea7d
 [0-9a-f]+ <[^>]*> ea7e      	0xea7e
 [0-9a-f]+ <[^>]*> 2b01      	bnez	v1,000007d4 <insns2\+0xb4>
-[0-9a-f]+ <[^>]*> e8e5      	break	7
+[0-9a-f]+ <[^>]*> e8e5      	break	0x7
 [0-9a-f]+ <[^>]*> ea12      	mflo	v0
 [0-9a-f]+ <[^>]*> 6500      	nop
 [0-9a-f]+ <[^>]*> 6500      	nop
 [0-9a-f]+ <[^>]*> ea7f      	0xea7f
 [0-9a-f]+ <[^>]*> 2b01      	bnez	v1,000007e0 <insns2\+0xc0>
-[0-9a-f]+ <[^>]*> e8e5      	break	7
+[0-9a-f]+ <[^>]*> e8e5      	break	0x7
 [0-9a-f]+ <[^>]*> ea12      	mflo	v0
 [0-9a-f]+ <[^>]*> 6500      	nop
 [0-9a-f]+ <[^>]*> 6500      	nop
@@ -771,13 +771,13 @@
 [0-9a-f]+ <[^>]*> ea79      	multu	v0,v1
 [0-9a-f]+ <[^>]*> ea7a      	div	zero,v0,v1
 [0-9a-f]+ <[^>]*> 2b01      	bnez	v1,000007f0 <insns2\+0xd0>
-[0-9a-f]+ <[^>]*> e8e5      	break	7
+[0-9a-f]+ <[^>]*> e8e5      	break	0x7
 [0-9a-f]+ <[^>]*> ea12      	mflo	v0
 [0-9a-f]+ <[^>]*> 6500      	nop
 [0-9a-f]+ <[^>]*> 6500      	nop
 [0-9a-f]+ <[^>]*> ea7b      	divu	zero,v0,v1
 [0-9a-f]+ <[^>]*> 2b01      	bnez	v1,000007fc <insns2\+0xdc>
-[0-9a-f]+ <[^>]*> e8e5      	break	7
+[0-9a-f]+ <[^>]*> e8e5      	break	0x7
 [0-9a-f]+ <[^>]*> ea12      	mflo	v0
 [0-9a-f]+ <[^>]*> ea00      	jr	v0
 [0-9a-f]+ <[^>]*> 6500      	nop
@@ -805,9 +805,9 @@
 [0-9a-f]+ <[^>]*> 176f      	b	00000720 <insns2>
 [0-9a-f]+ <[^>]*> 1012      	b	00000868 <bar>
 [0-9a-f]+ <[^>]*> 1075      	b	00000930 <iuux>
-[0-9a-f]+ <[^>]*> e805      	break	0
-[0-9a-f]+ <[^>]*> e825      	break	1
-[0-9a-f]+ <[^>]*> efe5      	break	63
+[0-9a-f]+ <[^>]*> e805      	break
+[0-9a-f]+ <[^>]*> e825      	break	0x1
+[0-9a-f]+ <[^>]*> efe5      	break	0x3f
 [0-9a-f]+ <[^>]*> 1800 0000 	jal	00000000 <data1>
 [ 	]*[0-9a-f]+: R_MIPS16_26	extern
 [0-9a-f]+ <[^>]*> 6500      	nop
Index: binutils/gas/testsuite/gas/mips/mips16-64.d
===================================================================
--- binutils.orig/gas/testsuite/gas/mips/mips16-64.d	2017-05-10 00:12:27.664406590 +0100
+++ binutils/gas/testsuite/gas/mips/mips16-64.d	2017-05-10 00:35:51.207366368 +0100
@@ -614,21 +614,21 @@
  7cc:	ea7d      	dmultu	v0,v1
  7ce:	ea7e      	ddiv	zero,v0,v1
  7d0:	2b01      	bnez	v1,7d4 <insns2\+(0x|)b4>
- 7d2:	e8e5      	break	7
+ 7d2:	e8e5      	break	0x7
  7d4:	ea12      	mflo	v0
  7d6:	ea7f      	ddivu	zero,v0,v1
  7d8:	2b01      	bnez	v1,7dc <insns2\+(0x|)bc>
- 7da:	e8e5      	break	7
+ 7da:	e8e5      	break	0x7
  7dc:	ea12      	mflo	v0
  7de:	ea78      	mult	v0,v1
  7e0:	ea79      	multu	v0,v1
  7e2:	ea7a      	div	zero,v0,v1
  7e4:	2b01      	bnez	v1,7e8 <insns2\+(0x|)c8>
- 7e6:	e8e5      	break	7
+ 7e6:	e8e5      	break	0x7
  7e8:	ea12      	mflo	v0
  7ea:	ea7b      	divu	zero,v0,v1
  7ec:	2b01      	bnez	v1,7f0 <insns2\+(0x|)d0>
- 7ee:	e8e5      	break	7
+ 7ee:	e8e5      	break	0x7
  7f0:	ea12      	mflo	v0
  7f2:	ea80      	jrc	v0
  7f4:	e8a0      	jrc	ra
@@ -653,9 +653,9 @@
  828:	177b      	b	720 <insns2>
  82a:	1012      	b	850 <bar>
  82c:	1075      	b	918 <iuux>
- 82e:	e805      	break	0
- 830:	e825      	break	1
- 832:	efe5      	break	63
+ 82e:	e805      	break
+ 830:	e825      	break	0x1
+ 832:	efe5      	break	0x3f
  834:	1800 0000 	jal	0 <data1>
 			834: R_MIPS16_26	extern
 			834: R_MIPS_NONE	\*ABS\*
Index: binutils/gas/testsuite/gas/mips/mips16-64@mips16-64.d
===================================================================
--- binutils.orig/gas/testsuite/gas/mips/mips16-64@mips16-64.d	2017-05-10 00:12:27.681603272 +0100
+++ binutils/gas/testsuite/gas/mips/mips16-64@mips16-64.d	2017-05-10 00:35:51.219660774 +0100
@@ -614,13 +614,13 @@
  7cc:	ea7d      	dmultu	v0,v1
  7ce:	ea7e      	ddiv	zero,v0,v1
  7d0:	2b01      	bnez	v1,7d4 <insns2\+(0x|)b4>
- 7d2:	e8e5      	break	7
+ 7d2:	e8e5      	break	0x7
  7d4:	ea12      	mflo	v0
  7d6:	6500      	nop
  7d8:	6500      	nop
  7da:	ea7f      	ddivu	zero,v0,v1
  7dc:	2b01      	bnez	v1,7e0 <insns2\+(0x|)c0>
- 7de:	e8e5      	break	7
+ 7de:	e8e5      	break	0x7
  7e0:	ea12      	mflo	v0
  7e2:	6500      	nop
  7e4:	6500      	nop
@@ -628,13 +628,13 @@
  7e8:	ea79      	multu	v0,v1
  7ea:	ea7a      	div	zero,v0,v1
  7ec:	2b01      	bnez	v1,7f0 <insns2\+(0x|)d0>
- 7ee:	e8e5      	break	7
+ 7ee:	e8e5      	break	0x7
  7f0:	ea12      	mflo	v0
  7f2:	6500      	nop
  7f4:	6500      	nop
  7f6:	ea7b      	divu	zero,v0,v1
  7f8:	2b01      	bnez	v1,7fc <insns2\+(0x|)dc>
- 7fa:	e8e5      	break	7
+ 7fa:	e8e5      	break	0x7
  7fc:	ea12      	mflo	v0
  7fe:	ea00      	jr	v0
  800:	6500      	nop
@@ -662,9 +662,9 @@
  840:	176f      	b	720 <insns2>
  842:	1012      	b	868 <bar>
  844:	1075      	b	930 <iuux>
- 846:	e805      	break	0
- 848:	e825      	break	1
- 84a:	efe5      	break	63
+ 846:	e805      	break
+ 848:	e825      	break	0x1
+ 84a:	efe5      	break	0x3f
  84c:	1800 0000 	jal	0 <data1>
 			84c: R_MIPS16_26	extern
 			84c: R_MIPS_NONE	\*ABS\*
Index: binutils/gas/testsuite/gas/mips/mips16-64@mips16-macro.d
===================================================================
--- binutils.orig/gas/testsuite/gas/mips/mips16-64@mips16-macro.d	2017-05-10 00:12:27.691857066 +0100
+++ binutils/gas/testsuite/gas/mips/mips16-64@mips16-macro.d	2017-05-10 00:35:51.230013197 +0100
@@ -11,49 +11,49 @@
 [ 0-9a-f]+ <foo>:
 [ 0-9a-f]+:	eb9a      	div	\$0,\$3,\$4
 [ 0-9a-f]+:	2c01      	bnez	\$4,[0-9a-f]+ <[^>]*>
-[ 0-9a-f]+:	e8e5      	break	7
+[ 0-9a-f]+:	e8e5      	break	0x7
 [ 0-9a-f]+:	ea12      	mflo	\$2
 [ 0-9a-f]+:	6500      	nop
 [ 0-9a-f]+:	6500      	nop
 [ 0-9a-f]+:	ecbb      	divu	\$0,\$4,\$5
 [ 0-9a-f]+:	2d01      	bnez	\$5,[0-9a-f]+ <[^>]*>
-[ 0-9a-f]+:	e8e5      	break	7
+[ 0-9a-f]+:	e8e5      	break	0x7
 [ 0-9a-f]+:	eb12      	mflo	\$3
 [ 0-9a-f]+:	6500      	nop
 [ 0-9a-f]+:	6500      	nop
 [ 0-9a-f]+:	edde      	ddiv	\$0,\$5,\$6
 [ 0-9a-f]+:	2e01      	bnez	\$6,[0-9a-f]+ <[^>]*>
-[ 0-9a-f]+:	e8e5      	break	7
+[ 0-9a-f]+:	e8e5      	break	0x7
 [ 0-9a-f]+:	ec12      	mflo	\$4
 [ 0-9a-f]+:	6500      	nop
 [ 0-9a-f]+:	6500      	nop
 [ 0-9a-f]+:	eeff      	ddivu	\$0,\$6,\$7
 [ 0-9a-f]+:	2f01      	bnez	\$7,[0-9a-f]+ <[^>]*>
-[ 0-9a-f]+:	e8e5      	break	7
+[ 0-9a-f]+:	e8e5      	break	0x7
 [ 0-9a-f]+:	ed12      	mflo	\$5
 [ 0-9a-f]+:	6500      	nop
 [ 0-9a-f]+:	6500      	nop
 [ 0-9a-f]+:	ef1a      	div	\$0,\$7,\$16
 [ 0-9a-f]+:	2801      	bnez	\$16,[0-9a-f]+ <[^>]*>
-[ 0-9a-f]+:	e8e5      	break	7
+[ 0-9a-f]+:	e8e5      	break	0x7
 [ 0-9a-f]+:	ee10      	mfhi	\$6
 [ 0-9a-f]+:	6500      	nop
 [ 0-9a-f]+:	6500      	nop
 [ 0-9a-f]+:	ef3b      	divu	\$0,\$7,\$17
 [ 0-9a-f]+:	2901      	bnez	\$17,[0-9a-f]+ <[^>]*>
-[ 0-9a-f]+:	e8e5      	break	7
+[ 0-9a-f]+:	e8e5      	break	0x7
 [ 0-9a-f]+:	ee10      	mfhi	\$6
 [ 0-9a-f]+:	6500      	nop
 [ 0-9a-f]+:	6500      	nop
 [ 0-9a-f]+:	eb9e      	ddiv	\$0,\$3,\$4
 [ 0-9a-f]+:	2c01      	bnez	\$4,[0-9a-f]+ <[^>]*>
-[ 0-9a-f]+:	e8e5      	break	7
+[ 0-9a-f]+:	e8e5      	break	0x7
 [ 0-9a-f]+:	ea10      	mfhi	\$2
 [ 0-9a-f]+:	6500      	nop
 [ 0-9a-f]+:	6500      	nop
 [ 0-9a-f]+:	ecbf      	ddivu	\$0,\$4,\$5
 [ 0-9a-f]+:	2d01      	bnez	\$5,[0-9a-f]+ <[^>]*>
-[ 0-9a-f]+:	e8e5      	break	7
+[ 0-9a-f]+:	e8e5      	break	0x7
 [ 0-9a-f]+:	eb10      	mfhi	\$3
 [ 0-9a-f]+:	6500      	nop
 [ 0-9a-f]+:	6500      	nop
Index: binutils/gas/testsuite/gas/mips/mips16-64@mips16.d
===================================================================
--- binutils.orig/gas/testsuite/gas/mips/mips16-64@mips16.d	2017-05-10 00:12:27.701098820 +0100
+++ binutils/gas/testsuite/gas/mips/mips16-64@mips16.d	2017-05-10 00:35:51.240238531 +0100
@@ -614,13 +614,13 @@
  7cc:	ea7d      	dmultu	v0,v1
  7ce:	ea7e      	ddiv	zero,v0,v1
  7d0:	2b01      	bnez	v1,7d4 <insns2\+(0x|)b4>
- 7d2:	e8e5      	break	7
+ 7d2:	e8e5      	break	0x7
  7d4:	ea12      	mflo	v0
  7d6:	6500      	nop
  7d8:	6500      	nop
  7da:	ea7f      	ddivu	zero,v0,v1
  7dc:	2b01      	bnez	v1,7e0 <insns2\+(0x|)c0>
- 7de:	e8e5      	break	7
+ 7de:	e8e5      	break	0x7
  7e0:	ea12      	mflo	v0
  7e2:	6500      	nop
  7e4:	6500      	nop
@@ -628,13 +628,13 @@
  7e8:	ea79      	multu	v0,v1
  7ea:	ea7a      	div	zero,v0,v1
  7ec:	2b01      	bnez	v1,7f0 <insns2\+(0x|)d0>
- 7ee:	e8e5      	break	7
+ 7ee:	e8e5      	break	0x7
  7f0:	ea12      	mflo	v0
  7f2:	6500      	nop
  7f4:	6500      	nop
  7f6:	ea7b      	divu	zero,v0,v1
  7f8:	2b01      	bnez	v1,7fc <insns2\+(0x|)dc>
- 7fa:	e8e5      	break	7
+ 7fa:	e8e5      	break	0x7
  7fc:	ea12      	mflo	v0
  7fe:	ea00      	jr	v0
  800:	6500      	nop
@@ -662,9 +662,9 @@
  840:	176f      	b	720 <insns2>
  842:	1012      	b	868 <bar>
  844:	1075      	b	930 <iuux>
- 846:	e805      	break	0
- 848:	e825      	break	1
- 84a:	efe5      	break	63
+ 846:	e805      	break
+ 848:	e825      	break	0x1
+ 84a:	efe5      	break	0x3f
  84c:	1800 0000 	jal	0 <data1>
 			84c: R_MIPS16_26	extern
  850:	6500      	nop
Index: binutils/gas/testsuite/gas/mips/mips16-macro.d
===================================================================
--- binutils.orig/gas/testsuite/gas/mips/mips16-macro.d	2017-05-10 00:12:27.722456579 +0100
+++ binutils/gas/testsuite/gas/mips/mips16-macro.d	2017-05-10 00:35:51.252451087 +0100
@@ -10,35 +10,35 @@
 [ 0-9a-f]+ <foo>:
 [ 0-9a-f]+:	eb9a      	div	\$0,\$3,\$4
 [ 0-9a-f]+:	2c01      	bnez	\$4,[0-9a-f]+ <[^>]*>
-[ 0-9a-f]+:	e8e5      	break	7
+[ 0-9a-f]+:	e8e5      	break	0x7
 [ 0-9a-f]+:	ea12      	mflo	\$2
 [ 0-9a-f]+:	ecbb      	divu	\$0,\$4,\$5
 [ 0-9a-f]+:	2d01      	bnez	\$5,[0-9a-f]+ <[^>]*>
-[ 0-9a-f]+:	e8e5      	break	7
+[ 0-9a-f]+:	e8e5      	break	0x7
 [ 0-9a-f]+:	eb12      	mflo	\$3
 [ 0-9a-f]+:	edde      	ddiv	\$0,\$5,\$6
 [ 0-9a-f]+:	2e01      	bnez	\$6,[0-9a-f]+ <[^>]*>
-[ 0-9a-f]+:	e8e5      	break	7
+[ 0-9a-f]+:	e8e5      	break	0x7
 [ 0-9a-f]+:	ec12      	mflo	\$4
 [ 0-9a-f]+:	eeff      	ddivu	\$0,\$6,\$7
 [ 0-9a-f]+:	2f01      	bnez	\$7,[0-9a-f]+ <[^>]*>
-[ 0-9a-f]+:	e8e5      	break	7
+[ 0-9a-f]+:	e8e5      	break	0x7
 [ 0-9a-f]+:	ed12      	mflo	\$5
 [ 0-9a-f]+:	ef1a      	div	\$0,\$7,\$16
 [ 0-9a-f]+:	2801      	bnez	\$16,[0-9a-f]+ <[^>]*>
-[ 0-9a-f]+:	e8e5      	break	7
+[ 0-9a-f]+:	e8e5      	break	0x7
 [ 0-9a-f]+:	ee10      	mfhi	\$6
 [ 0-9a-f]+:	ef3b      	divu	\$0,\$7,\$17
 [ 0-9a-f]+:	2901      	bnez	\$17,[0-9a-f]+ <[^>]*>
-[ 0-9a-f]+:	e8e5      	break	7
+[ 0-9a-f]+:	e8e5      	break	0x7
 [ 0-9a-f]+:	ee10      	mfhi	\$6
 [ 0-9a-f]+:	eb9e      	ddiv	\$0,\$3,\$4
 [ 0-9a-f]+:	2c01      	bnez	\$4,[0-9a-f]+ <[^>]*>
-[ 0-9a-f]+:	e8e5      	break	7
+[ 0-9a-f]+:	e8e5      	break	0x7
 [ 0-9a-f]+:	ea10      	mfhi	\$2
 [ 0-9a-f]+:	ecbf      	ddivu	\$0,\$4,\$5
 [ 0-9a-f]+:	2d01      	bnez	\$5,[0-9a-f]+ <[^>]*>
-[ 0-9a-f]+:	e8e5      	break	7
+[ 0-9a-f]+:	e8e5      	break	0x7
 [ 0-9a-f]+:	eb10      	mfhi	\$3
 [ 0-9a-f]+:	edd9      	multu	\$5,\$6
 [ 0-9a-f]+:	ec12      	mflo	\$4
Index: binutils/gas/testsuite/gas/mips/mips16-sub.d
===================================================================
--- binutils.orig/gas/testsuite/gas/mips/mips16-sub.d	2017-05-10 00:12:27.741901351 +0100
+++ binutils/gas/testsuite/gas/mips/mips16-sub.d	2017-05-10 00:35:51.270906170 +0100
@@ -603,13 +603,13 @@
 [0-9a-f]+ <[^>]*> ea7d      	dmultu	v0,v1
 [0-9a-f]+ <[^>]*> ea7e      	ddiv	zero,v0,v1
 [0-9a-f]+ <[^>]*> 2b01      	bnez	v1,000007d4 <insns2\+0xb4>
-[0-9a-f]+ <[^>]*> e8e5      	break	7
+[0-9a-f]+ <[^>]*> e8e5      	break	0x7
 [0-9a-f]+ <[^>]*> ea12      	mflo	v0
 [0-9a-f]+ <[^>]*> 6500      	nop
 [0-9a-f]+ <[^>]*> 6500      	nop
 [0-9a-f]+ <[^>]*> ea7f      	ddivu	zero,v0,v1
 [0-9a-f]+ <[^>]*> 2b01      	bnez	v1,000007e0 <insns2\+0xc0>
-[0-9a-f]+ <[^>]*> e8e5      	break	7
+[0-9a-f]+ <[^>]*> e8e5      	break	0x7
 [0-9a-f]+ <[^>]*> ea12      	mflo	v0
 [0-9a-f]+ <[^>]*> 6500      	nop
 [0-9a-f]+ <[^>]*> 6500      	nop
@@ -617,13 +617,13 @@
 [0-9a-f]+ <[^>]*> ea79      	multu	v0,v1
 [0-9a-f]+ <[^>]*> ea7a      	div	zero,v0,v1
 [0-9a-f]+ <[^>]*> 2b01      	bnez	v1,000007f0 <insns2\+0xd0>
-[0-9a-f]+ <[^>]*> e8e5      	break	7
+[0-9a-f]+ <[^>]*> e8e5      	break	0x7
 [0-9a-f]+ <[^>]*> ea12      	mflo	v0
 [0-9a-f]+ <[^>]*> 6500      	nop
 [0-9a-f]+ <[^>]*> 6500      	nop
 [0-9a-f]+ <[^>]*> ea7b      	divu	zero,v0,v1
 [0-9a-f]+ <[^>]*> 2b01      	bnez	v1,000007fc <insns2\+0xdc>
-[0-9a-f]+ <[^>]*> e8e5      	break	7
+[0-9a-f]+ <[^>]*> e8e5      	break	0x7
 [0-9a-f]+ <[^>]*> ea12      	mflo	v0
 [0-9a-f]+ <[^>]*> ea00      	jr	v0
 [0-9a-f]+ <[^>]*> 6500      	nop
@@ -651,9 +651,9 @@
 [0-9a-f]+ <[^>]*> 176f      	b	00000720 <insns2>
 [0-9a-f]+ <[^>]*> 1012      	b	00000868 <bar>
 [0-9a-f]+ <[^>]*> 1075      	b	00000930 <iuux>
-[0-9a-f]+ <[^>]*> e805      	break	0
-[0-9a-f]+ <[^>]*> e825      	break	1
-[0-9a-f]+ <[^>]*> efe5      	break	63
+[0-9a-f]+ <[^>]*> e805      	break
+[0-9a-f]+ <[^>]*> e825      	break	0x1
+[0-9a-f]+ <[^>]*> efe5      	break	0x3f
 [0-9a-f]+ <[^>]*> 1800 0000 	jal	00000000 <data1>
 [ 	]*[0-9a-f]+: R_MIPS16_26	extern
 [0-9a-f]+ <[^>]*> 6500      	nop
Index: binutils/gas/testsuite/gas/mips/mips16.d
===================================================================
--- binutils.orig/gas/testsuite/gas/mips/mips16.d	2017-05-10 00:12:27.634845995 +0100
+++ binutils/gas/testsuite/gas/mips/mips16.d	2017-05-10 00:35:51.281222818 +0100
@@ -613,21 +613,21 @@
  7cc:	ea7d      	dmultu	v0,v1
  7ce:	ea7e      	ddiv	zero,v0,v1
  7d0:	2b01      	bnez	v1,7d4 <insns2\+(0x|)b4>
- 7d2:	e8e5      	break	7
+ 7d2:	e8e5      	break	0x7
  7d4:	ea12      	mflo	v0
  7d6:	ea7f      	ddivu	zero,v0,v1
  7d8:	2b01      	bnez	v1,7dc <insns2\+(0x|)bc>
- 7da:	e8e5      	break	7
+ 7da:	e8e5      	break	0x7
  7dc:	ea12      	mflo	v0
  7de:	ea78      	mult	v0,v1
  7e0:	ea79      	multu	v0,v1
  7e2:	ea7a      	div	zero,v0,v1
  7e4:	2b01      	bnez	v1,7e8 <insns2\+(0x|)c8>
- 7e6:	e8e5      	break	7
+ 7e6:	e8e5      	break	0x7
  7e8:	ea12      	mflo	v0
  7ea:	ea7b      	divu	zero,v0,v1
  7ec:	2b01      	bnez	v1,7f0 <insns2\+(0x|)d0>
- 7ee:	e8e5      	break	7
+ 7ee:	e8e5      	break	0x7
  7f0:	ea12      	mflo	v0
  7f2:	ea80      	jrc	v0
  7f4:	e8a0      	jrc	ra
@@ -652,9 +652,9 @@
  828:	177b      	b	720 <insns2>
  82a:	1012      	b	850 <bar>
  82c:	1075      	b	918 <iuux>
- 82e:	e805      	break	0
- 830:	e825      	break	1
- 832:	efe5      	break	63
+ 82e:	e805      	break
+ 830:	e825      	break	0x1
+ 832:	efe5      	break	0x3f
  834:	1800 0000 	jal	0 <data1>
 			834: R_MIPS16_26	extern
  838:	6500      	nop
Index: binutils/opcodes/mips16-opc.c
===================================================================
--- binutils.orig/opcodes/mips16-opc.c	2017-05-10 00:12:27.608416222 +0100
+++ binutils/opcodes/mips16-opc.c	2017-05-10 01:10:13.513126314 +0100
@@ -56,7 +56,7 @@ decode_mips16_operand (char type, bfd_bo
     case '2': HINT (3, 8);
     case '3': HINT (5, 16);
     case '4': HINT (3, 21);
-    case '6': UINT (6, 5);
+    case '6': HINT (6, 5);
 
     case 'L': SPECIAL (6, 5, ENTRY_EXIT_LIST);
     case 'M': SPECIAL (7, 0, SAVE_RESTORE_LIST);
@@ -230,6 +230,7 @@ const struct mips_opcode mips16_opcodes[
 {"bne",	    "x,y,p",	0, (int) M_BNE,		INSN_MACRO,		0,		I1,	0,	0 },
 {"bne",     "x,I,p",	0, (int) M_BNE_I,	INSN_MACRO,		0,		I1,	0,	0 },
 {"bnez",    "x,p",	0x2800, 0xf800,		RD_1,			CBR,		I1,	0,	0 },
+{"break",   "",		0xe805, 0xffff,		TRAP,			SH,		I1,	0,	0 },
 {"break",   "6",	0xe805, 0xf81f,		TRAP,			SH,		I1,	0,	0 },
 {"bteqz",   "p",	0x6000, 0xff00,		RD_T,			CBR,		I1,	0,	0 },
 {"btnez",   "p",	0x6100, 0xff00,		RD_T,			CBR,		I1,	0,	0 },
@@ -358,6 +359,7 @@ const struct mips_opcode mips16_opcodes[
   /* MIPS16e additions; see above for compact jumps.  */
 {"restore", "M",	0x6400, 0xff80,		WR_31|NODS,		MOD_SP,		I32,	0,	0 },
 {"save",    "m",	0x6480, 0xff80,		NODS,			RD_31|MOD_SP,	I32,	0,	0 },
+{"sdbbp",   "",		0xe801, 0xffff,		TRAP,			SH,		I32,	0,	0 },
 {"sdbbp",   "6",	0xe801, 0xf81f,		TRAP,			SH,		I32,	0,	0 },
 {"seb",	    "x",	0xe891, 0xf8ff,		MOD_1,			SH,		I32,	0,	0 },
 {"seh",	    "x",	0xe8b1, 0xf8ff,		MOD_1,			SH,		I32,	0,	0 },


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