[use-table] Add a OPTIMIZE_SIZE version
diff --git a/src/gen-use-table.py b/src/gen-use-table.py
index 35b339a..e8b76df 100755
--- a/src/gen-use-table.py
+++ b/src/gen-use-table.py
@@ -468,11 +468,29 @@
 
 import packTab
 data = {u:v[0] for u,v in use_data.items()}
-code = packTab.Code('hb_use')
-sol = packTab.pack_table(data, compression=5, default='O')
-logging.info('      FullCost=%d' % (sol.fullCost))
-sol.genCode(code, f'get_category')
-code.print_c(linkage='static inline')
+
+DEFAULT = 5
+COMPACT = 9
+for compression in (DEFAULT, COMPACT):
+
+    logging.info('  Compression=%d:' % compression)
+    print()
+    if compression == DEFAULT:
+        print('#ifndef HB_OPTIMIZE_SIZE')
+    elif compression == COMPACT:
+        print('#else')
+    else:
+        assert False
+    print()
+
+    code = packTab.Code('hb_use')
+    sol = packTab.pack_table(data, compression=compression, default='O')
+    logging.info('      FullCost=%d' % (sol.fullCost))
+    sol.genCode(code, f'get_category')
+    code.print_c(linkage='static inline')
+    print ()
+
+print('#endif')
 
 print ()
 for k in sorted(use_mapping.keys()):