dcache: Don't assert on dcbz cache hit
authorPaul Mackerras <paulus@ozlabs.org>
Sun, 3 May 2020 22:31:18 +0000 (08:31 +1000)
committerPaul Mackerras <paulus@ozlabs.org>
Wed, 6 May 2020 03:28:57 +0000 (13:28 +1000)
We can hit the assert for req_op = OP_STORE_HIT and reloading in the
case of dcbz, since it looks like a store.  Therefore we need to
exclude that case from the assert.

Signed-off-by: Paul Mackerras <paulus@ozlabs.org>
dcache.vhdl

index 550298b9270d82dd33fb1dfdb2e06fb863e1afb8..7d61a850d01bad8089f3403b6b77fdbf60b33c9f 100644 (file)
@@ -597,7 +597,8 @@ begin
            if reloading and wishbone_in.ack = '1' and r1.store_way = i then
                do_write <= '1';
            end if;
-           if req_op = OP_STORE_HIT and req_hit_way = i and cancel_store = '0' then
+           if req_op = OP_STORE_HIT and req_hit_way = i and cancel_store = '0' and
+                r1.req.dcbz = '0' then
                assert not reloading report "Store hit while in state:" &
                    state_t'image(r1.state)
                    severity FAILURE;