Commit graph

247 commits

Author SHA1 Message Date
Brendan Hansknecht
7189d79572
remove clap from linker deps 2022-10-25 15:41:00 -07:00
Brendan Hansknecht
e25475e7a1
dummy -> stub. Also minor help message update. 2022-10-24 18:52:11 -07:00
Brendan Hansknecht
dead264798
add macho dummy lib generation with ld 2022-10-24 18:47:12 -07:00
Brendan Hansknecht
d6bdd2aec7
create a roc sub command for generating a dummy lib 2022-10-24 18:47:11 -07:00
Folkert
1d45b7d1b5
remove a copy 2022-10-23 22:59:25 +02:00
Folkert
43c3095337
fix bug in loop 2022-10-23 22:55:01 +02:00
Folkert
0071c9aa04
update the dynhost file (dll name is now different) 2022-10-23 21:30:52 +02:00
Folkert
c4e407f703
remove subtraction of image base; value is already an rva 2022-10-23 20:19:34 +02:00
Folkert
28665abc96
use libapp.dll as the dll name 2022-10-23 20:18:09 +02:00
Folkert
ca90b00588
correctly update the size of the base relocations (round up to multiple of 8) 2022-10-23 20:16:46 +02:00
Folkert
f0f94107d5
deal with imports being stored in .idata or .rdata 2022-10-23 20:15:35 +02:00
Folkert
9c9e495e14
deal with our dummy dll not being the last import in the file 2022-10-23 20:10:38 +02:00
Folkert
215cacb260
add .lib file generation for windows 2022-10-23 20:06:31 +02:00
Folkert
0d3c039341
refactor dll symbol name generation 2022-10-23 20:06:30 +02:00
Folkert
e3df138c45
fix typo 2022-10-23 20:05:24 +02:00
Folkert
c55a3e7b37
resize reloc section when required 2022-10-22 14:49:59 +02:00
Folkert
d0492327e8
Revert "re-enable"
This reverts commit 644a12e7aa.
2022-10-19 17:41:46 +02:00
Folkert
644a12e7aa
re-enable 2022-10-19 16:52:51 +02:00
Folkert
4de148456c
stop updating reloc data directory 2022-10-19 15:32:34 +02:00
Folkert
e2128a55f4
add assert to check we fit in the reloc section 2022-10-19 15:12:51 +02:00
Folkert
a572622ff7
update basereloc dir size 2022-10-19 14:12:41 +02:00
Folkert
5e10dddd6f
support multiple app relocations per symbol 2022-10-18 18:43:40 +02:00
Folkert
27aaaf9c26
remove debug logs 2022-10-17 21:25:30 +02:00
Folkert
58c7a21569
make relocations work when the .rdata section is bigger than a 4kb page 2022-10-17 21:21:27 +02:00
Folkert
a063bfcd30
changes after review 2022-10-16 13:26:48 +02:00
Folkert
73e48c9b7c
add better comments 2022-10-16 01:03:03 +02:00
Folkert
b822c1c617
basics test now works! 2022-10-15 20:45:20 +02:00
Folkert
c15ab0461a
Merge remote-tracking branch 'origin/main' into windows-program-loading-scratchpad 2022-10-15 20:39:53 +02:00
Folkert
0e08ccdc0c
enable test that works 2022-10-15 20:34:24 +02:00
Folkert
ebc3e770de
more cleanup 2022-10-15 20:33:01 +02:00
Folkert
a5935b262b
cleanup 2022-10-15 20:31:36 +02:00
Folkert
e8dc02d578
remove unused import on windows 2022-10-15 20:30:59 +02:00
Folkert
b5fb200a91
ensure sections never have 0 virtual size 2022-10-15 20:29:50 +02:00
Folkert
b3cf1c6812
extract .dll relocation logic into function 2022-10-15 20:24:14 +02:00
Folkert
4c51893632
get rid of constants 2022-10-15 20:16:31 +02:00
Folkert
7ab46a144b
cleanup 2022-10-15 20:12:06 +02:00
Folkert
fdd921aeeb
add extra fields to metadata 2022-10-15 20:09:56 +02:00
Folkert
7529e10580
wip 2022-10-15 19:15:56 +02:00
Ayaz
3d17307bde
Merge pull request #4275 from roc-lang/surgical-error-msg
Give an error message when the surgical linker #3609
2022-10-10 10:08:33 -05:00
dependabot[bot]
1a9323ecdc
Bump libc from 0.2.133 to 0.2.135
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.133 to 0.2.135.
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Commits](https://github.com/rust-lang/libc/compare/0.2.133...0.2.135)

---
updated-dependencies:
- dependency-name: libc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-10 13:00:20 +00:00
Brendan Hansknecht
3cf4459ea6
filter out debug and eh relocatoins 2022-10-09 15:48:23 -07:00
Brendan Hansknecht
b306c9a76b
give an error message when the surgical linker would fail with know issue #3609 2022-10-09 11:39:10 -07:00
Folkert
5dbd119391
WIP 2022-10-03 21:19:09 +02:00
Folkert
c3d49ab38b
improve write_dummy_sections style 2022-10-02 18:21:30 +02:00
Folkert
7a04c1e801
preprocess itself produces a functioning binary 2022-10-02 17:19:19 +02:00
Folkert
355bbcb3a7
improve comment 2022-10-02 15:48:36 +02:00
Folkert
57e67f9878
ignore a test that does not yet work on windows 2022-10-02 15:43:39 +02:00
Folkert
675092db17
add a test for preprocessing 2022-10-02 15:41:15 +02:00
Folkert
78a5902261
on windows, run the .exe with the full path 2022-10-02 15:40:34 +02:00
Folkert
06e24fb44f
bump image size 2022-10-02 15:39:24 +02:00