Calculate maxSizeOfInstructions
diff --git a/Lib/fontTools/ttLib/tables/_m_a_x_p.py b/Lib/fontTools/ttLib/tables/_m_a_x_p.py
index 2934149..91dffe5 100644
--- a/Lib/fontTools/ttLib/tables/_m_a_x_p.py
+++ b/Lib/fontTools/ttLib/tables/_m_a_x_p.py
@@ -71,9 +71,14 @@
         maxCompositeContours = 0
         maxComponentElements = 0
         maxComponentDepth = 0
+        maxSizeOfInstructions = 0
         allXMinIsLsb = 1
         for glyphName in ttFont.getGlyphOrder():
             g = glyfTable[glyphName]
+            if hasattr(g, "program") and hasattr(g.program, "bytecode"):
+                maxSizeOfInstructions = max(
+                    maxSizeOfInstructions, len(g.program.bytecode)
+                )
             if g.numberOfContours:
                 if hmtxTable[glyphName][1] != g.xMin:
                     allXMinIsLsb = 0
@@ -109,6 +114,7 @@
         self.maxCompositeContours = maxCompositeContours
         self.maxComponentElements = maxComponentElements
         self.maxComponentDepth = maxComponentDepth
+        self.maxSizeOfInstructions = maxSizeOfInstructions
         if allXMinIsLsb:
             headTable.flags = headTable.flags | 0x2
         else: