1/*
2 * Copyright (c) 2020 Raspberry Pi (Trading) Ltd.
3 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6
7#include "pico/asm_helper.S"
8#include "pico/bootrom/sf_table.h"
9
10pico_default_asm_setup
11
12    wrapper_func __aeabi_dadd
13    wrapper_func __aeabi_ddiv
14    wrapper_func __aeabi_dmul
15    wrapper_func __aeabi_drsub
16    wrapper_func __aeabi_dsub
17    wrapper_func __aeabi_cdcmpeq
18    wrapper_func __aeabi_cdrcmple
19    wrapper_func __aeabi_cdcmple
20    wrapper_func __aeabi_dcmpeq
21    wrapper_func __aeabi_dcmplt
22    wrapper_func __aeabi_dcmple
23    wrapper_func __aeabi_dcmpge
24    wrapper_func __aeabi_dcmpgt
25    wrapper_func __aeabi_dcmpun
26    wrapper_func __aeabi_i2d
27    wrapper_func __aeabi_l2d
28    wrapper_func __aeabi_ui2d
29    wrapper_func __aeabi_ul2d
30    wrapper_func __aeabi_d2iz
31    wrapper_func __aeabi_d2lz
32    wrapper_func __aeabi_d2uiz
33    wrapper_func __aeabi_d2ulz
34    wrapper_func __aeabi_d2f
35    wrapper_func sqrt
36    wrapper_func cos
37    wrapper_func sin
38    wrapper_func tan
39    wrapper_func atan2
40    wrapper_func exp
41    wrapper_func log
42
43    wrapper_func ldexp
44    wrapper_func copysign
45    wrapper_func trunc
46    wrapper_func floor
47    wrapper_func ceil
48    wrapper_func round
49    wrapper_func sincos
50    wrapper_func asin
51    wrapper_func acos
52    wrapper_func atan
53    wrapper_func sinh
54    wrapper_func cosh
55    wrapper_func tanh
56    wrapper_func asinh
57    wrapper_func acosh
58    wrapper_func atanh
59    wrapper_func exp2
60    wrapper_func log2
61    wrapper_func exp10
62    wrapper_func log10
63    wrapper_func pow
64    wrapper_func powint
65    wrapper_func hypot
66    wrapper_func cbrt
67    wrapper_func fmod
68    wrapper_func drem
69    wrapper_func remainder
70    wrapper_func remquo
71    wrapper_func expm1
72    wrapper_func log1p
73    wrapper_func fma
74
75#ifdef __riscv
76    la a0, str
77    j  panic
78#else
79    push {lr}       // keep stack trace sane
80    ldr r0, =str
81    bl panic
82#endif
83
84str:
85    .asciz "double support is disabled"