Path: utzoo!mnetor!uunet!lll-winken!lll-lcc!pyramid!prls!mips!mash From: mash@mips.UUCP (John Mashey) Newsgroups: comp.arch Subject: Re: taken -vs- untaken branches, Fo Message-ID: <1316@winchester.UUCP> Date: 13 Jan 88 23:06:39 GMT References: <839@ima.ISC.COM> <28200086@ccvaxa> Reply-To: mash@winchester.UUCP (John Mashey) Organization: MIPS Computer Systems, Sunnyvale, CA Lines: 39 In article <28200086@ccvaxa> aglew@ccvaxa.UUCP writes: .... >I'm maximally in favour of compilers that do their own frequency analyses. >I would just like something that I can use in the meantime. >And it seems to me that the FREQUENCY statement provides a decent >interface for both human and automatically specified systems. ... >Why do I always get into this fight with Computer Scientists? >They say "well, if you do it right then you wouldn't need to specify things >by hand. It'll all be done automatically." > Sheesh! Eventually *ALL* programming will be done automatically. But >in the meantime, give me the tools I need to get the job done. Either it's a languauge feature that's made standard, or a #pragma that anyone who uses it, uses it the same way, or few people will bother, since they like code to be portable (look at the hassle-level on vectorizing directives in FORTRAN variants, which CLEARLY have dramatic performance helps in some environments. If FREQUENCY were THAT useful, I'd believe you'd find it around already.) That was Software Engineer hat. :-) Now, for Scientist hat: show me some substantial data that makes me believe this really helps, and that it is general enough to be worth the cost. >If your language system lets you use automatically collected >profiles to direct code generation, but not FREQUENCY statements in the code, >then I know that one day I am going to have to edit the "automatically >collected profiles" by hand. And keeping those up to date with changing code >will be a nightmare. No: the point is to let the compiler take the profile data directly, and use it for whatever it feels like, without messing up the source code. Debug the changes, compile the program once, run the tests, and recompile. Anyway, one more time: let's see some data from somebody, and as I said before, maybe a good MS topic for someone. -- -john mashey DISCLAIMER: UUCP: {ames,decwrl,prls,pyramid}!mips!mash OR mash@mips.com DDD: 408-991-0253 or 408-720-1700, x253 USPS: MIPS Computer Systems, 930 E. Arques, Sunnyvale, CA 94086