blob: da8094365eff3a64fac78390e3dfe592fb340d18 [file] [log] [blame]
digraph finite_state_machine {
node [shape = circle, fixedsize=true, fontsize=12];
edge [fontsize=9];
// { rank=min UD SD }
// { rank=max UC SC }
I -> SC [ label = "Load miss/\nReadShared" ];
I -> UD [ label = "Store miss/\nReadUnique" ];
SC -> I [ label = "Replacement/\nEvict" ];
SC -> UD [ label = "Store miss/\nReadUnique" ];
SD -> I [ label = "Replacement/\nWriteBack" ];
SD -> UD [ label = "Store miss/\nReadUnique" ];
UC -> I [ label = "Replacement/\nWriteEvict" ];
UC -> SC [ label = "SnpShared" ];
UC -> UD [ label = "Store hit" ];
UD -> I [ label = "Replacement/\nWriteBack" ];
UD -> SD [ label = "SnpShared" ];
I -> UD_T [ label = "StoreConditional miss/\nReadUnique" ];
UD_T -> UD [ label = "Timeout" ];
// UD -> UD [ label = "Load,Store hit" ];
// UC -> UC [ label = "Load hit" ];
// SC -> SC [ label = "Load hit" ];
// SD -> SD [ label = "Load hit" ];
}