zephyr/cmake/compiler
Nathan Krueger 6a5520c626 arch/riscv: Adding KConfig options for 'A' and 'M' RISC-V extensions
New KConfig options for 'A' and 'M' RISC-V extensions have been
added.  These are used to configure the '-march' string used by GCC
to produce a compatible binary for the requested RISC-V variant.
In order to maintain compatibility with all currently defined SoC,
default the options for HW mul / Atomics support to 'y', but allow
them to be overridden for any SoC which does not support these.

I tested this change locally via twister agaisnt a few RISC-V platforms
including some 32bit and 64bit. To verify the 4 possibilities of Atomics
& HW Mul: (No, No), (No, Yes), (Yes, No), (Yes, Yes -- current behavior),
I used an out-of-tree GCC (xPack RISC-V GCC) which has multilib support
for rv32i, rv32ia, rv32ima to test against our out-of-tree Intel Nios V/m
processor in HW.  The Zephyr SDK RISCV GCC currently does not contain
multilib support for all variants exposed by these new KConfig options.

Signed-off-by: Nathan Krueger <nathan.krueger@intel.com>
2022-03-22 18:00:32 -04:00
..
arcmwdt everywhere: fix typos 2022-03-18 13:24:08 -04:00
armclang armclang: ARM Compiler C library support 2021-08-30 08:54:23 -04:00
clang cmake: Populate var CMAKE_GCOV 2021-09-02 19:44:00 -04:00
gcc arch/riscv: Adding KConfig options for 'A' and 'M' RISC-V extensions 2022-03-22 18:00:32 -04:00
host-gcc cmake: Populate var CMAKE_GCOV 2021-09-02 19:44:00 -04:00
icx
xcc everywhere: fix typos 2022-03-18 13:24:08 -04:00
xcc-clang cmake: Add xcc-clang toolchain 2022-02-25 11:17:06 -05:00
compiler_features.cmake cmake: CMake compile features support 2021-10-01 14:40:33 -04:00
compiler_flags_template.cmake cmake: Add compiler property for disabling pointer arithmetic warnings 2022-03-16 10:24:32 +01:00