Sami Vaarala
d9e3f50038
Minor stack access optimization
8 years ago
Sami Vaarala
b8472acade
Merge pull request #862 from svaarala/array-new-length-coercion
Avoid value stack churn for array .length coercion
8 years ago
Sami Vaarala
72a6f8d54f
Avoid value stack churn for array .length coercion
8 years ago
Sami Vaarala
d708ec061e
Merge pull request #890 from svaarala/remove-unnecessary-nan-check
Remove unnecessary NaN check for a few API calls
8 years ago
Sami Vaarala
c559e82fc1
Remove unnecessary NaN normalization check
8 years ago
Sami Vaarala
d18b1e158f
Merge pull request #887 from svaarala/duk-get-tval-or-none
Add internal duk_get_tval_or_unused()
8 years ago
Sami Vaarala
13c51c47c5
Testcase fix for duk_get_tval_or_unused()
duk_require_heapptr() call now throws a TypeError instead of a RangeError for
an invalid index. This is not ideal, but is more consistent with other API
call behavior (at the moment; it'd be better if RangeErrors were used for
index errors in general).
8 years ago
Sami Vaarala
35666c3fcf
Add internal duk_get_tval_or_unused()
The call returns a non-NULL duk_tval pointer to a static DUK_TAG_UNUSED so
that a call site can avoid an unnecessary NULL check. This is useful for
e.g. calls like duk_get_boolean().
8 years ago
Sami Vaarala
e596ca6ccb
Merge pull request #884 from svaarala/safer-string-interning
Avoid side effects during string intern processing
8 years ago
Sami Vaarala
8ef2018dc1
Releases: string intern safety
8 years ago
Sami Vaarala
3d4a0e4108
Avoid temporary in duk_buffer_to_string()
8 years ago
Sami Vaarala
46ef04c989
Avoid side effects during string intern
Previous implementation avoided side effects during string table resize.
This is sufficient in most cases but not in the following:
- Caller pushes a string using duk_push_lstring(), with the data and
length referencing the data area of a dynamic or external buffer.
- When allocating a new duk_hstring a side effect triggers a finalizer.
- The finalizer resizes or reconfigures the dynamic/external buffer so
that the original duk_push_lstring() arguments are invalidated.
- When it's time to copy the data over into the duk_hstring, the pointer
and/or length are invalid and memory unsafe behavior follows.
Avoid this problem by preventing mark-and-sweep side effects for the duration
of the entire string intern processing.
8 years ago
Sami Vaarala
4f1e53faa1
Add testcase for string intern side effect risk
8 years ago
Sami Vaarala
25fc5309bd
Merge pull request #888 from svaarala/perf-test-fixes
Perf test fixes for buffer reworks
8 years ago
Sami Vaarala
d169e696d7
Perf test fixes for buffer reworks
8 years ago
Sami Vaarala
121f1da0e1
Merge pull request #886 from svaarala/lightfunc-proxy-coercion
Lightfunc and plain buffer as a Proxy handler
8 years ago
Sami Vaarala
3447a8e8c7
Plain buffer as Proxy handler, comment improvement
8 years ago
Sami Vaarala
7c406c4ca1
Add buffer as Proxy handler test
8 years ago
Sami Vaarala
f107d5a10c
Merge pull request #875 from svaarala/remove-duktape-buffer-object
Remove Duktape.Buffer support
8 years ago
Sami Vaarala
815104bde9
Releases: Duktape.Buffer removal
8 years ago
Sami Vaarala
16267bd484
2.0 migration notes for Duktape.Buffer removal
8 years ago
Sami Vaarala
1503b96ca8
Internal doc fixes for Duktape.Buffer removal
8 years ago
Sami Vaarala
5f35d229aa
Update dukweb example to reworked buffer bindings
8 years ago
Sami Vaarala
668fe031ea
Website changes for buffer changes
* Plain buffer behavior change
* Duktape.Buffer removal
* New custom calls: ArrayBuffer.allocPlain(), ArrayBuffer.plainOf(),
and String.fromBuffer()
8 years ago
Sami Vaarala
9f244c7301
Make duk_debug_proxy.js 1.x and 2.x compatible
8 years ago
Sami Vaarala
9276a50b8f
Polyfill to approximate removed Duktape.Buffer
8 years ago
Sami Vaarala
895134868b
DUK_USE_BUFFEROBJECT_SUPPORT metadata update
8 years ago
Sami Vaarala
9fb57da898
Testcase fixes for Duktape.Buffer removal
8 years ago
Sami Vaarala
d79f5e8921
Remove Duktape.Buffer support from code
Also some footprint optimization for typed array constructor: omit optimized
copy modes 0 and 1 and use fallback copy mode 2 in all cases.
8 years ago
Sami Vaarala
c079d33011
Merge pull request #882 from svaarala/add-typedarray-accumulation-example
Add typed array accumulation example
8 years ago
Sami Vaarala
a1642d38f6
Merge pull request #881 from svaarala/fix-console-extra-trivia
Console extra Proxy and JX improvements
8 years ago
Sami Vaarala
f7b7bb5e4b
Add typed array accumulation example
8 years ago
Sami Vaarala
f2188ec6fe
Console extra Proxy and JX improvements
* Tolerate Proxy setup errors in case Proxy throws (= disabled).
* Fix bug in JX encoding error handling. Incorrect quote marks caused
value to be number coerced (+v) rather than string coerced (''+v).
8 years ago
Sami Vaarala
d051324fe5
Merge pull request #877 from svaarala/add-selftest-realloc-test
Add selftest alloc/realloc/free test
8 years ago
Sami Vaarala
8c5926e650
Releases: alloc func self test
8 years ago
Sami Vaarala
379e3da5de
Add a minimal alloc func test to self tests
8 years ago
Sami Vaarala
4d36e60700
Merge pull request #871 from svaarala/add-regexp-literal-bracket-support
Add regexp literal bracket (at least closing bracket ']') support
8 years ago
Sami Vaarala
e7dc973c2a
Releases: right bracket in regexps
8 years ago
Sami Vaarala
43643fc11f
Add ES6 regexp syntax to matrix test
8 years ago
Sami Vaarala
3e505dab82
Makefile commented out config option
8 years ago
Sami Vaarala
0ec934ec6b
Website regexp leniency rewording, ES6 Annex ref
8 years ago
Sami Vaarala
8ca309733a
Testcase changes for ES6 literal right bracket
8 years ago
Sami Vaarala
8569bdd08d
Config option changes for regexp bracket parsing
8 years ago
Sami Vaarala
05c711b56b
Allow unescaped ']' in regexp syntax by default
Also merge the existing non-standard RegExp syntax options which are actually
part of ES6 Annex B now.
8 years ago
Sami Vaarala
f63e9fecaf
Merge pull request #864 from svaarala/plain-buffer-as-arraybuffer
Change plain buffers to behave like subset ArrayBuffer instances
8 years ago
Sami Vaarala
17f79198b9
Releases: plain buffer as ArrayBuffer, etc
8 years ago
Sami Vaarala
75b840806b
2.0 migration notes for buffers, pointers, lfuncs
8 years ago
Sami Vaarala
0c79e5c801
Internal doc fixes for plain buffer change
8 years ago
Sami Vaarala
af671d0435
Debugger classname renumbering
8 years ago
Sami Vaarala
b4b8b72d05
Testcase changes for plain buffers/pointers
8 years ago