From: Sandipan Das Date: Sat, 6 Feb 2021 11:47:49 +0000 (+0530) Subject: arch-power: Add fields for VA form instructions X-Git-Tag: develop-gem5-snapshot~47 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=0f923de146f96322d5f17347fa4e05bac5a087c5;p=gem5.git arch-power: Add fields for VA form instructions This introduces the extended opcode field for VA form instructions and the RC field that specifes a GPR to be used as a register operand. Change-Id: Ibc63b7392cb552613c755463fb34f2ee2362b2b6 Signed-off-by: Sandipan Das --- diff --git a/src/arch/power/isa/bitfields.isa b/src/arch/power/isa/bitfields.isa index 84a3a2cfe..8783081e2 100644 --- a/src/arch/power/isa/bitfields.isa +++ b/src/arch/power/isa/bitfields.isa @@ -38,6 +38,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>; @@ -47,6 +48,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>; diff --git a/src/arch/power/isa/operands.isa b/src/arch/power/isa/operands.isa index 017469a01..bdd594843 100644 --- a/src/arch/power/isa/operands.isa +++ b/src/arch/power/isa/operands.isa @@ -44,7 +44,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),