I've found that the implementation of this method was to simply return the pointer stored within the ilist_iterator class (http://llvm.org/docs/doxygen/html/ilist_8h_source.html#l00195). However, it is unclear to me how this operator is used.
I'm assuming that with that operator, we can do the following.
...
ilist_iterator<NodeType> it = ...;
NodeType const *node = it;  // rather than &(*it)?
...
Is my assumption correct?
                        
That is precisely what it does. It also allows
itto be passed as an argument to a function that takes aNodeType*parameter. (It feels like it could be a bit dangerous to me, but I can't think of a specific situation where it would be a problem.)