diff --git a/qualcomm-software/embedded-multilib/json/multilib.json b/qualcomm-software/embedded-multilib/json/multilib.json index 8291cfb6e12c..b11e2bbf2747 100644 --- a/qualcomm-software/embedded-multilib/json/multilib.json +++ b/qualcomm-software/embedded-multilib/json/multilib.json @@ -55,6 +55,12 @@ "json": "armv7m_soft_nofp.json", "flags": "--target=thumbv7m-unknown-none-eabi -mfpu=none" }, + { + "variant": "armv7m_soft_nofp_nopic", + "json": "armv7m_soft_nofp_nopic.json", + "flags": "--target=thumbv7m-unknown-none-eabi -mfpu=none -fno-pic", + "libraries_supported": "picolibc" + }, { "variant": "riscv32imc_ilp32_nothreads_nopic", "json": "riscv32imc_ilp32_nothreads_nopic.json", @@ -121,7 +127,7 @@ "flags": "--target=riscv32-unknown-unknown-elf -march=rv32imac_zcb_zcmp_zba_zbb -mabi=ilp32 -fno-pic", "libraries_supported": "picolibc" }, - { + { "variant": "riscv32imafc_ilp32f", "json": "riscv32imafc_ilp32f.json", "flags": "--target=riscv32-unknown-unknown-elf -march=rv32imafc -mabi=ilp32f", @@ -139,6 +145,12 @@ "flags": "--target=riscv32-unknown-unknown-elf -march=rv32imafc_zcb_zcmp_zba_zbb -mabi=ilp32f", "libraries_supported": "picolibc" }, + { + "variant": "riscv32gc_ilp32d", + "json": "riscv32gc_ilp32d.json", + "flags": "--target=riscv32-unknown-unknown-elf -march=rv32gc -mabi=ilp32d", + "libraries_supported": "picolibc" + }, { "variant": "riscv32im_xqci_ilp32_nothreads_nopic", "json": "riscv32im_xqci_ilp32_nothreads_nopic.json", diff --git a/qualcomm-software/embedded-multilib/json/variants/armv7m_soft_nofp_nopic.json b/qualcomm-software/embedded-multilib/json/variants/armv7m_soft_nofp_nopic.json new file mode 100644 index 000000000000..d7e18a672090 --- /dev/null +++ b/qualcomm-software/embedded-multilib/json/variants/armv7m_soft_nofp_nopic.json @@ -0,0 +1,25 @@ +{ + "args": { + "common": { + "TARGET_ARCH": "armv7m", + "VARIANT": "armv7m_soft_nofp_nopic", + "COMPILE_FLAGS": "-mfloat-abi=soft -march=armv7m -mfpu=none -mno-unaligned-access", + "ENABLE_EXCEPTIONS": "OFF", + "ENABLE_RTTI": "OFF", + "TEST_EXECUTOR": "qemu", + "QEMU_MACHINE": "mps2-an385", + "QEMU_CPU": "cortex-m3", + "FLASH_ADDRESS": "0x00000000", + "FLASH_SIZE": "0x00400000", + "RAM_ADDRESS": "0x20000000", + "RAM_SIZE": "0x00200000", + "LIBRARY_BUILD_TYPE": "minsizerelease" + }, + "picolibc": { + "ENABLE_CXX_LIBS": "ON", + "ENABLE_LIBC_TESTS": "ON", + "ENABLE_COMPILER_RT_TESTS": "OFF", + "ENABLE_LIBCXX_TESTS": "OFF" + } + } +} diff --git a/qualcomm-software/embedded-multilib/json/variants/riscv32gc_ilp32d.json b/qualcomm-software/embedded-multilib/json/variants/riscv32gc_ilp32d.json new file mode 100644 index 000000000000..5509c0932aa7 --- /dev/null +++ b/qualcomm-software/embedded-multilib/json/variants/riscv32gc_ilp32d.json @@ -0,0 +1,26 @@ +{ + "args": { + "common": { + "TARGET_ARCH": "riscv32", + "VARIANT": "riscv32gc_ilp32d", + "COMPILE_FLAGS": "-march=rv32gc -mabi=ilp32d -fPIC", + "ENABLE_EXCEPTIONS": "OFF", + "ENABLE_RTTI": "OFF", + "TEST_EXECUTOR": "qemu", + "QEMU_MACHINE": "virt", + "QEMU_CPU": "rv32", + "QEMU_PARAMS": "-bios none", + "FLASH_ADDRESS": "0x80000000", + "FLASH_SIZE": "0x00400000", + "RAM_ADDRESS": "0x80400000", + "RAM_SIZE": "0x00200000", + "LIBRARY_BUILD_TYPE": "minsizerelease" + }, + "picolibc": { + "ENABLE_CXX_LIBS": "ON", + "ENABLE_LIBC_TESTS": "ON", + "ENABLE_COMPILER_RT_TESTS": "OFF", + "ENABLE_LIBCXX_TESTS": "OFF" + } + } +} diff --git a/qualcomm-software/embedded-runtimes/test-support/xfails.py b/qualcomm-software/embedded-runtimes/test-support/xfails.py index 0421a8d2064a..1eeaccc7866a 100644 --- a/qualcomm-software/embedded-runtimes/test-support/xfails.py +++ b/qualcomm-software/embedded-runtimes/test-support/xfails.py @@ -119,7 +119,7 @@ def check_r52_warning(): description="If the installed default multilib does not have a library available for -mcpu=cortex-r52, this test will fail.", ), XFail( - name="picolibc_rv64gc", + name="picolibc rv32/64gc", testnames=[ "math_errhandling.test", "test-fma.test", @@ -127,6 +127,7 @@ def check_r52_warning(): result=NewResult.XFAILED, project="picolibc", variants=[ + "riscv32gc_ilp32d", "riscv64gc_lp64d_nopic", "riscv64gc_zba_zbb_lp64d_nopic", "riscv64gc_lp64_nopic",