summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/ELF.h
diff options
context:
space:
mode:
authorBruno Cardoso Lopes <bruno.cardoso@gmail.com>2009-06-25 07:36:24 +0000
committerBruno Cardoso Lopes <bruno.cardoso@gmail.com>2009-06-25 07:36:24 +0000
commite364a233c026c851b23c7c2fab29dd7e7374f90f (patch)
tree9bc71fbc11e8518af0e961227eeed8d0fa733836 /llvm/lib/CodeGen/ELF.h
parentc53b444d364e111d86c6183c0f2ada2ce72967c8 (diff)
downloadbcm5719-llvm-e364a233c026c851b23c7c2fab29dd7e7374f90f.tar.gz
bcm5719-llvm-e364a233c026c851b23c7c2fab29dd7e7374f90f.zip
Support Constant Pool Sections
Add section symbols to the symbol table llvm-svn: 74170
Diffstat (limited to 'llvm/lib/CodeGen/ELF.h')
-rw-r--r--llvm/lib/CodeGen/ELF.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/llvm/lib/CodeGen/ELF.h b/llvm/lib/CodeGen/ELF.h
index 28b6be8910e..8d92373b713 100644
--- a/llvm/lib/CodeGen/ELF.h
+++ b/llvm/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);
OpenPOWER on IntegriCloud