f409988d5726c1f38dc90de22144811abdf5aa38
[oota-llvm.git] / include / llvm / MC / MCELF.h
1 //===- lib/MC/MCELF.h - ELF MC --------------------------------------------===//
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 // This file contains some support functions used by the ELF Streamer and
11 // ObjectWriter.
12 //
13 //===----------------------------------------------------------------------===//
14
15 #ifndef LLVM_MC_MCELF_H
16 #define LLVM_MC_MCELF_H
17
18 namespace llvm {
19 class MCSymbolData;
20
21 class MCELF {
22  public:
23   static void SetBinding(MCSymbolData &SD, unsigned Binding);
24   static unsigned GetBinding(const MCSymbolData &SD);
25   static void SetType(MCSymbolData &SD, unsigned Type);
26   static unsigned GetType(const MCSymbolData &SD);
27   static void SetVisibility(MCSymbolData &SD, unsigned Visibility);
28   static unsigned GetVisibility(const MCSymbolData &SD);
29   static void setOther(MCSymbolData &SD, unsigned Other);
30   static unsigned getOther(const MCSymbolData &SD);
31 };
32
33 }
34
35 #endif