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

[linker script, crt0] align all sections to 32-bit boundaries #323

Merged
merged 3 commits into from
May 21, 2022

Conversation

stnolting
Copy link
Owner

This PR modifies the default NEORV32 linker script and start-up code (crt0):

  • all relevant sections start and end on a 32-bit (word) aligned boundary
  • crt0 can use word-level memory operations instead of byte-level memory operations to initialize .data and clear .bss sections (faster booting / start-up!)

sections start and end on a 32-bit (word) aligned boundary
@stnolting stnolting added the optimization Make things faster, smaller and more efficient label May 20, 2022
@stnolting stnolting self-assigned this May 20, 2022
@stnolting stnolting changed the title [linker script, crt0] align all sections [linker script, crt0] align all sections to 32-bit boaundaries May 20, 2022
@stnolting stnolting added the SW software-related label May 20, 2022
@stnolting stnolting changed the title [linker script, crt0] align all sections to 32-bit boaundaries [linker script, crt0] align all sections to 32-bit boundaries May 20, 2022
@stnolting stnolting marked this pull request as draft May 20, 2022 21:15
* minor comment edits
* faster init of .data section
* faster clearing of .bss section
* => faster start-up / booting
@stnolting stnolting marked this pull request as ready for review May 20, 2022 21:37
@stnolting stnolting mentioned this pull request May 21, 2022
@stnolting stnolting merged commit ee494d9 into main May 21, 2022
@stnolting stnolting deleted the align_sections branch May 21, 2022 13:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
optimization Make things faster, smaller and more efficient SW software-related
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant