LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ELF.cpp
Go to the documentation of this file.
1 //===- ELF.cpp - ELF object file implementation -----------------*- 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 #include "llvm/Object/ELF.h"
11 
12 namespace llvm {
13 namespace object {
14 
15 #define LLVM_ELF_SWITCH_RELOC_TYPE_NAME(enum) \
16  case ELF::enum: \
17  return #enum; \
18 
20  switch (Machine) {
21  case ELF::EM_X86_64:
22  switch (Type) {
61  default:
62  break;
63  }
64  break;
65  case ELF::EM_386:
66  switch (Type) {
107  default:
108  break;
109  }
110  break;
111  case ELF::EM_MIPS:
112  switch (Type) {
178  default:
179  break;
180  }
181  break;
182  case ELF::EM_AARCH64:
183  switch (Type) {
257  default:
258  break;
259  }
260  break;
261  case ELF::EM_ARM:
262  switch (Type) {
394  default:
395  break;
396  }
397  break;
398  case ELF::EM_HEXAGON:
399  switch (Type) {
486  default:
487  break;
488  }
489  break;
490  case ELF::EM_PPC:
491  switch (Type) {
545  default:
546  break;
547  }
548  break;
549  case ELF::EM_PPC64:
550  switch (Type) {
633  default:
634  break;
635  }
636  break;
637  case ELF::EM_S390:
638  switch (Type) {
701  default:
702  break;
703  }
704  break;
705  default:
706  break;
707  }
708  return "Unknown";
709 }
710 
711 #undef LLVM_ELF_SWITCH_RELOC_TYPE_NAME
712 
713 } // end namespace object
714 } // end namespace llvm
#define LLVM_ELF_SWITCH_RELOC_TYPE_NAME(enum)
Definition: ELF.cpp:15
COFF::MachineTypes Machine
Definition: COFFYAML.cpp:211
StringRef getELFRelocationTypeName(uint32_t Machine, uint32_t Type)
Definition: ELF.cpp:19