Commit graph

5071 commits

Author SHA1 Message Date
Brendan Hansknecht
c98d136ca2
ensure correct assembly generation without extra data movement 2023-09-19 10:50:51 +02:00
Brendan Hansknecht
3aca2d7412
add gte and lte to dec 2023-09-19 09:32:57 +02:00
Folkert de Vries
3314079819
Merge pull request #5824 from roc-lang/aarch-function-preamble
AArch64 gen_num + gen_records tests
2023-09-18 18:08:00 +02:00
Brendan Hansknecht
aec135a269
Merge pull request #5820 from roc-lang/update-dec-docs
Update Dec docs some more
2023-09-18 02:56:39 +00:00
Richard Feldman
cd70fdc36b
Merge pull request #5800 from roc-lang/drop-is-null-term
Drop unused str.zig function
2023-09-17 20:09:48 -04:00
Richard Feldman
83587eca22
Don't say floats have less precision than Dec
It's more accurate to say they have issues with base-10.
In fact, very small floats can have *more* digits of precision
than Dec can!
2023-09-17 20:09:30 -04:00
Folkert
889e2f5026
remove overflow / adds / smulh logic
we do all overflow operations in zig
2023-09-17 18:03:36 +02:00
Folkert
dc179a1aa6
simplify moving with the scratch register we now have 2023-09-17 18:01:08 +02:00
Brendan Hansknecht
fb1db19dca
mono test 2023-09-17 09:00:01 -07:00
Folkert
dd12069013
ranges 2023-09-17 17:51:02 +02:00
Folkert
e4ddc39b63
another logical error 2023-09-17 17:45:32 +02:00
Folkert
a990fab16f
fix some bitshifts 2023-09-17 17:40:29 +02:00
Folkert
1a49076a30
bigger jumps with an extra register 2023-09-17 17:36:08 +02:00
Folkert
a4df2cebfb
maybe do bigger negative loads/stores? 2023-09-17 16:44:05 +02:00
Folkert
dd732736e0
clippy 2023-09-17 16:26:39 +02:00
Folkert
f6e4aee10c
make dec checked tests clearer 2023-09-17 16:20:18 +02:00
Folkert
fca3c50240
irem/urem 2023-09-17 16:11:47 +02:00
Folkert
e0071e3265
do checked arithmetic using zig... 2023-09-17 15:48:15 +02:00
Folkert
c6593725df
improved implementation of checked arithmetic 2023-09-17 15:43:11 +02:00
Folkert
54732b5750
don't emit fmov xi, xi 2023-09-17 13:50:03 +02:00
Folkert
be9cfa7e4e
float str -> stur 2023-09-17 13:48:47 +02:00
Folkert
15d7775652
get shadow space right 2023-09-17 13:38:11 +02:00
Folkert
857c48c933
fix off by 16 2023-09-17 13:29:35 +02:00
Brendan Hansknecht
bde293db1b
remove duplicate export 2023-09-16 23:46:29 -07:00
Brendan Hansknecht
12223191be
update tests 2023-09-16 23:45:16 -07:00
Brendan Hansknecht
7a37a24e8c
clippy 2023-09-16 23:07:46 -07:00
Brendan Hansknecht
e270f36422
add wasm backend hooks 2023-09-16 23:05:12 -07:00
Brendan Hansknecht
346eb80bd1
add dec trig functions 2023-09-16 22:55:23 -07:00
Richard Feldman
cbbf04cb85
Update Dec docs 2023-09-17 01:22:40 -04:00
Brendan Hansknecht
108d9a54e3
Switch Num.tan to a zig builtin
It should be able to share some work between sine and cosine to run faster.
2023-09-16 21:27:51 -07:00
Brendan Hansknecht
7986d6cdba
add benchmark for sin and asin 2023-09-16 21:27:21 -07:00
Folkert
0f77a24a2d
simplify addition with negative imm 2023-09-16 20:22:32 +02:00
Brendan Hansknecht
67494e00fd
add trig functions to dec in zig 2023-09-16 11:05:44 -07:00
Folkert
29daf4dd5e
fix returning big structures 2023-09-16 19:31:47 +02:00
Folkert
b440c30731
mov float to general 2023-09-16 18:23:04 +02:00
Folkert
dc967f515e
32-bit float mov 2023-09-16 18:16:32 +02:00
Folkert
f22318e54e
move general to float 2023-09-16 18:03:59 +02:00
Folkert
8ceb705212
move big float from general to float register 2023-09-16 17:30:58 +02:00
Folkert
7f8ff25cd3
copy bigger things to the stack 2023-09-16 16:40:12 +02:00
Folkert
09d4553019
move floats from memory 2023-09-16 16:35:28 +02:00
Folkert
344b8ca29f
allow providing dec arguments 2023-09-16 16:28:47 +02:00
Folkert
0d665a89b0
give the free float registers 2023-09-16 16:28:36 +02:00
Folkert
91bd3abfaf
use ldur for float values too 2023-09-16 16:16:25 +02:00
Folkert
12584abdb7
set if overflow 2023-09-16 16:14:10 +02:00
Folkert
a8c8834a3c
actually understand this jmp address bug 2023-09-16 15:57:03 +02:00
Folkert
99873f948d
move jmp into the architecture-specific trait mods 2023-09-16 15:32:38 +02:00
Folkert
93d7054a00
refactor how we do jumps 2023-09-16 15:24:43 +02:00
Folkert
3e19f4a6fb
document how jumps are generated 2023-09-16 15:06:54 +02:00
Folkert
d4cc3a63f5
use stur instead of str 2023-09-16 13:18:40 +02:00
Brendan Hansknecht
c5d34ea767
Merge pull request #5812 from roc-lang/dec-range-docs
Clarify Dec range and decimal places in docs
2023-09-16 10:43:51 +00:00