From 40f91f473e5c92bbd1fb7ddf2c32f0414f599d21 Mon Sep 17 00:00:00 2001 From: Luke Kenneth Casson Leighton Date: Sat, 16 Jul 2022 18:49:04 +0100 Subject: [PATCH] simplify remapyield.py, skip shows the bit to be skipped --- src/openpower/decoder/isa/remapyield.py | 32 +++++++++---------------- 1 file changed, 11 insertions(+), 21 deletions(-) diff --git a/src/openpower/decoder/isa/remapyield.py b/src/openpower/decoder/isa/remapyield.py index b5fa6465..b50df866 100644 --- a/src/openpower/decoder/isa/remapyield.py +++ b/src/openpower/decoder/isa/remapyield.py @@ -39,31 +39,21 @@ def iterate_indices(SVSHAPE): vals[SVSHAPE.order[1]], vals[SVSHAPE.order[2]] ] - # some of the dimensions can be "skipped". the order - # was actually selected above on all 3 dimensions, - # e.g. [z][x][y] or [y][z][x]. "skip" allows one of - # those to be knocked out - if SVSHAPE.skip == 0b00: - select = 0b111 - elif SVSHAPE.skip == 0b11: - select = 0b011 - elif SVSHAPE.skip == 0b01: - select = 0b110 - elif SVSHAPE.skip == 0b10: - select = 0b101 - else: - select = 0b111 - result = 0 - mult = 1 # ok now we can construct the result, using bits of # "order" to say which ones get stacked on + result = 0 + mult = 1 for i in range(3): lim, idx, dbg = vals[i] - if select & (1<