Folkert
82b96395e2
fix argument passing for systemv
2023-10-09 15:24:35 +02:00
Folkert
42d324299d
fix bug in copying small bits of data (e.g. 3 bytes)
2023-10-09 15:24:34 +02:00
Folkert
66db1ce206
clippy fixes
2023-10-09 15:24:34 +02:00
Agus Zubiaga
27aab8b69a
Use X15 instead of requesting general reg
2023-10-09 15:24:34 +02:00
Agus Zubiaga
1021423e69
Use reg from StorageManager instead of XR while loading args
...
When a function returns via arg pointer, the caller sets XR (x8) to
the address where the return value goes. We were sometimes using XR
as a temporary register while loading args, which lead to a segfault
when returning.
It will now request a general available register from StorageManager
instead.
2023-10-09 15:24:33 +02:00
Folkert
905dc8cd59
pass small non-recursive tag unions via registers (like records)
2023-10-09 15:24:33 +02:00
Folkert
68dc7108bf
enable all gen_result tests for the dev backend
2023-10-09 15:24:32 +02:00
Folkert
5f9008fbcc
on x86 (systemv, haven't checked windows) pass small structs via registers
2023-10-09 15:24:32 +02:00
Folkert
052ee0cc5f
more boxing tests
2023-10-09 15:24:32 +02:00
Folkert
b410ae5642
fix arithmetic error in copy function
2023-10-09 15:24:31 +02:00
Folkert
6442dc2a94
use the proper temporary register
2023-10-09 15:24:31 +02:00
Folkert
9bf5bd4d39
128-bit structs, properly
2023-10-09 15:24:31 +02:00
Folkert
3a8d4b853b
an attempt at passing bigger values
2023-10-09 15:24:30 +02:00
Folkert
529703d449
fix data pointers
2023-10-09 15:24:30 +02:00
Folkert
ce34d5826b
on aarch64, unify data and function pointers
2023-10-09 15:24:30 +02:00
Folkert
311ae4c7a6
an attempt at function pointers
2023-10-09 15:24:29 +02:00
Folkert
94ca207772
formatting
2023-10-07 19:11:37 +02:00
Folkert
60afb79cc7
simplify regex expression strings
2023-10-07 19:11:37 +02:00
Folkert
6ab54c02e2
drop into_iter in some places
2023-10-07 19:11:36 +02:00
Folkert
e6a154765c
silence some redundant closure call warnings caused by macros
2023-10-07 19:11:36 +02:00
Folkert
9cdc49b9db
incorrect implementation of partial_cmp
on an Ord
type
2023-10-07 19:11:36 +02:00
Folkert
49c42f5ed8
simplify soa Clone impls
2023-10-07 19:11:35 +02:00
Anton-4
d7a27acfd7
prevent+improve repl erros
2023-09-30 20:34:33 +02:00
Agus Zubiaga
365c65caf1
Format type_annotation.rs and keyword.rs
2023-09-30 01:59:01 -03:00
Agus Zubiaga
c22c2259c0
Add type annotation in where_ident test
2023-09-30 01:53:49 -03:00
Agus Zubiaga
ebc3aab91f
Allow where
to be used as an identifier (except in type vars)
2023-09-30 01:48:10 -03:00
Brendan Hansknecht
e30eabd5bf
Merge branch 'main' into add-dec-abss
2023-09-26 15:33:24 +00:00
Anton-4
cb13fc6092
Merge pull request #5857 from roc-lang/rust-1-71-1-upgrade
...
rust 1.71.1 upgrade
2023-09-26 17:27:08 +02:00
Anton-4
5f878aee93
clippy
2023-09-26 15:08:30 +02:00
Anton-4
f078204c1f
rust 1.71.1 upgrade
2023-09-26 12:08:16 +02:00
Brendan Hansknecht
b0608c32b5
Merge pull request #5855 from roc-lang/rust-binary-size
...
Allow rust binaries to remove dead code
2023-09-26 09:07:54 +00:00
Brendan Hansknecht
c3c5c97e16
remove unused hash.zig file
2023-09-25 10:56:44 -07:00
Brendan Hansknecht
d0e1da40ac
Allow rust binaries to remove dead code
...
Note: we may need to add a special init function to stop linker based dead code elimination.
That or special linker commands to keep `roc_*` functions.
Currently this is working on my x86 machine without it though.
Guide here if needed on the init function:
https://stackoverflow.com/questions/43712979/how-to-export-a-symbol-from-a-rust-executable
2023-09-25 10:23:00 -07:00
Sekerez
9307bdbed0
use const
2023-09-24 23:15:36 -04:00
Sekerez
fa65d89a3c
Add support for Num.abs to Dec type
2023-09-24 23:10:25 -04:00
Brendan Hansknecht
5cfab36f75
update perf numbers
2023-09-19 10:50:52 +02:00
Brendan Hansknecht
9edd3eaca0
more benchmark cleanup and warmup phase
2023-09-19 10:50:52 +02:00
Brendan Hansknecht
aee54a44dc
fix asin and acos benchmark
2023-09-19 10:50:51 +02:00
Brendan Hansknecht
a3ee58155c
add other trig functions to dec benchmark
2023-09-19 10:50:51 +02:00
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