|
fence n. 1. A sequence of one or more distinguished
(out-of-band) characters (or other data items), used
to delimit a piece of data intended to be treated as a unit (the
computer-science literature calls this a sentinel). The NUL (ASCII 0000000) character
that terminates strings in C is a fence. Hex FF is also (though slightly
less frequently) used this way. See zigamorph.
2. An extra data value inserted in an array or other data structure
in order to allow some normal test on the array's contents also to function
as a termination test. For example, a highly optimized routine for finding
a value in an array might artificially place a copy of the value to be
searched for after the last slot of the array, thus allowing the main
search loop to search for the value without having to check at each pass
whether the end of the array had been reached. 3. [among users of optimizing compilers] Any technique, usually
exploiting knowledge about the compiler, that blocks certain optimizations.
Used when explicit mechanisms are not available or are overkill. Typically
a hack: “I call a dummy procedure there to force a flush of the
optimizer's register-coloring info” can be expressed by the shorter
“That's a fence procedure”.
|