mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-13 20:32:21 +00:00
Fix two bugs in the CppWriter.cpp:
1. Return the module from the MakeModule function so it can be verified. 2. Make sure types get generated with their names git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28536 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
d9169d3cbe
commit
74e032a4d4
@ -1120,6 +1120,13 @@ CppWriter::printTypeDefInternal(const Type* Ty) {
|
||||
assert(!"Invalid TypeID");
|
||||
}
|
||||
|
||||
// If the type had a name, make sure we recreate it.
|
||||
const std::string* progTypeName =
|
||||
findTypeName(TheModule->getSymbolTable(),Ty);
|
||||
if (progTypeName)
|
||||
Out << "mod->addTypeName(\"" << *progTypeName << "\", "
|
||||
<< typeName << ");\n";
|
||||
|
||||
// Pop us off the type stack
|
||||
TypeStack.pop_back();
|
||||
|
||||
@ -1989,6 +1996,7 @@ void WriteModuleToCppFile(Module* mod, std::ostream& o) {
|
||||
SlotMachine SlotTable(mod);
|
||||
CppWriter W(o, SlotTable, mod);
|
||||
W.write(mod);
|
||||
o << "return mod;\n";
|
||||
o << "}\n";
|
||||
}
|
||||
|
||||
|
@ -13,11 +13,16 @@ USEDLIBS = LLVMAsmParser LLVMBCWriter LLVMCore \
|
||||
|
||||
include $(LEVEL)/Makefile.common
|
||||
|
||||
tryit: all-local recurty.cpp globalvars.cpp
|
||||
CPPFILESTOTRY = recurty.cpp globalvars.cpp
|
||||
tryit: all-local $(CPPFILESTOTRY)
|
||||
|
||||
%.cpp : %.ll
|
||||
%.cpp : %.ll $(ToolDir)/llvm2cpp
|
||||
llvm2cpp $*.ll -f -o $*.cpp
|
||||
gcc -I$(LLVM_SRC_ROOT)/include -I$(LLVM_OBJ_ROOT)/include -g \
|
||||
|
||||
% : %.cpp Makefile
|
||||
gcc -Wall -I$(LLVM_SRC_ROOT)/include -I$(LLVM_OBJ_ROOT)/include -g \
|
||||
-D__STDC_LIMIT_MACROS -L$(LibDir) $(LibDir)/LLVMCore.o -lLLVMSupport \
|
||||
$(LibDir)/LLVMbzip2.o -lLLVMSystem -lstdc++ \
|
||||
$(LibDir)/LLVMbzip2.o -lLLVMSystem -lstdc++ -Wno-unused \
|
||||
$*.cpp -o $*
|
||||
|
||||
#$(CPPFILESTOTRY): $(ToolDir)/llvm2cpp
|
||||
|
Loading…
Reference in New Issue
Block a user