diff options
author | Kuo, Ted <ted.kuo@intel.com> | 2022-08-29 17:28:17 +0800 |
---|---|---|
committer | mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> | 2022-09-15 07:04:50 +0000 |
commit | 45297e6c9bd1be53b3c462adb9b37b4df2ea8681 (patch) | |
tree | 85b7e0824ca1b937a95e8e8d82c5cb9ddd75c5a8 /BaseTools/Source | |
parent | 1dccbd1a382aa57719e4e0432b3bd6a03a888507 (diff) | |
download | edk2-45297e6c9bd1be53b3c462adb9b37b4df2ea8681.tar.gz |
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.c | 2 |
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);
}
|