summaryrefslogtreecommitdiffstats
path: root/BaseTools/Source
diff options
context:
space:
mode:
authorKuo, Ted <ted.kuo@intel.com>2022-08-29 17:28:17 +0800
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>2022-09-15 07:04:50 +0000
commit45297e6c9bd1be53b3c462adb9b37b4df2ea8681 (patch)
tree85b7e0824ca1b937a95e8e8d82c5cb9ddd75c5a8 /BaseTools/Source
parent1dccbd1a382aa57719e4e0432b3bd6a03a888507 (diff)
downloadedk2-45297e6c9bd1be53b3c462adb9b37b4df2ea8681.tar.gz
edk2-45297e6c9bd1be53b3c462adb9b37b4df2ea8681.tar.bz2
edk2-45297e6c9bd1be53b3c462adb9b37b4df2ea8681.zip
BaseTools: 64bit FSP FV map file cannot be created correctly
https://bugzilla.tianocore.org/show_bug.cgi?id=4035 64bit FSP FV map file cannot be created correctly when using CLANG compiler. When compiling 64bit FSP with CLANG, there is no prefix symbol '_' added to function name. Hence FSP FV map file cannot be created properly. Updated the if condition for CLANG in GenFv to get the issue fixed. Cc: Bob Feng <bob.c.feng@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Cc: Yuwei Chen <yuwei.chen@intel.com> Cc: Lee Hamel <lee.m.hamel@intel.com> Signed-off-by: Ted Kuo <ted.kuo@intel.com> Reviewed-by: Bob Feng <bob.c.feng@intel.com>
Diffstat (limited to 'BaseTools/Source')
-rw-r--r--BaseTools/Source/C/GenFv/GenFvInternalLib.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/BaseTools/Source/C/GenFv/GenFvInternalLib.c b/BaseTools/Source/C/GenFv/GenFvInternalLib.c
index d650a527a5..d28ac8f6eb 100644
--- a/BaseTools/Source/C/GenFv/GenFvInternalLib.c
+++ b/BaseTools/Source/C/GenFv/GenFvInternalLib.c
@@ -1004,7 +1004,7 @@ Returns:
if (IsUseClang) {
sscanf (Line, "%llx %s %s %s", &TempLongAddress, KeyWord, KeyWord2, FunctionTypeName);
FunctionAddress = (UINT64) TempLongAddress;
- if (FunctionTypeName [0] == '_' ) {
+ if (FunctionTypeName [0] != '/' && FunctionTypeName [0] != '.' && FunctionTypeName [1] != ':') {
fprintf (FvMapFile, " 0x%010llx ", (unsigned long long) (ImageBaseAddress + FunctionAddress - LinkTimeBaseAddress));
fprintf (FvMapFile, "%s\n", FunctionTypeName);
}