From 9153bb402e7f18df2c600a716021e004438aaf1e Mon Sep 17 00:00:00 2001 From: Adrian Thurston Date: Sat, 20 Dec 2014 12:07:22 -0500 Subject: added structElInfo to the runtime data Storing size and can add trees offsets for downreffing on free. --- src/pdacodegen.cc | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'src/pdacodegen.cc') diff --git a/src/pdacodegen.cc b/src/pdacodegen.cc index c41f4012..96b1df1a 100644 --- a/src/pdacodegen.cc +++ b/src/pdacodegen.cc @@ -197,6 +197,17 @@ void PdaCodeGen::writeRuntimeData( RuntimeData *runtimeData, PdaTables *pdaTable } out << "\n};\n\n"; + /* + * selInfo + */ + out << "static StructElInfo " << selInfo() << "[] = {\n"; + for ( int i = 0; i < runtimeData->numStructEls; i++ ) { + out << "\t{ "; + out << runtimeData->selInfo[i].size << ", "; + out << " }"; + } + out << "\n};\n\n"; + /* * frameInfo */ @@ -410,6 +421,9 @@ void PdaCodeGen::writeRuntimeData( RuntimeData *runtimeData, PdaTables *pdaTable " " << lelInfo() << ",\n" " " << runtimeData->numLangEls << ",\n" "\n" + " " << selInfo() << ",\n" + " " << runtimeData->numStructEls << ",\n" + "\n" " " << prodInfo() << ",\n" " " << runtimeData->numProds << ",\n" "\n" -- cgit v1.2.1