Commit Graph

363 Commits

Author SHA1 Message Date
Anton-4
1bcf30391b
Merge pull request #6819 from roc-lang/rust-1-77-2-upgrade
Rust 1.77.2 upgrade
2024-07-06 03:23:54 +02:00
Ryan Barth
3edc551043
chore: cargo fmt 2024-07-01 15:01:32 -07:00
Ryan Barth
43f970f813
fix: count all symbols to err on the side of over allocating 2024-06-30 23:17:20 -07:00
Ryan Barth
3fe2a4cd13
refactor: remove duplicate symbol functions from macho module 2024-06-30 23:01:32 -07:00
Ryan Barth
720ed2a457
fix: calculate windows dll symbols from prebuilt shared library 2024-06-30 22:56:14 -07:00
Luke Boswell
ee84b61360
update preprocess host API 2024-06-28 09:12:45 +10:00
Anton-4
05a61e2210
clippy + fmt 2024-06-19 12:34:10 +02:00
Agus Zubiaga
2da7ea394b
Add --main flag to specify app/package to resolve deps from 2024-06-07 17:09:44 -03:00
Brendan Hansknecht
6dc5bfb1b7
Use roc_target over target_lexicon
Tailors a target class for our needs.
Replaces tons of uses across the entire compiler.
This is a base for later adding new targets like thumb.
2024-03-31 10:50:26 -07:00
Brendan Hansknecht
28e4ae8ae5
update ingested windows compiler-rt symbols 2023-12-09 18:11:22 -08:00
jecaro
d21ea2ea83
Fix zig_host_app on NixOS
That's a problem with the dynamic loader:
https://discourse.nixos.org/t/no-such-file-of-directory-when-trying-to-execute-binary-file/6150

When linking `libapp.so` with `host.zig`, zig puts in the binary the
standard path for the dynamic loader on linux:
`/lib64/ld-linux-x86-64.so.2`

However in NixOS, that file is somewhere else in the nix store (see:
https://nixos.wiki/wiki/Packaging/Binaries#The_Dynamic_Loader). Removing
the `-target` switch makes zig uses the host target for linking and puts
the right path to the dynamic loader in the resulting binary. As we want
to execute that binary file in this test, it makes sense to use the
default target anyway.

Note that this is relevant for the creation of the binary only. For the
creation of the object file, it doesn't really matter. But I removed the
`-target` switch as well there for consistency.

Fix #4180
2023-11-21 11:12:31 +01:00
Brendan Hansknecht
8e86640bd7
add preprocess host cli option 2023-11-06 09:31:22 -08:00
Anton-4
90865c6b51
cleanup CI, fix unrecognized --strip 2023-10-23 13:50:34 -07:00
Folkert
2f88d0579d
fmt 2023-09-03 21:32:56 +02:00
Luke Boswell
8123041d0a
windows linker name matching 2023-09-03 21:32:36 +02:00
Richard Feldman
57fc441bf9
Fix macos ld warning 2023-07-29 21:06:04 -04:00
Ayaz Hafiz
44c4797d9a
Parameterize program solving on a FunctionKind
This new flag determines whether we should introduce a new kind to
represent lambda sets, or whether lambdas should be erased. The latter
is not yet implemented.
2023-07-12 13:53:50 -05:00
Folkert
ef39bad7c6
auto clippy fixes 2023-07-10 18:27:08 +02:00
Anton-4
4e9bffca0b
fmt 2023-06-30 18:27:47 +02:00
Anton-4
7e86539e3d
c_char fix
The i8 is a u8 on raspberry pi 4 aarch64 linux, c_char takes care of this automatically.
2023-06-30 18:05:39 +02:00
Brendan Hansknecht
4f97ab2965
remove old compiler-rt workarounds for macos 2023-06-24 17:27:11 -07:00
Brendan Hansknecht
75c290273d
allow surgical linker to work without any rodata section 2023-06-16 10:30:44 -05:00
Brendan Hansknecht
6c50fc8211
fix test 2023-06-03 21:53:59 -07:00
Brendan Hansknecht
829b71aa1f
fully take ownership of memcpy in the builtins 2023-06-03 19:05:19 -07:00
Brendan Hansknecht
08d4ac558b
ignore memcpy_decision in pe linker 2023-06-02 17:02:59 -07:00
Brendan Hansknecht
1a800ef228
run cargo clippy --fix 2023-06-02 15:23:07 -07:00
Brendan Hansknecht
86417a8457
correctly handle bss section in surgical linker 2023-06-02 15:23:06 -07:00
Brendan Hansknecht
e7906b30a9
add other compiler-rt functions in builtins.o 2023-05-30 14:38:10 -07:00
Brendan Hansknecht
a41611b553
allow ingested compiler-rt function in windows surgical linker 2023-05-30 12:11:15 -07:00
Brendan Hansknecht
81e8812f38
Add all fns in compiler-rt that builtins are known to depend on
Also removes the workaround in the surigical linker.
This should mean we should get clear errors if we missed a function instead of crashes/segfaults.
2023-05-30 09:21:59 -07:00
Ayaz
ba1f8ffe5f
Merge pull request #5272 from extemporalgenome/markdown-typos-20230410
markdown typo fixes
2023-05-03 10:24:52 -05:00
Brendan Hansknecht
506c1251f4
Split metadata by format
This does not change the metadata to keep old packages working.
Instead, for now, just appended `_` to unused fields.
2023-04-27 08:04:14 -07:00
Brendan Hansknecht
ae04a73d2f
add todo about storage endian 2023-04-27 07:58:07 -07:00
Brendan Hansknecht
dbbc621892
switch from assignment to using the set method for numbers 2023-04-27 07:58:06 -07:00
Brendan Hansknecht
e88d759331
Correct use of NativeEndian to LittleEndian
This should specify the endian read from and written to.
In our case, we are using elf/macho. So, the endian is always little.
2023-04-27 07:58:03 -07:00
Folkert
394495d307 Revert "update size asserts"
This reverts commit 9973d4b8d2.
2023-04-21 13:22:23 +02:00
Folkert
4cd8f0a056 clippy --fix fixes 2023-04-21 12:05:51 +02:00
Kevin Gillette
0321f91c70
Kevin Gillette: markdown typo fixes
Luke Boswell: move Str.md as it looks more like a design doc than rust crate

Co-authored-by: Luke Boswell <lukewilliamboswell@gmail.com>
2023-04-10 14:07:03 -06:00
Anton-4
cae7d5eaba
ignore in different order
Signed-off-by: Anton-4 <17049058+Anton-4@users.noreply.github.com>
2023-03-24 18:00:14 +01:00
Anton-4
c48c8f6d2c
added zig build lock 2023-03-24 17:24:10 +01:00
Anton-4
8da9af94f2
use latest basic-cli, better error messages 2023-03-20 20:06:36 +01:00
Anton-4
f619a35c7c
.rh and .rm adjustments, basic-cli nightly prep 2023-03-20 12:24:30 +01:00
Folkert
fe15a2e79c
Merge remote-tracking branch 'origin/main' into glue-getters-rtfeldman 2023-03-08 19:46:00 +01:00
Folkert
938f7172dd
restore creation of the libapp.o file 2023-03-08 19:43:34 +01:00
Brendan Hansknecht
f42f61e271
run a toml formatter and then clean it up a bit 2023-03-06 19:47:57 -08:00
Brendan Hansknecht
4a89bee0a5
centralize package versions except for vendor and excluded 2023-03-06 19:29:09 -08:00
Brendan Hansknecht
5485c8a5b0
update to using workspace package spec 2023-03-06 16:36:18 -08:00
Folkert
853c0387dc
cleanup 2023-03-05 17:33:48 +01:00
Folkert
d224992bc1
Merge remote-tracking branch 'origin/main' into glue-getters-rtfeldman 2023-03-05 17:24:05 +01:00
Folkert
769a4c415b
update remaining cli tests 2023-03-05 16:57:51 +01:00