Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!burl!ulysses!mhuxl!ihnp4!inuxc!pur-ee!uiucdcs!parsec!ctvax!uokvax!jab From: jab@uokvax.UUCP Newsgroups: net.lang.c Subject: Re: Re: Casting Pointers -- fast *portab - (nf) Message-ID: <5640@uiucdcs.UUCP> Date: Tue, 14-Feb-84 23:25:25 EST Article-I.D.: uiucdcs.5640 Posted: Tue Feb 14 23:25:25 1984 Date-Received: Fri, 17-Feb-84 04:09:04 EST Lines: 21 #R:kobold:-27200:uokvax:3000016:000:825 uokvax!jab Feb 12 19:58:00 1984 kobolt!tjt proposed a byte-copying mechanism that was basically a loop that copied N bytes for every iteration of the loop instead of one byte per iteration. I'd say that if you get to that particular point, what you do is create a library routine called "copybytes" that is as machine-dependent as need be to get the speed you want, but that is retargeted on a per-machine basis, similar to the "strlen" and "index/rindex" code I've seen written for the VAX-11 already. I don't like the idea of adding "magic" control structures in order to outsmart the compiler, and I like the "asm" hack even less. Why not segregate the parts of the program that need to run FAST into separate modules and work on making those modules fast? The above library routine might be an example; there are many others. Jeff Bowles Lisle, IL