forked from OSchip/llvm-project
objdump: identify WoA WinCOFF/ARM correctly
Since LLVM currently only supports WinCOFF, assume that the input is WinCOFF rather than another type of COFF file (ECOFF/XCOFF). If the architecture is detected as thumb (e.g. the file has a IMAGE_FILE_MACHINE_ARMNT magic) then use a triple of thumbv7-windows. This allows for objdump to properly handle WoA object files without having to specify the target triple manually. llvm-svn: 206446
This commit is contained in:
parent
1614b26886
commit
98938f1e0a
|
@ -167,6 +167,12 @@ static const Target *getTarget(const ObjectFile *Obj = NULL) {
|
|||
// the best we can do here is indicate that it is mach-o.
|
||||
if (Obj->isMachO())
|
||||
TheTriple.setObjectFormat(Triple::MachO);
|
||||
|
||||
if (Obj->isCOFF()) {
|
||||
const auto COFFObj = dyn_cast<COFFObjectFile>(Obj);
|
||||
if (COFFObj->getArch() == Triple::thumb)
|
||||
TheTriple.setTriple("thumbv7-windows");
|
||||
}
|
||||
}
|
||||
} else
|
||||
TheTriple.setTriple(Triple::normalize(TripleName));
|
||||
|
|
Loading…
Reference in New Issue