diff options
author | Denis Shienkov <denis.shienkov@gmail.com> | 2020-05-13 21:58:57 +0300 |
---|---|---|
committer | Denis Shienkov <denis.shienkov@gmail.com> | 2020-05-14 07:40:53 +0000 |
commit | e35f945758e46051a85c7d33a91eedcf31f5d98a (patch) | |
tree | 08550891cf22fe2eb8557a463b7197ac679b44e1 /src | |
parent | 776fd7961a41cd03a9b3264f74ea439ae8dcf727 (diff) |
BareMetal: Add AVR32 architecture to the ProjectExplorer::Abi
Change-Id: I2d70dda8d91bccc34b6e1c16c70bc5b3e0ca1b1f
Reviewed-by: hjk <hjk@qt.io>
Diffstat (limited to 'src')
-rw-r--r-- | src/plugins/projectexplorer/abi.cpp | 16 | ||||
-rw-r--r-- | src/plugins/projectexplorer/abi.h | 1 |
2 files changed, 17 insertions, 0 deletions
diff --git a/src/plugins/projectexplorer/abi.cpp b/src/plugins/projectexplorer/abi.cpp index 8493709b51..7c1a3a880c 100644 --- a/src/plugins/projectexplorer/abi.cpp +++ b/src/plugins/projectexplorer/abi.cpp @@ -159,6 +159,8 @@ static Abi::Architecture architectureFromQt() return Abi::PowerPCArchitecture; if (arch.startsWith("sh")) // Not in Qt documentation! return Abi::ShArchitecture; + if (arch.startsWith("avr32")) // Not in Qt documentation! + return Abi::Avr32Architecture; if (arch.startsWith("avr")) // Not in Qt documentation! return Abi::AvrArchitecture; if (arch.startsWith("asmjs")) @@ -491,6 +493,12 @@ Abi Abi::abiFromTargetTriplet(const QString &triple) flavor = GenericFlavor; format = ElfFormat; width = 16; + } else if (p == "avr32") { + arch = Avr32Architecture; + os = BareMetalOS; + flavor = GenericFlavor; + format = ElfFormat; + width = 32; } else if (p == "msp430") { arch = Msp430Architecture; os = BareMetalOS; @@ -699,6 +707,8 @@ QString Abi::toString(const Architecture &a) return QLatin1String("arm"); case AvrArchitecture: return QLatin1String("avr"); + case Avr32Architecture: + return QLatin1String("avr32"); case XtensaArchitecture: return QLatin1String("xtensa"); case X86Architecture: @@ -857,6 +867,8 @@ Abi::Architecture Abi::architectureFromString(const QStringRef &a) return ArmArchitecture; if (a == "avr") return AvrArchitecture; + if (a == "avr32") + return Avr32Architecture; if (a == "x86") return X86Architecture; if (a == "mcs51") @@ -1434,6 +1446,10 @@ void ProjectExplorer::ProjectExplorerPlugin::testAbiFromTargetTriplet_data() << int(Abi::BareMetalOS) << int(Abi::GenericFlavor) << int(Abi::ElfFormat) << 16; + QTest::newRow("avr32") << int(Abi::Avr32Architecture) + << int(Abi::BareMetalOS) << int(Abi::GenericFlavor) + << int(Abi::ElfFormat) << 32; + QTest::newRow("asmjs-unknown-emscripten") << int(Abi::AsmJsArchitecture) << int(Abi::UnknownOS) << int(Abi::UnknownFlavor) << int(Abi::EmscriptenFormat) << 32; diff --git a/src/plugins/projectexplorer/abi.h b/src/plugins/projectexplorer/abi.h index 060a1a3a1c..334cc8242d 100644 --- a/src/plugins/projectexplorer/abi.h +++ b/src/plugins/projectexplorer/abi.h @@ -56,6 +56,7 @@ public: PowerPCArchitecture, ShArchitecture, AvrArchitecture, + Avr32Architecture, XtensaArchitecture, Mcs51Architecture, Mcs251Architecture, |