This patch is the first in a series of patches to refactor the riscv
abstraction in libc to support both riscv32 and riscv64. This patch
enables the compilation of libc with LLVM_LIBC_FULL_BUILD=OFF and libm
disabled. This patch also fixes the strtol test cases so the tests
enabled by this libc configuration are now passing in riscv32 as well.
We updated the cmake file to match the new riscv32 arch and force
LIBC_TARGET_ARCHITECTURE to be "riscv" whenever we find "riscv32" or
"riscv64". This is required as LIBC_TARGET_ARCHITECTURE is used in the
path for several platform specific implementations.
A int get_except() is also added until to allow the compilation in
riscv32, until we implement the platform specific implementation for
this arch.