Solid
Engineering
Solutions
This list of project types is inspired by previous contract work.
If you have a question or a different kind of request,
please don't hesitate to reach out.
Port to New Release
-
LLVM is not an easy dependency for any project.
It doesn't give any guarantees on API stability (apart from the limited
C-API), it adds a significant binary size and even after years of
stabilization it's still moving so fast!
-
On-top of that, clients frequently maintain a fork downstream of
LLVM.
It's a pragmatic and common solution, but it has a significant downside:
Updating such a project for a newer upstream version is not only about API
breakage and feature migration.
The downstream modifications in LLVM have to be taken to the new release
as well!
This can add tremendous complexity and should be approached with a plan.
-
Depending on your needs we share our experience through consulting and
hands-on support.
Moving on to a newer version of LLVM doesn't need to burn endless
engineering hours.
External expertise can boost the process for you.
Let's talk about it!
Bugfixing
-
All software has bugs and so has LLVM — despite of its high code
quality standards.
The investigation phase is about determining the piece(s) of
code that cause the defect.
We can help you confirm bugs across LLVM versions, find workarounds
and isolate reproducers.
The implementation phase is about fixing the defect in your
specific LLVM release version.
We can help you to understand the context of the defect, write tests
and fix the defect.
-
Often times, bugs turn out as regressions that silently went through
releases without notice, because the code didn't have an appropriate
test-case. While everybody should know that all untested
functionality will break eventually, most users never check
whether their specific requirements are actually covered!
-
We encourage our clients to upstream bugfixes
in order to prevent regressions in subsequent releases.
Feature Development
It is a long established fact that a reader will be distracted by the
readable content of a page when looking at its layout. The point of using
Lorem Ipsum is that it has a more-or-less normal distribution of letters,
as opposed to using 'Content here, content here', making it look like
readable English.
Upstreaming
Upstream Reviews
Hourly Consulting
Workshops