Skip to content

[Relocatable] Follow-up 13: coreboot without all the stripping#215

Open
dra27 wants to merge 3 commits intorelocatable-testingfrom
clean-bootstrap
Open

[Relocatable] Follow-up 13: coreboot without all the stripping#215
dra27 wants to merge 3 commits intorelocatable-testingfrom
clean-bootstrap

Conversation

@dra27
Copy link
Copy Markdown
Owner

@dra27 dra27 commented Aug 12, 2025

No description provided.

@dra27 dra27 added no-change-entry-needed Causes the check for a Changes entry to be skipped for PRs relocatable PRs related to the Relocatable Compiler project labels Aug 12, 2025
@dra27 dra27 force-pushed the relocatable-testing branch from 88186bc to 3c8b5c1 Compare August 27, 2025 08:30
@dra27 dra27 changed the title [Relocatable] 3g: coreboot without all the stripping [Relocatable] Follow-up 22: coreboot without all the stripping Aug 27, 2025
@dra27 dra27 changed the title [Relocatable] Follow-up 22: coreboot without all the stripping [Relocatable] Follow-up 13: coreboot without all the stripping Aug 28, 2025
@dra27 dra27 force-pushed the relocatable-testing branch from 3c8b5c1 to 2a7e0ad Compare September 9, 2025 22:19
@dra27 dra27 changed the base branch from relocatable-testing to trunk September 13, 2025 13:37
@dra27 dra27 changed the base branch from trunk to relocatable-testing November 30, 2025 14:33
@dra27 dra27 force-pushed the relocatable-testing branch from d644c59 to 63922b2 Compare November 30, 2025 14:36
@dra27 dra27 force-pushed the relocatable-testing branch from 63922b2 to 198fcfd Compare December 10, 2025 11:10
@dra27 dra27 force-pushed the relocatable-testing branch from 198fcfd to 56b115d Compare December 11, 2025 18:34
All the functions in Meta are now only required by the toplevel, however
two of them are still quite tangled up with Symtable. Begin the process
of disentanglement by moving those two functions to Symtable and the
remaining ones directly to the bytecode toplevel (Dynlink already has
its own implementations).
Bytecode images (including for -output-obj) now only include the CRCS
section if the image actually needs dynamic loading (which is identified
by the use of the caml_reify_bytecode primitive which is only used by
the toplevel and dynlink).
In order to be repeatable, the coreboot cycle routinely has to relink
both boot artefacts with a fixed configuration. It's not therefore much
more of a stretch to link those artefacts with the required flags to
suppress both the header (and RNTM section, if applicable) and debugging
information.

Combined with the previous change to suppress CRCS when the image
doesn't use dynamic loading, the coreboot cycle can be accomplished
without having to post-process the artefacts with stripdebug.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

no-change-entry-needed Causes the check for a Changes entry to be skipped for PRs relocatable PRs related to the Relocatable Compiler project

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant