added types to llvm generation and removed redundant code