title: How should be used LLVM modules?
body: <p>I'm using LLVM to convert a user-defined language into bytecode, and I'm not sure to understand how should be used a module.</p>
  
  <p>At the beginning, I thought it was something like the C/C++ object files (to avoid bytecode recompilation of every files when a single file is edited). However, I have found this line into <a href="http://www.llvmpy.org/llvmpy-doc/dev/doc/llvm_concepts.html" rel="nofollow">LLVMpy documentation</a>, which seems to say that it is not the case :</p>
  
  <blockquote>
    <p>Inter-module reference is not possible. That is module A cannot call a function in module B, directly.</p>
  </blockquote>
  
  <p>Can someone explain why are modules separated from the contexts if we can't have multiple modules for a single context ?</p>