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

Add some large, fixed code bases alongside fuzzing #151

Open
atomb opened this issue May 5, 2021 · 5 comments
Open

Add some large, fixed code bases alongside fuzzing #151

atomb opened this issue May 5, 2021 · 5 comments

Comments

@atomb
Copy link
Contributor

atomb commented May 5, 2021

To determine how well the parser is working with different LLVM versions, we could build on the multi-version LLVM fuzzing workflow to also test against some fixed code bases that make use of various interesting language features. With the current testing infrastructure, that'll only identify parse failures, not semantic issues, but it's a step.

@langston-barrett
Copy link
Contributor

Shameless plug: This tool has helped me get bitcode for large codebases: https://github.com/langston-barrett/nixpkgs-blight.

It doesn't produce whole-program bitcode (i.e. doesn't recursively compile library dependencies and link their bitcode), but that shouldn't matter if the goal is just to find parse failures.

@atomb
Copy link
Contributor Author

atomb commented May 5, 2021

Oh, cool! At the very least, blight would probably be useful. It might be more work to make the testing system use Nix than it would save us, although maybe not. And, yeah, I agree that we don't need combined bitcode for this purpose.

@travitch
Copy link

travitch commented May 5, 2021

Another shameless bitcode generation plug https://github.com/travitch/build-bom

@langston-barrett
Copy link
Contributor

It might be more work to make the testing system use Nix than it would save us, although maybe not.

Ah, I was thinking of having checked-in pre-compiled codebases but maybe that wasn't the intent here.

@atomb
Copy link
Contributor Author

atomb commented May 5, 2021

It might be more work to make the testing system use Nix than it would save us, although maybe not.

Ah, I was thinking of having checked-in pre-compiled codebases but maybe that wasn't the intent here.

Oh, yeah, that might actually be the better way to go. It'll make the tests faster and more reproducible.

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

3 participants