From: Luke Kenneth Casson Leighton Date: Wed, 23 Dec 2020 23:54:08 +0000 (+0000) Subject: updating sv_analys.py svp64 table X-Git-Tag: convert-csv-opcode-to-binary~994 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=0ff049d5da1a386bbc09743ef989102a5745f054;p=libreriscv.git updating sv_analys.py svp64 table --- diff --git a/openpower/opcode_regs_deduped.mdwn b/openpower/opcode_regs_deduped.mdwn index 78c3993fc..06d169ae8 100644 --- a/openpower/opcode_regs_deduped.mdwn +++ b/openpower/opcode_regs_deduped.mdwn @@ -791,13 +791,13 @@ nego | 2P | EXTRA3 | d:RT | s:RA | | | RA | NONE | NONE | RT | NONE | NONE | [[!table data=""" insn | Ptype | Etype | 0 | 1 | 2 | 3 | -addic | 2P | EXTRA3 | TODO | | | | RA | | NONE | RT | NONE | NONE | -addi | 2P | EXTRA3 | TODO | | | | RA_OR_ZERO | | NONE | RT | NONE | NONE | -addis | 2P | EXTRA3 | TODO | | | | RA_OR_ZERO | | NONE | RT | NONE | NONE | -ori | 2P | EXTRA3 | TODO | | | | RS | | NONE | RA | NONE | NONE | -oris | 2P | EXTRA3 | TODO | | | | RS | | NONE | RA | NONE | NONE | -xori | 2P | EXTRA3 | TODO | | | | RS | | NONE | RA | NONE | NONE | -xoris | 2P | EXTRA3 | TODO | | | | RS | | NONE | RA | NONE | NONE | +addic | 2P | EXTRA3 | d:RT | s:RA | | | RA | | NONE | RT | NONE | NONE | +addi | 2P | EXTRA3 | d:RT | s:RA | | | RA_OR_ZERO | | NONE | RT | NONE | NONE | +addis | 2P | EXTRA3 | d:RT | s:RA | | | RA_OR_ZERO | | NONE | RT | NONE | NONE | +ori | 2P | EXTRA3 | d:RS | s:RA | | | RS | | NONE | RA | NONE | NONE | +oris | 2P | EXTRA3 | d:RS | s:RA | | | RS | | NONE | RA | NONE | NONE | +xori | 2P | EXTRA3 | d:RS | s:RA | | | RS | | NONE | RA | NONE | NONE | +xoris | 2P | EXTRA3 | d:RS | s:RA | | | RS | | NONE | RA | NONE | NONE | subfic | 2P | EXTRA3 | TODO | | | | RA | | NONE | RT | NONE | NONE | """]] diff --git a/openpower/sv_analysis.py b/openpower/sv_analysis.py index 3a01a1798..173bf28bd 100644 --- a/openpower/sv_analysis.py +++ b/openpower/sv_analysis.py @@ -409,10 +409,13 @@ def process_csvs(): elif insn_name.startswith('cmp'): # cmpi res['0'] = 'd:BF' # BF: Rdest1_EXTRA3 res['1'] = 's:RA' # RA: Rsrc1_EXTRA3 - elif insn_name.startswith('neg'): # neg* + elif (insn_name.startswith('neg') or # neg* + insn_name in ['addic', 'addi', 'addis', 'subfuc']): res['0'] = 'd:RT' # RT: Rdest1_EXTRA3 res['1'] = 's:RA' # RA: Rsrc1_EXTRA3 elif (insn_name.startswith('prty') or # prty* + insn_name.startswith('ori') or # ori* + insn_name.startswith('xori') or # xori* insn_name.startswith('popcnt')): # popcnt* res['0'] = 'd:RS' # RS: Rdest1_EXTRA3 res['1'] = 's:RA' # RA: Rsrc1_EXTRA3