Add some inlining by hand
[SXSI/XMLTree.git] / bp.c
diff --git a/bp.c b/bp.c
index 6b7e296..1745621 100644 (file)
--- a/bp.c
+++ b/bp.c
@@ -1,4 +1,7 @@
 #include "bp.h"\r
+#include <algorithm>\r
+using std::min;\r
+using std::max;\r
 \r
 //#define CHECK\r
 #define RANDOM\r
@@ -93,14 +96,16 @@ int degtbl2[(2*ETW+1)*(1<<ETW)];
 int childtbl[(ETW)*(1<<ETW)];\r
 int childtbl2[2*ETW+1][ETW][(1<<ETW)];\r
 int depthtbl[(2*ETW+1)*(1<<ETW)];\r
-\r
+int inited = 0;\r
 void make_matchtbl(void)\r
 {\r
   int i,j,x,r;\r
   int m,M;\r
   pb buf[1];\r
   int deg;\r
-\r
+  if (inited)\r
+    return;\r
+  inited = 1;\r
   for (x = 0; x < (1<<ETW); x++) {\r
     setbits(buf,0,ETW,x);\r
     for (r=-ETW; r<=ETW; r++) fwdtbl[((r+ETW)<<ETW)+x] = ETW;\r