COFF: Assign the correct symbol type to internal functions.
authorPeter Collingbourne <peter@pcc.me.uk>
Thu, 6 Aug 2015 05:26:35 +0000 (05:26 +0000)
committerPeter Collingbourne <peter@pcc.me.uk>
Thu, 6 Aug 2015 05:26:35 +0000 (05:26 +0000)
commitf4fa49e750dd969f352ab65e20436f39a669594f
treec79f6549216a261b6111457db1526c4910c8bd68
parentda5300489f0dc6f6b37a219682a316c834d01a0c
COFF: Assign the correct symbol type to internal functions.

The COFFSymbolRef::isFunctionDefinition() function tests for several conditions
that are not related to whether a symbol is a function, but rather whether
the symbol meets the requirements for a function definition auxiliary record,
which excludes certain symbols such as internal functions and undefined
references. The test we need to determine the symbol type is much simpler:
we only need to compare the complex type against IMAGE_SYM_DTYPE_FUNCTION.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@244195 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Object/COFFObjectFile.cpp
test/tools/llvm-objdump/X86/Inputs/internal.exe.coff-x86_64 [new file with mode: 0755]
test/tools/llvm-objdump/X86/coff-dis-internal.test [new file with mode: 0644]