From: Joshua Wise Date: Sat, 10 Jan 2009 04:36:15 +0000 (-0500) Subject: Execute: Fix jumps while flush asserted. Set lr correctly in bl. X-Git-Url: http://git.joshuawise.com/firearm.git/commitdiff_plain/dbf45af6b23216aa8fe299e334006fb3138d45f9?hp=d0e6b3ca86dc90cd78057c0df333d880985d6684;ds=sidebyside Execute: Fix jumps while flush asserted. Set lr correctly in bl. --- diff --git a/Execute.v b/Execute.v index 38a192f..ab204a0 100644 --- a/Execute.v +++ b/Execute.v @@ -171,12 +171,12 @@ module Execute( begin end `DECODE_BRANCH: begin - if(!inbubble) begin + if(!inbubble && !flush) begin jmppc = pc + op0 + 32'h8; if(insn[24]) begin next_write_reg = 1; next_write_num = 4'hE; /* link register */ - next_write_data = pc - 32'h4; + next_write_data = pc + 32'h4; end jmp = 1'b1; end