diff options
| author | Muhammad Omair Javaid <omair.javaid@linaro.org> | 2019-12-05 13:04:04 +0500 |
|---|---|---|
| committer | Muhammad Omair Javaid <omair.javaid@linaro.org> | 2019-12-05 13:10:04 +0500 |
| commit | 8b8185bb1b456e0ccf7b1ed1f00bc646853ab004 (patch) | |
| tree | a6bcf58ce378373c867c73449e0eb343ef862522 /lldb/source/Utility | |
| parent | e00e5d3347a37d0eda8429a32e3bee68f7bdf970 (diff) | |
| download | bcm5719-llvm-8b8185bb1b456e0ccf7b1ed1f00bc646853ab004.tar.gz bcm5719-llvm-8b8185bb1b456e0ccf7b1ed1f00bc646853ab004.zip | |
Avoid triple corruption while merging core info
Summary:
This patch fixes a bug where when target triple created from elf information
is arm-*-linux-eabihf and platform triple is armv8l-*-linux-gnueabihf. Merging
both triple results in armv8l--unknown-unknown.
This happens because we order a triple update while calling CoreUpdated and
CoreUpdated creates a new triple with no vendor or environment information.
Making sure we do not update triple and just update to more specific core
fixes the issue.
Reviewers: labath, jasonmolenda, clayborg
Reviewed By: jasonmolenda
Subscribers: jankratochvil, kristof.beyls, lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D70155
Diffstat (limited to 'lldb/source/Utility')
| -rw-r--r-- | lldb/source/Utility/ArchSpec.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lldb/source/Utility/ArchSpec.cpp b/lldb/source/Utility/ArchSpec.cpp index 2bebecb2c67..bbfa5cf61d0 100644 --- a/lldb/source/Utility/ArchSpec.cpp +++ b/lldb/source/Utility/ArchSpec.cpp @@ -868,7 +868,7 @@ void ArchSpec::MergeFrom(const ArchSpec &other) { IsCompatibleMatch(other) && GetCore() == ArchSpec::eCore_arm_generic && other.GetCore() != ArchSpec::eCore_arm_generic) { m_core = other.GetCore(); - CoreUpdated(true); + CoreUpdated(false); } if (GetFlags() == 0) { SetFlags(other.GetFlags()); |

