From: Luke Kenneth Casson Leighton Date: Sun, 7 Jun 2020 11:52:24 +0000 (+0100) Subject: remove fixedlogical.patch - added gprs to PowerParser p_atom_name X-Git-Tag: div_pipeline~513 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=f61f93dcd82ef64a82fae8e2ee94987ba9794ce8;p=soc.git remove fixedlogical.patch - added gprs to PowerParser p_atom_name --- diff --git a/src/soc/decoder/isa/fixedlogical.patch b/src/soc/decoder/isa/fixedlogical.patch deleted file mode 100644 index 57331829..00000000 --- a/src/soc/decoder/isa/fixedlogical.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- fixedlogical.py.orig 2020-05-14 11:04:21.871367557 -0400 -+++ fixedlogical.py 2020-05-14 11:04:28.714770484 -0400 -@@ -188,7 +188,7 @@ - return (RA,) - - @inject() -- def op_cmpb(self, RB, RA): -+ def op_cmpb(self, RB, RS, RA): - for n in range(0, 7 + 1): - if eq(RS[8 * n:8 * n + 7 + 1], RB[8 * n:8 * n + 7 + 1]): - RA[8 * n:8 * n + 7 + 1] = concat(1, repeat=8) -@@ -493,7 +493,7 @@ - form='X', - asmregs=[['RA', 'RS'], '(Rc=1)']) - fixedlogical_instrs['cmpb'] = instruction_info(func=op_cmpb, -- read_regs=OrderedSet(['RB']), -+ read_regs=OrderedSet(['RB', 'RS']), - uninit_regs=OrderedSet(['RA']), write_regs=OrderedSet(['RA']), - special_regs=OrderedSet(), op_fields=OrderedSet(), - form='X', diff --git a/src/soc/decoder/pseudo/parser.py b/src/soc/decoder/pseudo/parser.py index d2466eac..2f6d9375 100644 --- a/src/soc/decoder/pseudo/parser.py +++ b/src/soc/decoder/pseudo/parser.py @@ -611,6 +611,8 @@ class PowerParser: name = p[1] if name in self.available_op_fields: self.op_fields.add(name) + if name in self.gprs: + self.read_regs.add(name) # add to list of regs to read if name in ['CR', 'LR', 'CTR', 'TAR', 'FPSCR', 'MSR']: self.special_regs.add(name) self.write_regs.add(name) # and add to list to write