summaryrefslogtreecommitdiff
path: root/opcodes/microblaze-dis.c
diff options
context:
space:
mode:
authorMichael Eager <eager@eagercon.com>2012-11-21 17:34:11 +0000
committerMichael Eager <eager@eagercon.com>2012-11-21 17:34:11 +0000
commitb66f7d905a679685476fbfbc793541adb8829a6c (patch)
treea57989c1048b5ba89d1530c0959dacee6fac25ec /opcodes/microblaze-dis.c
parentfafb357beaa81f02eb6e32c300f6d2fb2776c7d8 (diff)
downloadbinutils-redhat-b66f7d905a679685476fbfbc793541adb8829a6c.tar.gz
Add stack high register and stack low register for MicroBlaze
hardware assisted stack protection, stores stack low / stack high limits for detecting stack overflow / underflow binutils/opcodes * microblaze-opcm.h: Add REG_SLR_MASK, REG_SHR_MASK, REG_SHR and REG_SLR * microblaze-dis.c (get_field_special): Handle REG_SLR_MASK and REG_SHR_MASK binutils/gas * config/tc-microblaze.c (parse_reg): Parse REG_SLR, REG_SHR binutils/gas * gas/microblaze/allinsn.s: Test use of SHR, SLR * gas/microblaze/allinsn.d: Likewise
Diffstat (limited to 'opcodes/microblaze-dis.c')
-rw-r--r--opcodes/microblaze-dis.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/opcodes/microblaze-dis.c b/opcodes/microblaze-dis.c
index e204e36310..7e3a546ff8 100644
--- a/opcodes/microblaze-dis.c
+++ b/opcodes/microblaze-dis.c
@@ -139,6 +139,12 @@ get_field_special (long instr, struct op_code_struct * op)
case REG_TLBSX_MASK :
strcpy (spr, "tlbsx");
break;
+ case REG_SHR_MASK :
+ strcpy (spr, "shr");
+ break;
+ case REG_SLR_MASK :
+ strcpy (spr, "slr");
+ break;
default :
if (((((instr & IMM_MASK) >> IMM_LOW) ^ op->immval_mask) & 0xE000)
== REG_PVR_MASK)