Fix LLVM 3.4 change to DIBuilder.createFunction().

DIBuilder.createFunction() now requires the return type to be of
subroutine type and consequently needs a DICompositeType.
Merge pull request #365 from redstar/todebug

Fix LLVM 3.4 change to DIBuilder.createFunction().