From 51534d7ab8c77fdf2af52f409cc4e348e4213bb7 Mon Sep 17 00:00:00 2001
From: John Darrington <john@darrington.wattle.id.au>
Date: Tue, 20 Nov 2018 18:50:30 +0100
Subject: [PATCH] S12Z: Add alias instructions BHS and BLO.

These are documented by NXP as alternative mnemonics for BCC and BCS
respectively.

gas/ChangeLog:

        * config/tc-s12z.c (opcodes): bhs, blo: New members.
	* testsuite/gas/s12z/bra.d: Add tests for aliases.
	* testsuite/gas/s12z/bra.s: Add tests for aliases.
---
 gas/ChangeLog                | 6 ++++++
 gas/config/tc-s12z.c         | 2 ++
 gas/testsuite/gas/s12z/bra.d | 6 ++++--
 gas/testsuite/gas/s12z/bra.s | 2 ++
 4 files changed, 14 insertions(+), 2 deletions(-)

diff --git a/gas/ChangeLog b/gas/ChangeLog
index 977d4bca5f3..c1d207df52f 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,9 @@
+2018-11-21 John Darrington <john@darrington.wattle.id.au>
+
+	* config/tc-s12z.c (opcodes): bhs, blo: New members.
+	* testsuite/gas/s12z/bra.d: Add tests for aliases.
+	* testsuite/gas/s12z/bra.s: Add tests for aliases.
+
 2018-11-13  Thomas Preud'homme  <thomas.preudhomme@arm.com>
 
 	* config/tc-arm.c (arm_archs): Reindent.
diff --git a/gas/config/tc-s12z.c b/gas/config/tc-s12z.c
index 9df86432a5f..10f79765829 100644
--- a/gas/config/tc-s12z.c
+++ b/gas/config/tc-s12z.c
@@ -3142,7 +3142,9 @@ static const struct instruction opcodes[] = {
   {"bhi", 1,   0x22,  rel, 0},
   {"bls", 1,   0x23,  rel, 0},
   {"bcc", 1,   0x24,  rel, 0},
+  {"bhs", 1,   0x24,  rel, 0}, /* Alias for bcc */
   {"bcs", 1,   0x25,  rel, 0},
+  {"blo", 1,   0x25,  rel, 0}, /* Alias for bcs */
   {"bne", 1,   0x26,  rel, 0},
   {"beq", 1,   0x27,  rel, 0},
   {"bvc", 1,   0x28,  rel, 0},
diff --git a/gas/testsuite/gas/s12z/bra.d b/gas/testsuite/gas/s12z/bra.d
index bc3d3595cab..0fae3ece7bd 100644
--- a/gas/testsuite/gas/s12z/bra.d
+++ b/gas/testsuite/gas/s12z/bra.d
@@ -30,5 +30,7 @@ Disassembly of section .text:
   27:	2d ff e8    	blt L4
   2a:	2e ff df    	bgt L3
   2d:	2f ff d3    	ble L1
-  30:	20 02       	bra \*\+2
-  32:	20 7c       	bra \*-4
+  30:	24 ff d3    	bcc L2
+  33:	25 ff d0    	bcs L2
+  36:	20 02       	bra \*\+2
+  38:	20 7c       	bra \*-4
diff --git a/gas/testsuite/gas/s12z/bra.s b/gas/testsuite/gas/s12z/bra.s
index a2528b39df3..c611a25519a 100644
--- a/gas/testsuite/gas/s12z/bra.s
+++ b/gas/testsuite/gas/s12z/bra.s
@@ -14,6 +14,8 @@ L4:	bcs L2
 	blt L4
 	bgt L3
 	ble L1
+	bhs L2
+	blo L2
 
 	bra *+2
 	bra *-4