summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenis Shienkov <denis.shienkov@gmail.com>2020-05-26 15:56:01 +0300
committerDenis Shienkov <denis.shienkov@gmail.com>2020-05-27 07:28:12 +0000
commitb57ca3bcfacc3ad5bcce3729e1a69cc0eefcee94 (patch)
treeafc7b193eb18bc5b1da80209de0f8cb530b20bb4
parentd03bbab58e335b7453f2433fc661284dea664221 (diff)
downloadqt-creator-b57ca3bcfacc3ad5bcce3729e1a69cc0eefcee94.tar.gz
BareMetal: Auto-detect IAR toolchain for Renesas R32C architecture
This patch implements auto-detection for the R32C toolchain, provided by IAR Systems: * https://www.iar.com/iar-embedded-workbench/#!?architecture=R32C Change-Id: I22b6f2afdc902f659c9adda18550cc915cf48125 Reviewed-by: hjk <hjk@qt.io>
-rw-r--r--src/plugins/baremetal/iarewtoolchain.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/plugins/baremetal/iarewtoolchain.cpp b/src/plugins/baremetal/iarewtoolchain.cpp
index 7e81695b77..a4fbb10769 100644
--- a/src/plugins/baremetal/iarewtoolchain.cpp
+++ b/src/plugins/baremetal/iarewtoolchain.cpp
@@ -81,7 +81,7 @@ static QString cppLanguageOption(const FilePath &compiler)
|| baseName == "iccv850" || baseName == "icc78k"
|| baseName == "iccavr32" || baseName == "iccsh"
|| baseName == "icccf" || baseName == "iccm32c"
- || baseName == "iccm16c") {
+ || baseName == "iccm16c" || baseName == "iccr32c") {
return QString("--ec++");
}
return {};
@@ -227,6 +227,8 @@ static Abi::Architecture guessArchitecture(const Macros &macros)
return Abi::Architecture::M32CArchitecture;
if (macro.key == "__ICCM16C__")
return Abi::Architecture::M16CArchitecture;
+ if (macro.key == "__ICCR32C__")
+ return Abi::Architecture::R32CArchitecture;
}
return Abi::Architecture::UnknownArchitecture;
}
@@ -260,7 +262,8 @@ static Abi::BinaryFormat guessFormat(Abi::Architecture arch)
|| arch == Abi::Architecture::K78Architecture
|| arch == Abi::Architecture::M68KArchitecture
|| arch == Abi::Architecture::M32CArchitecture
- || arch == Abi::Architecture::M16CArchitecture) {
+ || arch == Abi::Architecture::M16CArchitecture
+ || arch == Abi::Architecture::R32CArchitecture) {
return Abi::BinaryFormat::UbrofFormat;
}
return Abi::BinaryFormat::UnknownFormat;
@@ -510,6 +513,7 @@ QList<ToolChain *> IarToolChainFactory::autoDetect(const QList<ToolChain *> &alr
{{"EWCF"}, {"/cf/bin/icccf.exe"}},
{{"EWM32C"}, {"/m32c/bin/iccm32c.exe"}},
{{"EWM16C"}, {"/m16c/bin/iccm16c.exe"}},
+ {{"EWR32C"}, {"/r32c/bin/iccr32c.exe"}},
};
QSettings registry(kRegistryNode, QSettings::NativeFormat);