From b933257d6b26343f3ad517f5876bb5a0093ab403 Mon Sep 17 00:00:00 2001 From: Cliff Click Date: Tue, 23 Apr 2024 17:23:16 +0100 Subject: Chapter 10: Structs and Memory Co-authored-by: Thalia Archibald Co-authored-by: Dibyendu Majumdar Co-authored-by: XmiliaH <45106915+XmiliaH@users.noreply.github.com> Co-authored-by: XmiliaH Co-authored-by: Robert Obkircher --- docs/chapter10/lattice.svg | 498 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 498 insertions(+) create mode 100644 docs/chapter10/lattice.svg (limited to 'docs/chapter10/lattice.svg') diff --git a/docs/chapter10/lattice.svg b/docs/chapter10/lattice.svg new file mode 100644 index 00000000..2fe05bbf --- /dev/null +++ b/docs/chapter10/lattice.svg @@ -0,0 +1,498 @@ + + + + + + +Lattice + + + +TOP + +⊤ + + + +XCTRL + +~Ctrl + + + +TOP->XCTRL + + + + +INT_TOP + +IntTop + + + +TOP->INT_TOP + + + + +TUPLE + +TUPLE + + + +TOP->TUPLE + + + + +STRUCT_TOP + +$TOP + + + +TOP->STRUCT_TOP + + + + +PTR_TOP + +*$TOP + + + +TOP->PTR_TOP + + + + +MEM_TOP + +MEM#TOP + + + +TOP->MEM_TOP + + + + +BOT + +⊥ + + + +CTRL + +Ctrl + + + +XCTRL->CTRL + + + + +CTRL->BOT + + + + +INT_MIN + +-n + + + +INT_TOP->INT_MIN + + + + +INT_MINDOTS +... + + + +INT_TOP->INT_MINDOTS + + + + +INT_ZERO + +0 + + + +INT_TOP->INT_ZERO + + + + +INT_MAXDOTS +... + + + +INT_TOP->INT_MAXDOTS + + + + +INT_MAX + ++n + + + +INT_TOP->INT_MAX + + + + +INT_BOT + +IntBot + + + +INT_BOT->BOT + + + + +INT_MIN->INT_BOT + + + + + +INT_MINDOTS->INT_BOT + + + + + +INT_ZERO->INT_BOT + + + + + +INT_MAXDOTS->INT_BOT + + + + + +INT_MAX->INT_BOT + + + + +TUPLE->BOT + + + + +STRUCT_S1 + +S1 + + + +STRUCT_TOP->STRUCT_S1 + + + + +STRUCT_DOTS +... + + + +STRUCT_TOP->STRUCT_DOTS + + + + +STRUCT_SN + +Sn + + + +STRUCT_TOP->STRUCT_SN + + + + + +STRUCT_BOT + +$BOT + + + +STRUCT_S1->STRUCT_BOT + + + + + +STRUCT_DOTS->STRUCT_BOT + + + + +STRUCT_SN->STRUCT_BOT + + + + +STRUCT_BOT->BOT + + + + +PTR_NULL + +null + + + +PTR_TOP->PTR_NULL + + + + +PTR_VOIDPTR + +*void + + + +PTR_TOP->PTR_VOIDPTR + + + + +PTR_S1 + +*S1 + + + +PTR_TOP->PTR_S1 + + + + +PTR_SDOTS +... + + + +PTR_TOP->PTR_SDOTS + + + + +PTR_SN + +*SN + + + +PTR_TOP->PTR_SN + + + + +PTR_S1OPT + +*S1? + + + +PTR_NULL->PTR_S1OPT + + + + +PTR_SOPTDOTS +... + + + +PTR_NULL->PTR_SOPTDOTS + + + + +PTR_SNOPT + +*SN? + + + +PTR_NULL->PTR_SNOPT + + + + +PTR_BOT + +*$BOT? + + + +PTR_NULL->PTR_BOT + + + + +PTR_VOIDPTR->PTR_BOT + + + + +PTR_S1->PTR_VOIDPTR + + + + + +PTR_S1->PTR_S1OPT + + + + +PTR_SDOTS->PTR_VOIDPTR + + + + + +PTR_SDOTS->PTR_SOPTDOTS + + + + +PTR_SN->PTR_VOIDPTR + + + + +PTR_SN->PTR_SNOPT + + + + + +PTR_S1OPT->PTR_BOT + + + + + +PTR_SOPTDOTS->PTR_BOT + + + + +PTR_SNOPT->PTR_BOT + + + + +PTR_BOT->BOT + + + + +MEM_ALIAS1 + +#1 + + + +MEM_TOP->MEM_ALIAS1 + + + + +MEM_ALIAS2 + +#2 + + + +MEM_TOP->MEM_ALIAS2 + + + + +MEM_ALIASDOTS +... + + + +MEM_TOP->MEM_ALIASDOTS + + + + +MEM_ALIASN + +#n + + + +MEM_TOP->MEM_ALIASN + + + + + +MEM_BOT + +MEM#BOT + + + +MEM_ALIAS1->MEM_BOT + + + + + +MEM_ALIAS2->MEM_BOT + + + + + +MEM_ALIASDOTS->MEM_BOT + + + + +MEM_ALIASN->MEM_BOT + + + + +MEM_BOT->BOT + + + + -- cgit v1.2.3