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