[InstCombine] Signed saturation patterns
[llvm-complete.git] / include / llvm / CodeGen / DIEValue.def
blob92afeb3868b436a3914263621f1fff984145c384
1 //===- llvm/CodeGen/DIEValue.def - DIEValue types ---------------*- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 //
9 // Macros for running through all types of DIEValue.
11 //===----------------------------------------------------------------------===//
13 #if !(defined HANDLE_DIEVALUE || defined HANDLE_DIEVALUE_SMALL || \
14 defined HANDLE_DIEVALUE_LARGE)
15 #error "Missing macro definition of HANDLE_DIEVALUE"
16 #endif
18 // Handler for all values.
19 #ifndef HANDLE_DIEVALUE
20 #define HANDLE_DIEVALUE(T)
21 #endif
23 // Handler for small values.
24 #ifndef HANDLE_DIEVALUE_SMALL
25 #define HANDLE_DIEVALUE_SMALL(T) HANDLE_DIEVALUE(T)
26 #endif
28 // Handler for large values.
29 #ifndef HANDLE_DIEVALUE_LARGE
30 #define HANDLE_DIEVALUE_LARGE(T) HANDLE_DIEVALUE(T)
31 #endif
33 HANDLE_DIEVALUE_SMALL(Integer)
34 HANDLE_DIEVALUE_SMALL(String)
35 HANDLE_DIEVALUE_SMALL(Expr)
36 HANDLE_DIEVALUE_SMALL(Label)
37 HANDLE_DIEVALUE_LARGE(BaseTypeRef)
38 HANDLE_DIEVALUE_LARGE(Delta)
39 HANDLE_DIEVALUE_SMALL(Entry)
40 HANDLE_DIEVALUE_LARGE(Block)
41 HANDLE_DIEVALUE_LARGE(Loc)
42 HANDLE_DIEVALUE_SMALL(LocList)
43 HANDLE_DIEVALUE_LARGE(InlineString)
45 #undef HANDLE_DIEVALUE
46 #undef HANDLE_DIEVALUE_SMALL
47 #undef HANDLE_DIEVALUE_LARGE