diff options
author | Frank Dischner <fdischner@google.com> | 2023-03-14 17:20:54 -0700 |
---|---|---|
committer | Fangrui Song <i@maskray.me> | 2023-03-14 17:20:54 -0700 |
commit | ef45c12f9e6ec687e6281f7dc7c5e38e711bda9c (patch) | |
tree | 3ca66febbbb447ebfd6156e2b79115e4fb4594e7 /compiler-rt/cmake | |
parent | 4e99891e7085ef6348012f23a8acc116a3c5b416 (diff) | |
download | llvm-ef45c12f9e6ec687e6281f7dc7c5e38e711bda9c.tar.gz |
[compiler-rt][builtins] Support builtins for armv8m.base
This allows building the compiler builtins library for the Armv8-M
Baseline architecture. It can be built in the same way as other
baremetal targets using the appropriate '--target' flag
(e.g. --target=armv8m.base-eabi).
NOTE: As with the other Cortex-M targets, only the builtins library is
supported. There is no support for sanitizers, etc.
The armv8m.base architecture is a superset of armv6m, so adding it to
the cmake files using thumb1_SOURCES is almost enough for it to compile.
Minor changes are needed to divsi3 and udivsi3, because armv8m.base does
have support for div instructions but not mov with an immediate operand.
Reviewed By: MaskRay, peter.smith
Differential Revision: https://reviews.llvm.org/D143297
Diffstat (limited to 'compiler-rt/cmake')
-rw-r--r-- | compiler-rt/cmake/builtin-config-ix.cmake | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/compiler-rt/cmake/builtin-config-ix.cmake b/compiler-rt/cmake/builtin-config-ix.cmake index e045c81a0f74..3638cff56eb0 100644 --- a/compiler-rt/cmake/builtin-config-ix.cmake +++ b/compiler-rt/cmake/builtin-config-ix.cmake @@ -29,7 +29,7 @@ asm(\"cas w0, w1, [x2]\"); ") set(ARM64 aarch64) -set(ARM32 arm armhf armv4t armv5te armv6 armv6m armv7m armv7em armv7 armv7s armv7k armv8m.main armv8.1m.main) +set(ARM32 arm armhf armv4t armv5te armv6 armv6m armv7m armv7em armv7 armv7s armv7k armv8m.base armv8m.main armv8.1m.main) set(AVR avr) set(HEXAGON hexagon) set(X86 i386) |