1#ifndef LLVM_SUPPORT_REVERSEITERATION_H 2#define LLVM_SUPPORT_REVERSEITERATION_H 3 4#include "llvm/Config/abi-breaking.h" 5#include "llvm/Support/PointerLikeTypeTraits.h" 6 7namespace llvm { 8 9template<class T = void *> 10bool shouldReverseIterate() { 11#if LLVM_ENABLE_REVERSE_ITERATION 12 return detail::IsPointerLike<T>::value; 13#else 14 return false; 15#endif 16} 17 18} 19#endif 20