ELF improvements:
Handle large integers, x86_fp80, ConstantAggregateZero, and two more ConstantExpr:
GetElementPtr and IntToPtr
Set SHF_MERGE bit for mergeable strings
Avoid zero initialized strings to be classified as a bss symbol
Don't allow common symbols to be classified as STB_WEAK
Add a constant to be used as a global value offset in data relocations 



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78476 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/ELF.h b/lib/CodeGen/ELF.h
index 499af10..c9ec9b1 100644
--- a/lib/CodeGen/ELF.h
+++ b/lib/CodeGen/ELF.h
@@ -136,11 +136,11 @@
       return Sym;
     }
 
-    // getFileSym - Returns a elf symbol to represent the module identifier
-    static ELFSym *getUndefGV(const GlobalValue *GV) {
+    // getUndefGV - Returns a STT_NOTYPE symbol
+    static ELFSym *getUndefGV(const GlobalValue *GV, unsigned Bind) {
       ELFSym *Sym = new ELFSym();
       Sym->Source.GV = GV;
-      Sym->setBind(STB_GLOBAL);
+      Sym->setBind(Bind);
       Sym->setType(STT_NOTYPE);
       Sym->setVisibility(STV_DEFAULT);
       Sym->SectionIdx = 0;  //ELFSection::SHN_UNDEF;