More Dwarf debug code changes.

Add a fix for LLVM 3.3 (`createTemporaryType()` was removed) and add
linkage name to `createGlobalVariable()` (new in 3.3).
Return type must be of type DIComposite.