You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Our metal_dcache_l1_flush() contains a fence.i instruction that is only needed if one is making code side updates through the data cache - namely pushing out new instructions to memory:
The fence.i invalidates the I Cache and can negatively impact performance. If a user is pushing out a code update they should call fence.i on their own or there should be a new argument added which specifies if the fence.i should be executed.
Customers don't appreciate having the I Cache invalidated when not necessary.
The text was updated successfully, but these errors were encountered:
Our
metal_dcache_l1_flush()
contains afence.i
instruction that is only needed if one is making code side updates through the data cache - namely pushing out new instructions to memory:https://github.com/sifive/freedom-metal/blob/v201908-branch/src/cache.c#L135
The
fence.i
invalidates the I Cache and can negatively impact performance. If a user is pushing out a code update they should callfence.i
on their own or there should be a new argument added which specifies if thefence.i
should be executed.Customers don't appreciate having the I Cache invalidated when not necessary.
The text was updated successfully, but these errors were encountered: