diff options
author | Denis Shienkov <denis.shienkov@gmail.com> | 2021-01-25 18:05:42 +0300 |
---|---|---|
committer | Denis Shienkov <denis.shienkov@gmail.com> | 2021-01-26 15:41:41 +0000 |
commit | dd07178bccc317d588b8738b60d04ca7896b0ade (patch) | |
tree | 58c78bbad6ddb3ef2f29cd673e5b0b7e31d14c22 /share/qbs | |
parent | 3fbff749c6e1a396fd4e03f6287f5180ff09c1f0 (diff) |
baremetal: Add support for HCS08 architectures to IAR toolchain
This patch adds the HCS08 architectures, provided
by Freescale Semiconductor:
* https://en.wikipedia.org/wiki/Motorola_S08
Change-Id: Idd668e30bfeb69e588b93b15131e741924b66f40
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Diffstat (limited to 'share/qbs')
-rw-r--r-- | share/qbs/modules/cpp/iar.js | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/share/qbs/modules/cpp/iar.js b/share/qbs/modules/cpp/iar.js index 2928aa2f8..2e44a2514 100644 --- a/share/qbs/modules/cpp/iar.js +++ b/share/qbs/modules/cpp/iar.js @@ -43,7 +43,8 @@ function supportXLinker(architecture) { || architecture === "msp430" || architecture === "v850" || architecture === "m68k" || architecture === "m32c" || architecture === "r32c" || architecture === "m16c" - || architecture === "cr16" || architecture === "hcs12"; + || architecture === "cr16" || architecture === "hcs12" + || architecture === "hcs8"; } function supportILinker(architecture) { @@ -59,7 +60,8 @@ function supportXArchiver(architecture) { || architecture === "78k" || architecture === "avr32" || architecture === "m68k" || architecture === "m32c" || architecture === "r32c" || architecture === "m16c" - || architecture === "cr16" || architecture === "hcs12"; + || architecture === "cr16" || architecture === "hcs12" + || architecture === "hcs8"; } function supportIArchiver(architecture) { @@ -96,6 +98,8 @@ function architectureCode(architecture) { return "45"; case "hcs12": return "12"; + case "hcs8": + return "78"; case "rh850": case "rl78": case "rx": case "stm8": case "sh": case "riscv": return ""; default: @@ -145,6 +149,8 @@ function compilerName(qbs) { return "icccr16c"; else if (architecture === "hcs12") return "icchcs12"; + else if (architecture === "hcs8") + return "iccs08"; throw "Unable to deduce compiler name for unsupported architecture: '" + architecture + "'"; } @@ -189,6 +195,8 @@ function assemblerName(qbs) { return "acr16c"; else if (architecture === "hcs12") return "ahcs12"; + else if (architecture === "hcs8") + return "as08"; throw "Unable to deduce assembler name for unsupported architecture: '" + architecture + "'"; } @@ -315,6 +323,8 @@ function guessArchitecture(macros) { return "cr16"; else if (macros["__ICCHCS12__"] === "1") return "hcs12"; + else if (macros["__ICCS08__"] === "1") + return "hcs8"; } function guessEndianness(macros) { @@ -335,7 +345,8 @@ function guessVersion(macros, architecture) || architecture === "rh850" || architecture === "v850" || architecture === "78k" || architecture === "avr32" || architecture === "sh" || architecture === "riscv" || architecture === "m68k" || architecture === "m32c" || architecture === "r32c" - || architecture === "m16c" || architecture === "cr16" || architecture === "hcs12") { + || architecture === "m16c" || architecture === "cr16" || architecture === "hcs12" + || architecture === "hcs8") { return { major: parseInt(version / 100), minor: parseInt(version % 100), patch: 0 } @@ -596,7 +607,7 @@ function compilerFlags(project, product, input, outputs, explicitlyDependsOn) { args.push("--no_warnings"); break; case "all": - if (architecture !== "78k" && architecture !== "hcs12") { + if (architecture !== "78k" && architecture !== "hcs12" && architecture !== "hcs8") { if (architecture !== "avr32" && architecture !== "r32c" && architecture !== "sh" && architecture !== "m16c") { args.push("--deprecated_feature_warnings=" @@ -704,7 +715,8 @@ function assemblerFlags(project, product, input, outputs, explicitlyDependsOn) { || architecture === "rx" || architecture === "rh850" || architecture === "avr32" || architecture === "sh" || architecture === "riscv" || architecture === "m68k" - || architecture === "r32c" || architecture === "cr16") { + || architecture === "r32c" || architecture === "cr16" + || architecture === "hcs8") { // Silent output generation flag. args.push("--silent"); // Warning level flags. |