[llvm-commits] [llvm] r72650 - in /llvm/trunk:include/llvm/CodeGen/JITCodeEmitter.hinclude/llvm/CodeGe n/MachineCodeEmitter.hinclude/llvm/ExecutionEngine/JITMemoryManager. hlib/CodeGen/MachOWriter.cpp lib/CodeGen/MachOWriter.hlib/ExecutionEngi
Frits van Bommel
fvbommel at wxs.nl
Fri Jun 5 02:27:35 PDT 2009
Duncan Sands wrote:
> with r72619 a definition is output for getchar:
>
> define available_externally i32 @getchar() nounwind {
> entry:
> ...
>
> The code generator has this logic in SelectionDAGISel::runOnFunction:
>
> // Do not codegen any 'available_externally' functions at all, they have
> // definitions outside the translation unit.
> if (Fn.hasAvailableExternallyLinkage())
> return false;
>
> This confuses the JIT because it sees a function that is not a
> declaration, passes it to codegen, but codegen doesn't produce
> any code for it.
>
> I don't know what the right solution is.
Shouldn't the JIT just treat available_externally functions the same as external
functions?
More information about the llvm-commits
mailing list