With ARMv8.3 a new instruction has been introduced: LDAPR.
When there is a STLR followed by a LDAR to a different address, then these 2 can't be reordered and hence it is called RCsc (release consistent sequential consistent).
When there is a STLR followed by a LDAPR to a different address, then these 2 can be reordered. This is called RCpc (release consistent processor consistent).
My issue is with the PC part.
PC is a relaxation of TSO whereby TSO is multi-copy atomic and PC is non multi-copy atomic.
The memory model of ARMv8 has been improved to be multi-copy atomic because no supplier ever created a non multi-copy atomic microarchitecture and it made the memory model more complicated.
So I'm running into a contradiction.
The key question is: is every store (including relaxed) multi-copy atomic?
If so, then the PC part of rcpc doesn't make sense to me since PC is non multi-copy atomic. Could it be a legacy name due to ARM being non multi-copy atomic in the past?
There are multiple definitions of PC; so perhaps that is the cause.