arch-power: Add fields for VA form instructions
authorSandipan Das <sandipan@linux.vnet.ibm.com>
Thu, 7 Jun 2018 06:25:23 +0000 (11:55 +0530)
committerSandipan Das <sandipan@linux.vnet.ibm.com>
Thu, 7 Jun 2018 06:26:20 +0000 (11:56 +0530)
This introduces the extended opcode field and the operand
field RC for VA form instructions.

Change-Id: I60d1bff6e7c7dd41e6fbe28a5f012b6fd66e7bc3
Signed-off-by: Sandipan Das <sandipan@linux.vnet.ibm.com>
src/arch/power/isa/bitfields.isa
src/arch/power/isa/operands.isa

index dcecdd40e35ae97c3a433ad60e310327932e87d0..d1aab2d4224b3ed38fee3a837c02c6049b16b581 100644 (file)
@@ -40,6 +40,7 @@ def bitfield PO            <31:26>;
 def bitfield A_XO          <5:1>;
 def bitfield DS_XO         <1:0>;
 def bitfield DX_XO         <5:1>;
+def bitfield VA_XO         <5:0>;
 def bitfield X_XO          <10:1>;
 def bitfield XFL_XO        <10:1>;
 def bitfield XFX_XO        <10:1>;
@@ -49,6 +50,7 @@ def bitfield XO_XO         <9:1>;
 // Register fields
 def bitfield RA            <20:16>;
 def bitfield RB            <15:11>;
+def bitfield RC            <10:6>;
 def bitfield RS            <25:21>;
 def bitfield RT            <25:21>;
 def bitfield FRA           <20:16>;
index c50c3e6fdbe93413581ef0d2a6506ae4d1475737..c2a45b94338ce85733b3b8596aa61c25d987f41e 100644 (file)
@@ -46,7 +46,8 @@ def operands {{
     'Rs': ('IntReg', 'ud', 'RS', 'IsInteger', 1),
     'Ra': ('IntReg', 'ud', 'RA', 'IsInteger', 2),
     'Rb': ('IntReg', 'ud', 'RB', 'IsInteger', 3),
-    'Rt': ('IntReg', 'ud', 'RT', 'IsInteger', 4),
+    'Rc': ('IntReg', 'ud', 'RC', 'IsInteger', 4),
+    'Rt': ('IntReg', 'ud', 'RT', 'IsInteger', 5),
 
     # General Purpose Floating Point Reg Operands
     'Fa': ('FloatReg', 'df', 'FRA', 'IsFloating', 1),