diff options
Diffstat (limited to 'lib/CodeGen/ELF.h')
| -rw-r--r-- | lib/CodeGen/ELF.h | 10 | 
1 files changed, 9 insertions, 1 deletions
| diff --git a/lib/CodeGen/ELF.h b/lib/CodeGen/ELF.h index 28b6be8910e5..8d92373b713d 100644 --- a/lib/CodeGen/ELF.h +++ b/lib/CodeGen/ELF.h @@ -144,6 +144,9 @@ namespace llvm {      uint8_t Other;      unsigned short SectionIdx; +    // Symbol index into the Symbol table +    unsigned SymTabIdx; +      enum {         STB_LOCAL = 0,        STB_GLOBAL = 1, @@ -168,7 +171,8 @@ namespace llvm {      ELFSym(const GlobalValue *gv) : GV(gv), IsCommon(false), IsBss(false),                                      IsConstant(false), NameIdx(0), Value(0),                                      Size(0), Info(0), Other(STV_DEFAULT), -                                    SectionIdx(ELFSection::SHN_UNDEF) { +                                    SectionIdx(ELFSection::SHN_UNDEF), +                                    SymTabIdx(0) {        if (!GV)          return; @@ -191,6 +195,10 @@ namespace llvm {        return (Info >> 4) & 0xf;      } +    unsigned getType() { +      return Info & 0xf; +    } +      void setBind(unsigned X) {        assert(X == (X & 0xF) && "Bind value out of range!");        Info = (Info & 0x0F) | (X << 4); | 
