Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Alternative tcc bootstrap path #355

Open
cosinusoidally opened this issue Dec 18, 2023 · 1 comment
Open

Alternative tcc bootstrap path #355

cosinusoidally opened this issue Dec 18, 2023 · 1 comment

Comments

@cosinusoidally
Copy link

cosinusoidally commented Dec 18, 2023

I've been working on an alternative bootstrap path for tcc (https://github.com/cosinusoidally/tcc_bootstrap_alt). I am able to go from a cut down version of stage0-posix-x86 (I only need cc_x86) all the way up to tcc-0.9.27. I hacked a version of live-bootstrap to use my alternative path (cosinusoidally/live-bootstrap@master...cosinusoidally:live-bootstrap:tcc_bootstrap_alt). With my tweaks to live-bootstrap on my vm I was able to reduce the time to get to tcc-0.9.27 from around 30mins to around 3:45mins. It's also possible to use this to get to tcc-0.9.27 in < 512MB of RAM. The speed improvements are largely due to not building or using mescc (though I do still use meslibc).

I noticed that #334 has landed recently, so I'll probably refactor my live-bootstrap branch once that has stabilised and then raise a PR.

I was wondering what it would take to integrate this as an optional bootstrap path for live-bootstrap? There are quite a few limitations to my approach (the major one being that it's i386 only) but it does have the advantage of being considerably faster.

@fosslinux
Copy link
Owner

This may be a fairly good solution for #306 for 1.0, actually. Let me know if you hit any blockers with this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants