-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviews.m5sim.org/r/343/#review753
-----------------------------------------------------------
Hugely improved! It seems clear from the assertion now that the
branchMispredict flag is redundant (you could add the converse check to be sure
that mispredictInst is NULL whenever branchMispredict is false, but it seems
unnecessary if the line above where you set mispredictInst to NULL is the one
place where branchMispredict is set to false). Why not get rid of the flag and
just use mispredictInst == NULL to signal that there was no misprediction? The
redundancy only adds confusion IMO b/c then you're left wondering if there is a
case where they wouldn't be consistent, and if so, what that would mean. If it
helps to add a wrapper like
bool branchMispredict() { return (mispredictInst != NULL); }
that's ok with me.
- Steve
On 2011-01-12 09:08:38, Ali Saidi wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://reviews.m5sim.org/r/343/
> -----------------------------------------------------------
>
> (Updated 2011-01-12 09:08:38)
>
>
> Review request for Default, Ali Saidi, Gabe Black, Steve Reinhardt, and
> Nathan Binkert.
>
>
> Summary
> -------
>
> O3: Fix mispredicts from non control instructions.
> The squash inside the fetch unit should not attempt to remove them from the
> branch predictor as non-control instructions are not pushed into the
> predictor.
>
>
> Diffs
> -----
>
> src/cpu/o3/comm.hh 5d0f62927d75
> src/cpu/o3/commit_impl.hh 5d0f62927d75
> src/cpu/o3/fetch_impl.hh 5d0f62927d75
> src/cpu/o3/iew_impl.hh 5d0f62927d75
>
> Diff: http://reviews.m5sim.org/r/343/diff
>
>
> Testing
> -------
>
>
> Thanks,
>
> Ali
>
>
_______________________________________________
m5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/m5-dev