BareMetal: Add AVR32 architecture to the ProjectExplorer::Abi

Change-Id: I2d70dda8d91bccc34b6e1c16c70bc5b3e0ca1b1f
Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
Denis Shienkov
2020-05-13 21:58:57 +03:00
parent 776fd7961a
commit e35f945758
2 changed files with 17 additions and 0 deletions

View File

@@ -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;

View File

@@ -56,6 +56,7 @@ public:
PowerPCArchitecture,
ShArchitecture,
AvrArchitecture,
Avr32Architecture,
XtensaArchitecture,
Mcs51Architecture,
Mcs251Architecture,