To: djgpp AT sun DOT soe DOT clarkson DOT edu Subject: Re: debug32 Organization: Code Generation Technology, San Francisco, CA Date: Tue, 29 Sep 92 16:28:55 -0700 From: "Thomas J. Merritt" |<><><><><> Original message from dj AT athena DOT ctron DOT com <><><><><> |>1. Why does debug32 take such a long time to load a program? With a |>program size of 700-800K it takes many MINUTES to load which is |>tiresome as it usually only takes a second from then to run hte |>program, crash and say "where". | |Because it loads all the symbols at startup. I don't like it either, |but there isn't an easy way to fix it AND not run out of code space in |debug32. Actually the problem is only partially that all of the symbol get read at startup. The real problem is that symbols are kept in a binary tree. This is not such a problem except that symbols tend to be in relatively sorted order and the tree degenerates to nearly a linked list. The symbol insertion time is O(n^2). Keeping the symbols in a hash table would reduce insertion time to O(n) and make loading of large files bearable. Converting debug32 from binary trees to hash tables would not be all that difficult. Unfortunately I haven't had the time to do this. (Nor the inclination since I'm still using djgpp 1.05 for various reasons) If anyone would like to tackle this change I would certainly be willing to help. TJ Merritt tjm AT netcom DOT com