reimplement Constant::ContainsRelocations as 
Constant::getRelocationInfo(), which has a much simpler
to use API.  It still should not be part of libvmcore, but
is better than it was.  Also teach it to be smart about 
hidden visibility.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76700 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Target/TargetAsmInfo.cpp b/lib/Target/TargetAsmInfo.cpp
index 580c3fe..96814fe 100644
--- a/lib/Target/TargetAsmInfo.cpp
+++ b/lib/Target/TargetAsmInfo.cpp
@@ -202,13 +202,13 @@
 
   if (isSuitableForBSS(GVar)) {
     // Variable can be easily put to BSS section.
-    return (isThreadLocal ? SectionKind::ThreadBSS : SectionKind::BSS);
+    return isThreadLocal ? SectionKind::ThreadBSS : SectionKind::BSS;
   } else if (GVar->isConstant() && !isThreadLocal) {
     // Now we know, that variable has initializer and it is constant. We need to
     // check its initializer to decide, which section to output it into. Also
     // note, there is no thread-local r/o section.
     Constant *C = GVar->getInitializer();
-    if (C->ContainsRelocations(Reloc::LocalOrGlobal)) {
+    if (C->getRelocationInfo() != 0) {
       // Decide whether it is still possible to put symbol into r/o section.
       if (TM.getRelocationModel() != Reloc::Static)
         return SectionKind::Data;