projects
/
openpower-isa.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
cfd0215
)
selectable_int: support slicing by iterable
author
Dmitry Selyutin
<ghostmansd@gmail.com>
Tue, 30 Aug 2022 08:47:16 +0000
(11:47 +0300)
committer
Dmitry Selyutin
<ghostmansd@gmail.com>
Tue, 30 Aug 2022 10:02:21 +0000
(13:02 +0300)
src/openpower/decoder/selectable_int.py
patch
|
blob
|
history
diff --git
a/src/openpower/decoder/selectable_int.py
b/src/openpower/decoder/selectable_int.py
index 36d30689c5dfe55a8c2396bf512f2b34f41cb8cb..55f5e6c824a8cb8ce52d56403897972e3c34f3b8 100644
(file)
--- a/
src/openpower/decoder/selectable_int.py
+++ b/
src/openpower/decoder/selectable_int.py
@@
-385,7
+385,13
@@
class SelectableInt:
log("getitem", stop, start, self.bits, hex(self.value), value)
return SelectableInt(value, bits)
else:
- raise ValueError(value)
+ bits = []
+ key = tuple(key)
+ for bit in key:
+ if not isinstance(bit, (int, SelectableInt)):
+ raise ValueError(key)
+ bits.append(self[bit])
+ return selectconcat(*bits)
def __setitem__(self, key, value):
if isinstance(key, SelectableInt):