Killed controller-interrupt requests do not assert decoded instructions
Created by: davideschiavone
This bug can happen when the registered interrupt line in the controller (irq_req_ctrl_i) is high when the controller is in the DECODE state and then the external interrupt line (irq_i) goes to 0 when the controller is in IRQ_FLUSH state. The registered interrupt request is killed via exc_kill_o but if the instruction that was about to be interrupted is one of those instructions affected by the deassert_we_o signal, the EX stage is not updated properly (as is_decoding_o is 0). Such instructions are BRANCHES or LD/ST instructions for instance, whereas instructions like ADD or SHIFT etc are not affected as insensitive to the is_decoding_o signal.