digraph diagram { rankdir = LR; "C code" [shape=doublecircle]; "clang" [shape=rect]; "llc" [shape=rect]; "elc" [shape=rect]; "LLVM bitcode" [shape=ellipse]; "ELVM IR" [shape=ellipse]; "Executable (target X)" [shape=ellipse]; "Executable (target Y)" [shape=ellipse]; "Executable (target Z)" [shape=ellipse]; "1" [shape=diamond,style=filled,label="",height=.1,width=.1]; "clang" -> "1" [dir=none]; "C code" -> "1" [dir=none]; "1" -> "LLVM bitcode"; "2" [shape=diamond,style=filled,label="",height=.1,width=.1]; "llc" -> "2" [dir=none]; "LLVM bitcode" -> "2" [dir=none]; "2" -> "ELVM IR"; "3" [shape=diamond,style=filled,label="",height=.1,width=.1]; "elc" -> "3" [dir=none]; "ELVM IR" -> "3" [dir=none]; "3" -> "Executable (target X)"; "3" -> "Executable (target Y)"; "3" -> "Executable (target Z)"; }