LLVM: include/llvm/Support/ReverseIteration.h Source File (original) (raw)

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 *> constexpr bool shouldReverseIterate() {

10#if LLVM_ENABLE_REVERSE_ITERATION

11 return detail::IsPointerLike::value;

12#else

13 return false;

14#endif

15}

16

17} // namespace llvm

18#endif

PointerLikeTypeTraits.h

llvm

This is an optimization pass for GlobalISel generic memory operations.

Definition AddressRanges.h:18

llvm::shouldReverseIterate

constexpr bool shouldReverseIterate()

Definition ReverseIteration.h:9

llvm::detail::IsPointerLike::value

static const bool value

Definition PointerLikeTypeTraits.h:41