Use struct reference to resolve extension attributes
Fix codegen print code
Support struct attributes of struct references
Include function name in llvm module name