1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 18:54:02 +01:00
llvm-mirror/tools/llvm-reduce/deltas
Guillaume Chatelet a29bc1a45f [llvm] Add enum iteration to Sequence
This patch allows iterating typed enum via the ADT/Sequence utility.

It also changes the original design to better separate concerns:
 - `StrongInt` only deals with safe `intmax_t` operations,
 - `SafeIntIterator` presents the iterator and reverse iterator
 interface but only deals with safe `StrongInt` internally.
 - `iota_range` only deals with `SafeIntIterator` internally.

 This design ensures that operations are always valid. In particular,
 "Out of bounds" assertions fire when:
  - the `value_type` is not representable as an `intmax_t`
  - iterator operations make internal computation underflow/overflow
  - the internal representation cannot be converted back to `value_type`

Differential Revision: https://reviews.llvm.org/D106279
2021-07-21 12:48:53 +00:00
..
Delta.cpp
Delta.h
ReduceAliases.cpp
ReduceAliases.h
ReduceArguments.cpp
ReduceArguments.h
ReduceAttributes.cpp [llvm] Add enum iteration to Sequence 2021-07-21 12:48:53 +00:00
ReduceAttributes.h
ReduceBasicBlocks.cpp
ReduceBasicBlocks.h
ReduceFunctionBodies.cpp
ReduceFunctionBodies.h
ReduceFunctions.cpp
ReduceFunctions.h
ReduceGlobalValues.cpp
ReduceGlobalValues.h
ReduceGlobalVarInitializers.cpp
ReduceGlobalVarInitializers.h
ReduceGlobalVars.cpp
ReduceGlobalVars.h
ReduceInstructions.cpp
ReduceInstructions.h
ReduceMetadata.cpp
ReduceMetadata.h
ReduceModuleInlineAsm.cpp
ReduceModuleInlineAsm.h
ReduceOperandBundles.cpp
ReduceOperandBundles.h
ReduceSpecialGlobals.cpp
ReduceSpecialGlobals.h