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