This file describes the more significant of the changes made by Silicon Graphics, during its port of DIFF 1.15. The file "Changes.gnu-sgi.diff.out" contains a diff (using -uw options) output between the original source and the final SGI port, for each *.c and *.h file. As part of the port, SGI: 1) optimized performance in the case that the files being diff'd don't fit comfortably in main memory. In this large file case, if no GNU specific options are specified, and if /usr/bin/odiff is present, then odiff is automatically invoked, since it is much faster on huge files. This port of GNU diff is typically faster on files that fit in main memory, thanks in part to its use of mmap, and to a quite different algorithm optimized for this case. 2) optimized performance in the case that the two files being diff'd are identical. Consequently diff of two identical files is actually quite a bit faster than "cmp" of the same two files. 3) Dropped support for GNU's +longoptions, in part since they are changing the syntax to --longoption in future GNU diff releases, and it didn't make sense to support the +longoption form for just this single release from SGI. 4) added the local SGI "diff -x" option, for excluding subtrees on a recursive diff. 5) determine if files are binary (which by default can result in the message: Binary files %s and %s differ) by checking for NUL bytes in the first BUFSIZ (8k) bytes. This NUL check is consistent with SVR4 and with previous versions of diff on SGI systems. The GNU source for diff 1.15 checked instead for characters that were not in the ISO 8859 set. Silicon Graphics Dec 29, 1992