Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/5/84; site mcrware.UUCP Path: utzoo!watmath!clyde!cbosgd!ihnp4!stolaf!umn-cs!isucs1!mcrware!kim From: kim@mcrware.UUCP (Kim Kempf) Newsgroups: net.micro.6809 Subject: Re: MW C--_eprof??? Message-ID: <162@mcrware.UUCP> Date: Thu, 30-Jan-86 08:51:58 EST Article-I.D.: mcrware.162 Posted: Thu Jan 30 08:51:58 1986 Date-Received: Fri, 7-Feb-86 21:09:19 EST References: <3500127@uokvax.UUCP> Organization: Microware Systems Corp., Des Moines, IA Lines: 33 > In article <3500127@uokvax.UUCP> James Jones writes: > > Help! I'm busy hacking on a program, and I thought I'd profile it and see > where it was spending its time..."OK, so just cc -p and Bob's your uncle!" > I said to myself, but when the dust cleared, c.link said > > Undefined symbol > _eprof > > and stuck its tongue out at me. (I am using Microware's C compiler under > OS-9/6809, by the way...) So, what do I need to do to pacify the gods of > the linker? What is _eprof? (and why is c.link saying such horrible things > about him?) This was a development boo-boo. _eprof is a function used to provide a compiler trace of functions executed. The actual function was ommited from the library. It doesn't matter anyway because the arguments to _eprof wiped out the X register which has the effect of destroying long/double return values. The best way around this bug is to patch out this string from the object code. Dump the binary of c.comp. After approx. $9A00 the string containing _eprof should be found. Backup to the 0 (null) byte at the beginning of this string (which is the end of the previous string) and place a new null byte at the start of the string containing the _eprof. This has the effect of removing the call to _eprof. This problem will be fixed for good in the next release of the 6809 C Compiler. ---------------- Kim Kempf, Microware Systems Corporation {{cornell,decvax,ihnp4,sdcsvax,tektronix}!uw-beaver}\ {allegra,gatech!sb1,hplabs!lbl-csam,decwrl!sun,sunup} >!fluke!mcrware!kim {ssc-vax,hplsla,wavetek,physio,cae780,tikal,telematic}/