Solved this question for anyone interested, posted the full answer in that 
github issue but basically it turns out stores without a valid address also 
have an access size of 0 until they're assigned an address at execution, and 
there's a guard in the SQ search loop that checks against the size being 0. 

Sent from Proton Mail Android


-------- Original Message --------
On 17/09/2024 13:46, muke101 via gem5-dev <gem5-dev@gem5.org> wrote:

>  Sorry, forgot to link the github issue I mentioned: 
> https://github.com/orgs/gem5/discussions/650
>  
>  Sent from Proton Mail Android
>  
>  
>  -------- Original Message --------
>  On 17/09/2024 13:45, muke101 <muke...@protonmail.com> wrote:
>  
>  >  Hi, I'm doing some gem5 hacking for research and have been confused over 
> the timing of when loads search the store queue (SQ) and when stores have 
> valid addresses that can be compared against. Gem5 includes an assert in the 
> read() method in the LSQ unit that the addresses of all stores before the 
> executing loads are valid, but I don't understand how this can be guaranteed 
> in OoO execution.
>  >
>  >  I found a github issue which explains the issue in more detail with code 
> examples, but hasn't received any answers. I'm hoping someone here could take 
> a look and shed light on what's going on with this part of the code.
>  >
>  >  In my case, I'd like to be able to force executing loads to be dependent 
> on the first older store which has an unknown address, in order to simulate 
> an OoO core without memory dependence prediction. I had imagined implementing 
> this during the store forwarding search in the same way a load is made 
> dependent on a store with a partial address overlap, but again for some 
> reason it's assumed that by the time a load is forwarding all the previous 
> stores have known addresses.
>  >
>  >  Any info would be appreciated, thanks.
>  >
>  >  Sent from Proton Mail Android
>  _______________________________________________
>  gem5-dev mailing list -- gem5-dev@gem5.org
>  To unsubscribe send an email to gem5-dev-le...@gem5.org
>  
_______________________________________________
gem5-dev mailing list -- gem5-dev@gem5.org
To unsubscribe send an email to gem5-dev-le...@gem5.org

Reply via email to