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