about void voids (Re: efopen
    lee at haddock.UUCP 
    lee at haddock.UUCP
       
    Sun Nov 24 09:08:00 AEST 1985
    
    
  
	I think that "asm" should only be used in functions that meet both
	of the following conditions.
	1) The function is inherently machine-dependent, so that it would
	have to be re-written to port it to a substantially different
	machine.
	2) The alternative to using "asm" is to write it entirely in
	assembly language.
I sometimes find an alternative to condition 1) along the following lines:
	1a) the function is performance sensitive and can be significantly
	improved in performance on a particular architecture by insertion of
	small amounts of inline assembly code.
For example, the operation performed by the IBM 370 "tr" instruction or the
VAX "movtc" instruction can replace a loop in critical sections of otherwise
ordinary C code.
In these cases, of course, the asm() directive containing FOO assembly code
should be embraced in "#if defined(foo)" and the equivalent C code compiled
for architectures for which the asm() directives are not provided.
    
    
More information about the Comp.lang.c
mailing list