Add a SymbolicFile interface between Binary and ObjectFile.
authorRafael Espindola <rafael.espindola@gmail.com>
Fri, 21 Feb 2014 20:10:59 +0000 (20:10 +0000)
committerRafael Espindola <rafael.espindola@gmail.com>
Fri, 21 Feb 2014 20:10:59 +0000 (20:10 +0000)
commit91f86b7e1c07e73667537e6b849f9977caeeed3d
treeeec10058b9d06564ce0339282b7b202d1f76c17d
parent3825c08a609de48d5752e4d74e3c03cca651f894
Add a SymbolicFile interface between Binary and ObjectFile.

This interface allows IRObjectFile to be implemented without having dummy
methods for all section and segment related methods.

Both llvm-ar and llvm-nm are changed to use it. Unfortunately the mangler is
still not plugged in since it requires some refactoring to make a Module hold
a DataLayout.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@201881 91177308-0d34-0410-b5e6-96231b3b80d8
21 files changed:
include/llvm/Object/Archive.h
include/llvm/Object/Binary.h
include/llvm/Object/COFF.h
include/llvm/Object/ELFObjectFile.h
include/llvm/Object/IRObjectFile.h [new file with mode: 0644]
include/llvm/Object/MachO.h
include/llvm/Object/ObjectFile.h
include/llvm/Object/SymbolicFile.h [new file with mode: 0644]
lib/Object/Archive.cpp
lib/Object/Binary.cpp
lib/Object/CMakeLists.txt
lib/Object/COFFObjectFile.cpp
lib/Object/IRObjectFile.cpp [new file with mode: 0644]
lib/Object/LLVMBuild.txt
lib/Object/MachOObjectFile.cpp
lib/Object/ObjectFile.cpp
lib/Object/SymbolicFile.cpp [new file with mode: 0644]
test/Object/nm-ir.ll [new file with mode: 0644]
tools/llvm-ar/llvm-ar.cpp
tools/llvm-nm/CMakeLists.txt
tools/llvm-nm/llvm-nm.cpp