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

Rework build process to allow integration of LLVM tools #94

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

radl97
Copy link
Contributor

@radl97 radl97 commented Feb 9, 2021

This PR contains the first patch aiming to allow usage of LLVM tools (mostly opt) in the project.

Usage of opt would enable single pass tests, or later, even remove most, if not all driver (pass management) code.

It seems to me that if the build process got faster, however, it is partly because the shared libraries are not linked together (instead, the shared lib GazerLLVM.so knows all the modules used in the build process).

@radl97 radl97 added the enhancement New feature or request label Feb 9, 2021
@radl97 radl97 self-assigned this Feb 9, 2021
@radl97 radl97 requested a review from sallaigy February 9, 2021 16:24
@radl97
Copy link
Contributor Author

radl97 commented Feb 9, 2021

I'd really like your input here, @sallaigy, if you have any experience, and whether this path is OK for us.
Because we only have 5 or so shared libraries, it could be OK, I think.

@sonarqubecloud
Copy link

sonarqubecloud bot commented Feb 9, 2021

Kudos, SonarCloud Quality Gate passed!

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

No Coverage information No Coverage information
No Duplication information No Duplication information

@radl97
Copy link
Contributor Author

radl97 commented Feb 9, 2021

Maybe it's best to describe the changes:
Using LLVM's add_llvm_library, opt can be used. Somewhy I failed to bootstrap opt otherwise...

However the library (GazerLLVMBase) will only consist of links to the other libs (GazerAutomaton, etc.). I was unable to find out why, but all libs are searched at ../lib/. This is where LLVM usually stores its' modules, so it seems reasonable.

@radl97 radl97 requested a review from hajduakos February 10, 2021 09:35
@radl97 radl97 changed the title Patch rework build Rework build process to integrate LLVM tools Feb 13, 2021
@radl97 radl97 changed the title Rework build process to integrate LLVM tools Rework build process to allow integration of LLVM tools Feb 13, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant