From 57bcae1e63d9fb9a96a9df7935d9c6b47e4f42c0 Mon Sep 17 00:00:00 2001 From: Michael Nolan Date: Tue, 31 Mar 2020 10:19:06 -0400 Subject: [PATCH] Minor cleanup --- src/soc/decoder/helpers.py | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/src/soc/decoder/helpers.py b/src/soc/decoder/helpers.py index 79660d45..4c595ca9 100644 --- a/src/soc/decoder/helpers.py +++ b/src/soc/decoder/helpers.py @@ -1,10 +1,14 @@ import unittest + + def exts(value, bits): sign = 1 << (bits - 1) return (value & (sign - 1)) - (value & sign) + def EXTS64(value): - return exts(value, 32) & ((1<<64)-1) + return exts(value, 32) & ((1 << 64)-1) + def EXTZ64(value): return value & ((1<<32)-1) @@ -14,23 +18,26 @@ def rotl(value, bits, wordlen): bits = bits & (wordlen - 1) return ((value << bits) | (value >> (wordlen-bits))) & mask + def ROTL64(value, bits): return rotl(value, bits, 64) + def ROTL32(value, bits): return rotl(value, bits, 32) + def MASK(x, y): if x < y: x = 64-x y = 63-y - mask_a = ((1<