1249259Sdim//===- lib/MC/MCELF.h - ELF MC --------------------------------------------===// 2249259Sdim// 3249259Sdim// The LLVM Compiler Infrastructure 4249259Sdim// 5249259Sdim// This file is distributed under the University of Illinois Open Source 6249259Sdim// License. See LICENSE.TXT for details. 7249259Sdim// 8249259Sdim//===----------------------------------------------------------------------===// 9249259Sdim// 10249259Sdim// This file contains some support functions used by the ELF Streamer and 11249259Sdim// ObjectWriter. 12249259Sdim// 13249259Sdim//===----------------------------------------------------------------------===// 14249259Sdim 15249259Sdim#ifndef LLVM_MC_MCELF_H 16249259Sdim#define LLVM_MC_MCELF_H 17249259Sdim 18249259Sdim#include "llvm/MC/MCExpr.h" 19249259Sdim 20249259Sdimnamespace llvm { 21249259Sdimclass MCSymbolData; 22249259Sdim 23249259Sdimclass MCELF { 24249259Sdim public: 25249259Sdim static void SetBinding(MCSymbolData &SD, unsigned Binding); 26249259Sdim static unsigned GetBinding(const MCSymbolData &SD); 27249259Sdim static void SetType(MCSymbolData &SD, unsigned Type); 28249259Sdim static unsigned GetType(const MCSymbolData &SD); 29249259Sdim static void SetVisibility(MCSymbolData &SD, unsigned Visibility); 30249259Sdim static unsigned GetVisibility(MCSymbolData &SD); 31249259Sdim static void setOther(MCSymbolData &SD, unsigned Other); 32249259Sdim static unsigned getOther(MCSymbolData &SD); 33249259Sdim}; 34249259Sdim 35249259Sdim} 36249259Sdim 37249259Sdim#endif 38