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

Use Range-Extension Thunks for Functions #16

Closed
ammrat13 opened this issue May 10, 2023 · 2 comments
Closed

Use Range-Extension Thunks for Functions #16

ammrat13 opened this issue May 10, 2023 · 2 comments
Assignees
Labels
refactoring Making the codebase cleaner wontfix Will not be worked on

Comments

@ammrat13
Copy link
Contributor

Instead of using PSEUDO.FARJSR, use range-extension thunks provided by the linker. As long as sections are made at the basic-block level, this should be fine.

@ammrat13 ammrat13 self-assigned this May 10, 2023
@ammrat13 ammrat13 added the refactoring Making the codebase cleaner label May 10, 2023
@ammrat13
Copy link
Contributor Author

First, check how long functions usually get. If they are close to or more than 2KiB, then it would not be worth it to do this.

@ammrat13
Copy link
Contributor Author

Looking at coremark, the function core_bench_list is 0x60e bytes long, where the upper limit for function section thunks is 0x400 = 1024 bytes. It might be possible to use basic block sections, but it might not be worth it since we already have PSEUDO.LOADCONSTW.

@ammrat13 ammrat13 added the wontfix Will not be worked on label May 13, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
refactoring Making the codebase cleaner wontfix Will not be worked on
Projects
None yet
Development

No branches or pull requests

1 participant