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

Make amalgamation smaller #443

Closed
rogerbinns opened this issue May 24, 2023 · 2 comments
Closed

Make amalgamation smaller #443

rogerbinns opened this issue May 24, 2023 · 2 comments

Comments

@rogerbinns
Copy link
Owner

The -16 apis only need to be present when ICU extension is enabled.

API_ARMOR only needs to be on in debug builds

We should be able to omit legacy APIs

@rogerbinns
Copy link
Owner Author

-16 APIs have to stay in - https://sqlite.org/forum/forumpost/1eac3b2c9c

rogerbinns added a commit that referenced this issue May 25, 2023
@rogerbinns
Copy link
Owner Author

Using speedtest I see a very small but consistent performance improvement with API_ARMOR. Speedtest is only using the prepare/binding/step/column apis. A plausible explanation is that it helps the optimiser because it knows later in the code that parameters aren't null etc.

For the 1.2MB shared library text segment, API_ARMOR makes it just over 5,000 bytes larger.

Consequently leaving API_ARMOR on.

rogerbinns added a commit that referenced this issue May 25, 2023
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

1 participant