From 23653b1265439147c27893a6832a70c93d0623dc Mon Sep 17 00:00:00 2001 From: Nico Rieck Date: Mon, 17 Mar 2014 01:46:28 +0000 Subject: llvm-readobj: Add test for COFF auxiliary symbols as used by C++/CLI git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@204023 91177308-0d34-0410-b5e6-96231b3b80d8 --- tools/llvm-readobj/COFFDumper.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'tools/llvm-readobj') diff --git a/tools/llvm-readobj/COFFDumper.cpp b/tools/llvm-readobj/COFFDumper.cpp index dfe89d69ec..28ac3cb416 100644 --- a/tools/llvm-readobj/COFFDumper.cpp +++ b/tools/llvm-readobj/COFFDumper.cpp @@ -1022,9 +1022,11 @@ void COFFDumper::printSymbol(symbol_iterator SymI) { DictScope AS(W, "AuxFileRecord"); W.printString("FileName", StringRef(Aux->FileName)); + // C++/CLI creates external ABS symbols for non-const appdomain globals. + // These are also followed by an auxiliary section definition. } else if (Symbol->StorageClass == COFF::IMAGE_SYM_CLASS_STATIC || (Symbol->StorageClass == COFF::IMAGE_SYM_CLASS_EXTERNAL && - Symbol->SectionNumber != COFF::IMAGE_SYM_UNDEFINED)) { + Symbol->SectionNumber == COFF::IMAGE_SYM_ABSOLUTE)) { const coff_aux_section_definition *Aux; if (error(getSymbolAuxData(Obj, Symbol + I, Aux))) break; -- cgit v1.2.3