aboutsummaryrefslogtreecommitdiff
path: root/src/parseTools.js
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2012-11-24 15:56:05 +0100
committerAlon Zakai <alonzakai@gmail.com>2012-11-24 15:56:05 +0100
commit915d48e596c36117b58c8d530f72abac8ea28e8e (patch)
tree4248f0f0c146a165886ca05d3904822865f50614 /src/parseTools.js
parent9c5a0dbdd3a7a1052a58735c654c3cb69dadf140 (diff)
remove STRING_TABLE in preparation for better system to reduce # of globals
Diffstat (limited to 'src/parseTools.js')
-rw-r--r--src/parseTools.js17
1 files changed, 12 insertions, 5 deletions
diff --git a/src/parseTools.js b/src/parseTools.js
index c70b511a..2591a94a 100644
--- a/src/parseTools.js
+++ b/src/parseTools.js
@@ -356,6 +356,14 @@ function hasVarArgs(params) {
return false;
}
+function makeGlobalDef(ident) {
+ return 'var ' + ident + ';'; // TODO: add option for namespacing or offsetting to allow reducing the number of globals
+}
+
+function makeGlobalUse(ident) {
+ return ident; // TODO: add option for namespacing or offsetting to allow reducing the number of globals
+}
+
function finalizeParam(param) {
if (param.intertype in PARSABLE_LLVM_FUNCTIONS) {
return finalizeLLVMFunctionCall(param);
@@ -368,10 +376,9 @@ function finalizeParam(param) {
return parseI64Constant(param.ident);
}
var ret = toNiceIdent(param.ident);
- if (ret in Variables.globals && Variables.globals[ret].isString) {
- ret = "STRING_TABLE." + ret;
+ if (ret in Variables.globals) {
+ ret = makeGlobalUse(ret);
}
-
return ret;
}
}
@@ -1472,8 +1479,8 @@ function finalizeLLVMParameter(param, noIndexizeFunctions) {
}
} else if (param.intertype == 'value') {
ret = param.ident;
- if (ret in Variables.globals && Variables.globals[ret].isString) {
- ret = "STRING_TABLE." + ret;
+ if (ret in Variables.globals) {
+ ret = makeGlobalUse(ret);
}
if (param.type == 'i64' && USE_TYPED_ARRAYS == 2) {
ret = parseI64Constant(ret);