Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watnot!watmath!clyde!ima!johnl From: johnl@ima.UUCP Newsgroups: mod.compilers Subject: Re: Debuggers Message-ID: <518@ima.UUCP> Date: Thu, 12-Mar-87 03:31:33 EST Article-I.D.: ima.518 Posted: Thu Mar 12 03:31:33 1987 Date-Received: Sun, 22-Mar-87 21:38:03 EST Sender: johnl@ima.UUCP Organization: Virgin Software Ltd. Nashua, NH Lines: 34 Approved: compilers@ima.UUCP In-Reply-To: <509@ima.UUCP> About 7 years ago I did some very preliminary studies involving the BLISS-32 code generator while I was at Digital. I managed to convince myself that it was possible to derive source code from the optimized object code, however, one would have to make extensive use of heuristics. Unfortunately, I was unable to convince management that there was sufficient payback to warrant a project. (I used the concept of filtering optimized object code through a source generator, and then filtering that back through the optimizer. They weren't interested: the existing optimizations were good enough, and I was proposing orders of magnitude more time to do a compile.) The heuristics would only be good for a certain class of compilers and their code generators. The peephole optimizers and cross jumping done by different compilers would create an enormous explosion of possible source codes. I eventually came to the conclusion that there are two possible uses of 'compiling object into source'. 1) As a study in a given compiler's effectiveness at handling particular classes of programs. and 2) as an analysis tool to see how a computer would execute a program. The original thought of increasing code optimization would turn out to be an impractical use; with a good optimizer in the first place, you would not obtain practical results after the second iteration. If you're interested, I'll try to dig up my notes. --Bruce Dawson -- Send compilers articles to ima!compilers or, in a pinch, to Levine@YALE.ARPA Plausible paths are { ihnp4 | decvax | cbosgd | harvard | yale | cca}!ima Please send responses to the originator of the message -- I cannot forward mail accidentally sent back to compilers. Meta-mail to ima!compilers-request