summaryrefslogtreecommitdiff
path: root/src/synthesis.cc
diff options
context:
space:
mode:
authorAdrian Thurston <thurston@colm.net>2018-05-13 00:41:54 -0400
committerAdrian Thurston <thurston@colm.net>2018-05-13 00:41:54 -0400
commit47d60422cc5744cd3b75a6926ec4f1e7b2ae0ae3 (patch)
tree75cbe82b54ed9a9798f5595fecfa4c2269c678ed /src/synthesis.cc
parentb421b74dc376d1b10ba4dbb25ed721248ab3f8e4 (diff)
downloadcolm-47d60422cc5744cd3b75a6926ec4f1e7b2ae0ae3.tar.gz
added stds, a list of streams, used for bare sends
Diffstat (limited to 'src/synthesis.cc')
-rw-r--r--src/synthesis.cc10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/synthesis.cc b/src/synthesis.cc
index e86851f4..198f0fa4 100644
--- a/src/synthesis.cc
+++ b/src/synthesis.cc
@@ -2840,6 +2840,12 @@ int Compiler::argvOffset()
return argv->offset;
}
+int Compiler::stdsOffset()
+{
+ globalObjectDef->referenceField( this, stds );
+ return stds->offset;
+}
+
void Compiler::compileRootBlock( )
{
CodeBlock *block = rootCodeBlock;
@@ -2865,6 +2871,10 @@ void Compiler::compileRootBlock( )
code.append( IN_LOAD_ARGV );
code.appendHalf( argvOffset() );
+ code.append( IN_FN );
+ code.append( IN_INIT_STDS );
+ code.appendHalf( stdsOffset() );
+
block->compile( this, code );
code.append( IN_FN );