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. llvm-svn: 76700
This commit is contained in:
@@ -547,19 +547,7 @@ const Type *MachineConstantPoolEntry::getType() const {
|
||||
unsigned MachineConstantPoolEntry::getRelocationInfo() const {
|
||||
if (isMachineConstantPoolEntry())
|
||||
return Val.MachineCPVal->getRelocationInfo();
|
||||
|
||||
// FIXME: This API sucks.
|
||||
|
||||
// If no relocations, return 0.
|
||||
if (!Val.ConstVal->ContainsRelocations())
|
||||
return 0;
|
||||
|
||||
// If it contains no global relocations, return 1.
|
||||
if (!Val.ConstVal->ContainsRelocations(Reloc::Global))
|
||||
return 1;
|
||||
|
||||
// Otherwise, it has general relocations.
|
||||
return 2;
|
||||
return Val.ConstVal->getRelocationInfo();
|
||||
}
|
||||
|
||||
MachineConstantPool::~MachineConstantPool() {
|
||||
|
||||
Reference in New Issue
Block a user