aboutsummaryrefslogtreecommitdiff
path: root/src/settings.js
diff options
context:
space:
mode:
authoralon@honor <none@none>2010-10-13 22:24:06 -0700
committeralon@honor <none@none>2010-10-13 22:24:06 -0700
commit5efa5e467476859cdfb55a3a9dd22bf4584f670e (patch)
treeb08d44f39989df6ac1ffdba6ebbf38849fee2013 /src/settings.js
parentd276be7499faff9814dc3cad07c2685284645106 (diff)
aggressively nativize variables; stop doing optimizations that are no longer needed; fix some uncovered bugs; 49% speedup
Diffstat (limited to 'src/settings.js')
-rw-r--r--src/settings.js10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/settings.js b/src/settings.js
index 6b621770..717bd334 100644
--- a/src/settings.js
+++ b/src/settings.js
@@ -1,5 +1,5 @@
// Tuning
-QUANTUM_SIZE = 1; // This is the size of an individual field in a structure. 1 would
+QUANTUM_SIZE = 4; // This is the size of an individual field in a structure. 1 would
// lead to e.g. doubles and chars both taking 1 memory address. This
// is a form of 'compressed' memory, with shrinking and stretching
// according to the type, when compared to C/C++. On the other hand
@@ -8,10 +8,10 @@ QUANTUM_SIZE = 1; // This is the size of an individual field in a structure. 1 w
// the top address - the others are just empty, an 'alignment cost'
// of sorts.
//
- // llvm-gcc works with 1. However, clang uses llvm_memcpy for various
- // things, and the number of bytes it copies is hardcoded. A simple
- // way to prevent problems with that is to set QUANTUM_SIZE to 8.
- // See the 'copyop' automatic test.
+ // 1 is somewhat faster, but dangerous.
+ //
+ // TODO: Cleverly analyze malloc, memset, memcpy etc. operations in
+ // llvm, and replace with the proper values for us
GUARD_SIGNS = 1; // Whether we make sure to convert unsigned values to signed values.
// Decreases performance with additional runtime checks. Might not be