Sorta kinda working bl and blr - need to properly implement lr
[soc.git] / src / soc / decoder / selectable_int.py
index c4698c014c3df71382f2c539c940f6fcc47c11d7..239162f3e046bdbe04db279e63a69a28eb9568e2 100644 (file)
@@ -44,10 +44,14 @@ class FieldSelectableInt:
 
     def __getitem__(self, key):
         print ("getitem", key, self.br)
+        if isinstance(key, SelectableInt):
+            key = key.value
         key = self.br[key] # don't do POWER 1.3.4 bit-inversion
         return self.si[key]
 
     def __setitem__(self, key, value):
+        if isinstance(key, SelectableInt):
+            key = key.value
         key = self.br[key] # don't do POWER 1.3.4 bit-inversion
         return self.si.__setitem__(key, value)