-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviews.gem5.org/r/2183/#review4986
-----------------------------------------------------------



src/cpu/o3/lsq_unit_impl.hh
<http://reviews.gem5.org/r/2183/#comment4591>

    Do you think checking force_squash in this second if() condition will
    work same as checking needsTSO?  If yes, then I would suggest that we
    check force_squash here.


- Nilay Vaish


On March 5, 2014, 5:05 p.m., Marco Elver wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://reviews.gem5.org/r/2183/
> -----------------------------------------------------------
> 
> (Updated March 5, 2014, 5:05 p.m.)
> 
> 
> Review request for Default.
> 
> 
> Repository: gem5
> 
> 
> Description
> -------
> 
> Changeset 10101:19483fc4f611
> ---------------------------
> o3cpu: lsq: Fix TSO implementation
> 
> This patch fixes violation of TSO in the O3CPU, as all loads must be
> ordered with all other loads. In the LQ, if a snoop is observed, all
> subsequent loads need to be squashed if the system is TSO.
> 
> Prior to this patch, the following case could be violated:
> 
>  P0         | P1          ;
>  MOV [x],$1 | MOV EAX,[y] ;
>  MOV [y],$1 | MOV EBX,[x] ;
> 
> exists (1:EAX=1 /\ 1:EBX=0) [is a violation]
> 
> The problem was found using litmus [http://diy.inria.fr].
> 
> 
> Diffs
> -----
> 
>   src/cpu/o3/lsq_unit_impl.hh 24cfe67c0749 
> 
> Diff: http://reviews.gem5.org/r/2183/diff/
> 
> 
> Testing
> -------
> 
> This patch was originally against a much older version of Gem5 
> (9677:773aae0990ae), where the effect was tested extensively and diy no 
> longer reports violation. This patch was then ported and rebased against the 
> newest Gem5 version, where I only ran quick/se/00.hello/x86/linux/o3-timing. 
> Performance results of parallel workloads will change slightly.
> 
> 
> Thanks,
> 
> Marco Elver
> 
>

_______________________________________________
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to