mirror of
https://github.com/odin-lang/Odin.git
synced 2026-08-24 14:01:37 +00:00
arm32: default to arm1176jzf-s so the gnueabihf triple actually has an FPU,
arm32: implement AAPCS32 homogeneous float aggregates incl unions, arm32: fix reversed arguments in the small-struct return coercion,abi test: __aeabi_uldivmod so the arm32 corpus links
This commit is contained in:
@@ -46,6 +46,13 @@ gb_internal String get_default_microarchitecture() {
|
||||
}
|
||||
} else if (build_context.metrics.arch == TargetArch_riscv64) {
|
||||
default_march = str_lit("generic-rv64");
|
||||
} else if (build_context.metrics.arch == TargetArch_arm32) {
|
||||
// The arm32 triple is `gnueabihf`, and the hard-float ABI passes floating point in the
|
||||
// VFP registers. `generic` has no FPU at all. LLVM cannot honor the ABI its own
|
||||
// triple asks for and quietly falls back to the soft-float convention.
|
||||
//
|
||||
// `arm1176jzf-s` is what clang picks by default for this same triple.
|
||||
default_march = str_lit("arm1176jzf-s");
|
||||
}
|
||||
|
||||
return default_march;
|
||||
|
||||
Reference in New Issue
Block a user