1 //===- llvm/CodeGen/DIEValue.def - DIEValue types ---------------*- C++ -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 // Macros for running through all types of DIEValue.
12 //===----------------------------------------------------------------------===//
14 #if !(defined HANDLE_DIEVALUE || defined HANDLE_DIEVALUE_SMALL || \
15 defined HANDLE_DIEVALUE_LARGE)
16 #error "Missing macro definition of HANDLE_DIEVALUE"
19 // Handler for all values.
20 #ifndef HANDLE_DIEVALUE
21 #define HANDLE_DIEVALUE(T)
24 // Handler for small values.
25 #ifndef HANDLE_DIEVALUE_SMALL
26 #define HANDLE_DIEVALUE_SMALL(T) HANDLE_DIEVALUE(T)
29 // Handler for large values.
30 #ifndef HANDLE_DIEVALUE_LARGE
31 #define HANDLE_DIEVALUE_LARGE(T) HANDLE_DIEVALUE(T)
34 HANDLE_DIEVALUE_SMALL(Integer)
35 HANDLE_DIEVALUE_SMALL(String)
36 HANDLE_DIEVALUE_SMALL(Expr)
37 HANDLE_DIEVALUE_SMALL(Label)
38 HANDLE_DIEVALUE_LARGE(Delta)
39 HANDLE_DIEVALUE_SMALL(Entry)
40 HANDLE_DIEVALUE_SMALL(TypeSignature)
41 HANDLE_DIEVALUE_LARGE(Block)
42 HANDLE_DIEVALUE_LARGE(Loc)
43 HANDLE_DIEVALUE_SMALL(LocList)
45 #undef HANDLE_DIEVALUE
46 #undef HANDLE_DIEVALUE_SMALL
47 #undef HANDLE_DIEVALUE_LARGE