Please note: We are aware of an issue affecting replies on the Arm Community forums, which may not be loading as expected.
We apologize for any inconvenience and appreciate your patience while we investigate and work to resolve the issue.
Thank you for your understanding.
I am running on cortex-A17.
when following,
step1: STR R0, [R1] ; [R1] is cacheable
step2: DCCIMVAC ; clean and invalidate cache
step3: LDR R0, [R1] ; memory read
Does step3 access L3(external memory) ?
Or access eviction-buffer in cortex-A17 ?
Or, unknown behavior?
Additional,
step2': DMB (or DSB) <- It's require?
I am considering.
For step3 read memory, step2' is require.
Or not require?
If the STR, DCCIMVAC and LDR are all to the same (or overlapping) address - then the DMB is not required, as you have an address dependency.
OK.
I understood and It's too helpful.
Thanks for you.