The use of $ISALIST within an auxiliary filter allows for one, or more filtees to provide alternative implementations of interfaces defined within the filter.
However, any interface defined in a filter that does not have an alternative implementation defined in a filtee will result in an exhaustive search of all potential filtees in an attempt to locate the required interface. If filtees are being employed to provide performance critical functions the exhaustive filtee searching can be counter productive.
A filtee can be built with the link-editors' -zendfiltee option to indicate that it is the last of the available filtees, and thus terminates any further filtee searching for that filter. For example, from the previous SPARC example, if the sparcv9 filtee existed, and was tagged with -zendfiltee, the filtee searches would be:
$ ldd -ls prog ..... find object=libbar.so.1; required by ./libfoo.so.1 search path=/opt/ISV/lib/$ISALIST (RPATH from file ./libfoo.so.1) trying path=/opt/ISV/lib/sparcv9+vis/libbar.so.1 trying path=/opt/ISV/lib/sparcv9/libbar.so.1