From bf139d83eca3ef5442aa875458193d44ddf9dc6c Mon Sep 17 00:00:00 2001 From: yvt Date: Mon, 23 May 2022 09:52:36 +0900 Subject: systems: support cross-compiling for Renesas RX microcontrollers (#173858) --- lib/systems/doubles.nix | 3 ++- lib/systems/examples.nix | 5 +++++ lib/systems/inspect.nix | 1 + lib/systems/parse.nix | 1 + 4 files changed, 9 insertions(+), 1 deletion(-) (limited to 'lib') diff --git a/lib/systems/doubles.nix b/lib/systems/doubles.nix index 3cdebbc07c1fa..90a6eb9f35c97 100644 --- a/lib/systems/doubles.nix +++ b/lib/systems/doubles.nix @@ -41,7 +41,7 @@ let # none "aarch64_be-none" "aarch64-none" "arm-none" "armv6l-none" "avr-none" "i686-none" "msp430-none" "or1k-none" "m68k-none" "powerpc-none" "powerpcle-none" - "riscv32-none" "riscv64-none" "s390-none" "s390x-none" "vc4-none" + "riscv32-none" "riscv64-none" "rx-none" "s390-none" "s390x-none" "vc4-none" "x86_64-none" # OpenBSD @@ -76,6 +76,7 @@ in { riscv = filterDoubles predicates.isRiscV; riscv32 = filterDoubles predicates.isRiscV32; riscv64 = filterDoubles predicates.isRiscV64; + rx = filterDoubles predicates.isRx; vc4 = filterDoubles predicates.isVc4; or1k = filterDoubles predicates.isOr1k; m68k = filterDoubles predicates.isM68k; diff --git a/lib/systems/examples.nix b/lib/systems/examples.nix index 997a7a8c273ae..170db6fb9fa0d 100644 --- a/lib/systems/examples.nix +++ b/lib/systems/examples.nix @@ -145,6 +145,11 @@ rec { libc = "newlib"; }; + rx-embedded = { + config = "rx-none-elf"; + libc = "newlib"; + }; + msp430 = { config = "msp430-elf"; libc = "newlib"; diff --git a/lib/systems/inspect.nix b/lib/systems/inspect.nix index 27c25deafec38..00cbe4f012cba 100644 --- a/lib/systems/inspect.nix +++ b/lib/systems/inspect.nix @@ -26,6 +26,7 @@ rec { isRiscV = { cpu = { family = "riscv"; }; }; isRiscV32 = { cpu = { family = "riscv"; bits = 32; }; }; isRiscV64 = { cpu = { family = "riscv"; bits = 64; }; }; + isRx = { cpu = { family = "rx"; }; }; isSparc = { cpu = { family = "sparc"; }; }; isWasm = { cpu = { family = "wasm"; }; }; isMsp430 = { cpu = { family = "msp430"; }; }; diff --git a/lib/systems/parse.nix b/lib/systems/parse.nix index 3ceddbb599b9c..bf436ec8db579 100644 --- a/lib/systems/parse.nix +++ b/lib/systems/parse.nix @@ -116,6 +116,7 @@ rec { alpha = { bits = 64; significantByte = littleEndian; family = "alpha"; }; + rx = { bits = 32; significantByte = littleEndian; family = "rx"; }; msp430 = { bits = 16; significantByte = littleEndian; family = "msp430"; }; avr = { bits = 8; family = "avr"; }; -- cgit 1.4.1