mirror of
https://github.com/raspberrypi/pico-sdk.git
synced 2025-02-15 21:40:28 +00:00
* switch all .S files to unified asm, and use a new macro `pico_default_asm_setup` to setup compiler to help porting to other compilers. Also some minor tweaks: * switch some code to use more recent helper methods (e.g. busy_wait_at_least_n_cycles) * add documentation to host divider header (I had this ages ago and never promoted) * fixup erroneous docs about 32p32 values in all divider headers * fix some compiler warnings * rename recently added `unified_asm` macro to `pico_default_asm`
39 lines
818 B
ArmAsm
39 lines
818 B
ArmAsm
//===-- call_apsr.S - Helpers for ARM EABI floating point tests -----------===//
|
|
//
|
|
// The LLVM Compiler Infrastructure
|
|
//
|
|
// This file is dual licensed under the MIT and the University of Illinois Open
|
|
// Source Licenses. See LICENSE.TXT for details.
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
//
|
|
// This file implements helpers for ARM EABI floating point tests for the
|
|
// compiler_rt library.
|
|
//
|
|
//===-
|
|
|
|
#include "pico/asm_helper.S"
|
|
|
|
pico_default_asm_setup
|
|
|
|
.align 2
|
|
|
|
.global call_apsr_f
|
|
.type call_apsr_f,%function
|
|
.thumb_func
|
|
call_apsr_f:
|
|
push {lr}
|
|
blx r2
|
|
mrs r0, apsr
|
|
pop {pc}
|
|
|
|
.global call_apsr_d
|
|
.type call_apsr_d,%function
|
|
.thumb_func
|
|
call_apsr_d:
|
|
push {r4, lr}
|
|
ldr r4, [sp, #8]
|
|
blx r4
|
|
mrs r0, apsr
|
|
pop {r4, pc}
|