From 16d6604667e94d20da828e7eeaac10fdabd0121f Mon Sep 17 00:00:00 2001 From: Lenny Truong Date: Sun, 25 Nov 2018 14:16:07 -0800 Subject: [PATCH] Pep8 fixes --- fault/verilator_target.py | 23 ++++++++++++++++------- tests/test_verilator_target.py | 9 ++++++--- 2 files changed, 22 insertions(+), 10 deletions(-) diff --git a/fault/verilator_target.py b/fault/verilator_target.py index d80b05ae..d2ee25da 100644 --- a/fault/verilator_target.py +++ b/fault/verilator_target.py @@ -107,11 +107,17 @@ def __init__(self, circuit, directory="build/", @staticmethod def generate_array_action_code(i, action): - return flatten([ - VerilatorTarget.generate_action_code( - i, type(action)(action.port[j], action.format_str if isinstance(action, actions.Print) else action.value[j]) - ) for j in range(action.port.N) - ]) + result = [] + for j in range(action.port.N): + if isinstance(action, actions.Print): + value = action.format_str + else: + value = action.value[j] + result += [ + VerilatorTarget.generate_action_code( + i, type(action)(action.port[j], value) + )] + return flatten(result) @staticmethod def generate_action_code(i, action): @@ -120,10 +126,13 @@ def generate_action_code(i, action): not isinstance(action.port.T, m.BitKind): return VerilatorTarget.generate_array_action_code(i, action) name = verilator_utils.verilator_name(action.port.name) - if isinstance(action.value, BitVector) and action.value.num_bits > 32: + if isinstance(action.value, BitVector) and \ + action.value.num_bits > 32: asserts = [] for i in range(math.ceil(action.value.num_bits / 32)): - asserts += [f"top->{name}[{i}] = {action.value[i * 32:min((i+1) * 32, action.value.num_bits)]};"] + value = action.value[i * 32:min( + (i+1) * 32, action.value.num_bits)] + asserts += [f"top->{name}[{i}] = {value};"] return asserts else: return [f"top->{name} = {action.value};"] diff --git a/tests/test_verilator_target.py b/tests/test_verilator_target.py index 5cddd2a6..1680fbd3 100644 --- a/tests/test_verilator_target.py +++ b/tests/test_verilator_target.py @@ -124,12 +124,15 @@ def test_verilator_print_nested_arrays(capfd): def test_verilator_print_double_nested_arrays(capfd): circ = common.TestDoubleNestedArraysCircuit actions = [ - Poke(circ.I, [[BitVector(i + j * 3, 4) for i in range(3)] for j in range(2)]), + Poke(circ.I, [[BitVector(i + j * 3, 4) for i in range(3)] + for j in range(2)]), Print(circ.I), Eval(), - Expect(circ.O, [[BitVector(i + j * 3, 4) for i in range(3)] for j in range(2)]), + Expect(circ.O, [[BitVector(i + j * 3, 4) for i in range(3)] + for j in range(2)]), Print(circ.O), - Poke(circ.I, [[BitVector(i + (j + 1) * 3, 4) for i in range(3)] for j in range(2)]), + Poke(circ.I, [[BitVector(i + (j + 1) * 3, 4) for i in range(3)] + for j in range(2)]), Eval(), Print(circ.O), ]