Commit Graph

1070 Commits

Author SHA1 Message Date
Jacek Caban d49635f08a jscript: Better handling of to_integer result in String.lastIndexOf. 2012-05-03 20:44:09 +02:00
Jacek Caban baa07477d2 jscript: Bettter handling of to_number result in String.indexOf. 2012-05-03 20:44:09 +02:00
Jacek Caban 621180e81c jscript: Better handling of to_integer result in String.charCodeAt. 2012-05-03 20:44:08 +02:00
Jacek Caban 0143201eac jscript: Better handling of to_integer result in String.charAt. 2012-05-03 20:44:08 +02:00
Jacek Caban 3ee7438a5f jscript: Better handling of to_integer result in Array.splice. 2012-05-03 20:44:08 +02:00
Jacek Caban 5b83abced7 jscript: Properly test if double may be converted to int32. 2012-05-02 20:14:56 +02:00
Jacek Caban 13db9a1662 jscript: Added VT_I2 tests. 2012-05-01 15:28:24 +02:00
Jacek Caban c9c8c6165e jscript: Added support for VT_I2 in invoke_prop_func. 2012-05-01 15:28:22 +02:00
Jacek Caban da125450da jscript: Added support for VT_I2 in disp_call. 2012-05-01 15:28:18 +02:00
Jacek Caban b6a1912392 jscript: Added support for VT_I2 in disp_propget. 2012-05-01 15:28:16 +02:00
Thomas Faber 58ad6fcf1f jscript: Add missing port.h include for isnan. 2012-04-30 11:00:35 +02:00
Jacek Caban 30acd235dd jscript: Removed unused do_*_tag_format arguments. 2012-04-27 12:02:31 +02:00
Jacek Caban 424b63119c jscript: Use stack_push_int in interp_bneg. 2012-04-27 12:02:28 +02:00
Jacek Caban ca15adfde6 jscript: Get rid of parser function collecting hack by moving the logic to compiler. 2012-04-26 19:27:36 +02:00
Piotr Caban cc6205f10c jscript: Fix toExponential behavior when exponent is 0. 2012-04-25 17:16:37 +02:00
Jacek Caban 474f1152b2 jscript: Moved collecting variable declarations from parser to compiler. 2012-04-25 12:17:08 +02:00
Jacek Caban b866c7f5e9 jscript: Make parser a temporary compiler object. 2012-04-25 12:17:04 +02:00
Jacek Caban 97b44da746 jscript: Store function parameters in function_code_t. 2012-04-25 12:17:01 +02:00
Jacek Caban d1a4053953 jscript: Fixed func->funcs leak. 2012-04-25 12:16:56 +02:00
Jacek Caban 64a3f5077f jscript: Store variable names in function_code_t. 2012-04-25 12:16:52 +02:00
Jacek Caban 375ab889d8 jscript: Store source code range in function_code_t. 2012-04-24 17:45:27 +02:00
Jacek Caban 8c533d10d6 jscript: Store function name in function_code_t. 2012-04-24 17:45:18 +02:00
Jacek Caban d76b675ea8 jscript: Use compiler-generated struct for representing function code. 2012-04-24 17:45:16 +02:00
Jacek Caban 4733fd0623 jscript: Added regexp 'pre-parser' to support non-backslash-sequenced non-terminating '/' in characted classes. 2012-04-20 11:59:51 +02:00
Piotr Caban 4c4c7c047f jscript: Added Number.toPrecision implementation. 2012-04-19 19:28:11 +02:00
Piotr Caban c1228eb45f jscript: Added Number.toExponential implementation. 2012-04-19 19:28:11 +02:00
Piotr Caban a20c0d1141 jscript: Added Number.toFixed implementation. 2012-04-19 19:28:11 +02:00
Piotr Caban b81e44f8d9 jscript: Make parsing of double more accurate. 2012-04-19 19:28:10 +02:00
André Hentschel 6677982728 jscript: Remove unneeded shadow variable. 2012-04-18 17:13:14 +02:00
Jacek Caban c1cb8f29b0 jscript: Correctly handle empty matches in String.replace. 2012-04-18 15:44:47 +02:00
Jacek Caban e21588aef7 jscript: Pass correct cpbegin to InitMatch. 2012-04-18 15:44:43 +02:00
Frédéric Delanoy 69f3d23045 jscript: Assorted spelling fixes. 2012-04-18 13:59:44 +02:00
Jacek Caban d2fb2af8ee jscript: Added parameterized property assignment tests. 2012-04-17 19:19:07 +02:00
Jacek Caban 0b0e34ab39 jscript: Addded parameterized property assignment support. 2012-04-17 19:19:03 +02:00
Jacek Caban 05d59abc1c jscript: Make sure to jump out of switch before entering implicit default clausule. 2012-04-16 12:08:56 +02:00
Jacek Caban 78fc648dec jscript: Replace only the first match for non-regexp pattern in String.replace. 2012-04-09 17:16:00 +02:00
Jacek Caban bf066791e0 jscript: Avoid cleaning an uninitialized variable. 2012-04-04 19:02:49 +02:00
Jacek Caban 114a439fed jscript: Fixed parsing /=/ regexp. 2012-04-02 14:14:32 +02:00
Jacek Caban 353553e0aa jscript: Emit undefined statement return for switch without default clausule. 2012-04-02 14:14:30 +02:00
Jacek Caban b3bafb60a2 jscript: Fixed jsheap_grow implementation. 2012-04-02 12:34:45 +02:00
Jacek Caban 8f36daa422 jscript: Properly handle NULL bstr in str_to_number. 2012-03-28 17:28:34 +02:00
Jacek Caban 7bb41e75b6 jscript: Store value as double in NumberInstance object. 2012-03-27 11:43:17 +02:00
Jacek Caban 0bf61fb640 jscript: Return double instead of VARIANT from stack_pop_number. 2012-03-27 11:43:10 +02:00
Jacek Caban 0d287ff0b1 jscript: Return double instead of VARIANT from date_utc. 2012-03-27 11:43:06 +02:00
Jacek Caban 451169fb93 jscript: Return double instead of VARIANT from to_number. 2012-03-27 11:43:01 +02:00
Jacek Caban c18b84cf4e jscript: Added decoding tests. 2012-03-26 18:15:15 +02:00
Jacek Caban f7a8650500 jscript: Added decoding support. 2012-03-26 18:15:11 +02:00
Jacek Caban 129183ebb0 jscript: Added JScriptEncode object tests. 2012-03-26 18:15:09 +02:00
Jacek Caban 4a9eea3516 jscript: Added beginning support for JScriptEncode object. 2012-03-26 18:15:09 +02:00
Jacek Caban 0762106648 jscript: Store source code in bytecode_t. 2012-03-26 18:15:08 +02:00
Jacek Caban 84ed86c431 jscript: Get rid of no longer needed caller argument from builtin_invoke_t. 2012-03-14 17:34:00 +01:00
Jacek Caban a6ee63eef3 jscript: Removed no longer needed ref counting in parser_ctx_t. 2012-03-13 10:30:53 +01:00
Jacek Caban a1c4c84005 jscript: Store parser_ctx_t in bytecode_t instead of other way around. 2012-03-13 10:30:49 +01:00
Jacek Caban 8c347fd71d jscript: Store script context in exec_ctx_t. 2012-03-13 10:30:42 +01:00
Jacek Caban 9d4b0bd502 jscript: Don't store compiler_ctx_t in parser_ctx_t. 2012-03-13 10:30:36 +01:00
Jacek Caban be29a73845 jscript: Call script_parse from compile_script, not the other way around. 2012-03-13 10:30:32 +01:00
Jacek Caban 825eb76321 jscript: Compile all function from given source in one run. 2012-03-13 10:30:27 +01:00
Jacek Caban 4fb1cad149 jscript: Simplify compile_subscript_stat. 2012-03-13 10:30:22 +01:00
Jacek Caban 9f83c6061f jscript: Store bytecode_t in exec_ctx_t. 2012-03-13 10:30:18 +01:00
Jacek Caban 29b9237c91 jscript: Removed no longer needed caller argument from jsdisp_get_idx. 2012-03-12 16:37:21 +01:00
Jacek Caban 0d9cc45406 jscript: Removed no longer needed caller argument from jsdisp_propget_name. 2012-03-12 16:37:21 +01:00
Jacek Caban 7d4ba8db63 jscript: Removed no longer needed caller argument from jsdisp_propput_idx. 2012-03-12 16:37:20 +01:00
Jacek Caban 12bc6e0cc7 jscript: Removed no longer needed caller argument from jsdisp_propput_name and jsdisp_propget. 2012-03-12 16:37:20 +01:00
Jacek Caban a80dd7cb79 jscript: Removed no longer needed caller argument from jsdisp_call_name. 2012-03-12 16:37:19 +01:00
Jacek Caban 07be020a48 jscript: Removed no longer needed caller argument from jsdisp_call_value. 2012-03-12 16:37:19 +01:00
Jacek Caban 93972b79cc jscript: Added VARIANT conversion tests. 2012-03-12 16:37:18 +01:00
Jacek Caban c6360c3e6e jscript: Added QueryService(SID_VariantConversion) implementation. 2012-03-12 16:37:18 +01:00
Jacek Caban bac7c1ef36 jscript: Added ChangeType implementation. 2012-03-12 16:37:17 +01:00
Jacek Caban fb79915803 jscript: Removed no longer needed disp_propput caller argument. 2012-03-09 11:31:29 +01:00
Jacek Caban f560e98346 jscript: Removed no longer needed disp_propget caller argument. 2012-03-09 11:31:24 +01:00
Jacek Caban e0ae18260e jscript: Removed no longer needed caller argument of disp_call function. 2012-03-09 11:31:19 +01:00
Jacek Caban dfb59c6049 jscript: Pass proper caller argument to InvokeEx. 2012-03-09 11:31:15 +01:00
Jacek Caban f8b20563aa jscript: Properly handle NULL strings in add_eval. 2012-03-09 11:31:09 +01:00
Jacek Caban 1cadd7cc32 jscript: Added IVariantChangeType stub implementation. 2012-03-09 11:31:04 +01:00
Jacek Caban 2830a21e1d jscript: Get rid of unused SET_CALLED macro. 2012-01-27 18:05:52 +01:00
Alistair Leslie-Hughes ae46ad83a5 jscript: ActiveX objects might not support IServiceProvider Interface. 2012-01-25 20:39:48 +01:00
Jacek Caban e5baa75034 jscript: Simplify identifier_eval function. 2012-01-18 16:25:46 +01:00
Alexandre Julliard 902915f667 jscript: Set return value after assert(0) to avoid warnings. 2012-01-17 15:02:47 +01:00
Jacek Caban f03b24ad3e jscript: Get rid of no longer used OP_label. 2012-01-17 14:08:33 +01:00
Jacek Caban 5c47f4a269 jscript: Added labelled statements tests. 2012-01-17 14:08:32 +01:00
Jacek Caban 4aec6b1090 jscript: Added labelled continue statement implementation. 2012-01-17 14:08:32 +01:00
Jacek Caban 9a4e12aa93 jscript: Added labelled break statement implementation. 2012-01-17 14:07:54 +01:00
Jacek Caban 383e2b1a0e jscript: Added labelled statement implementation. 2012-01-17 14:06:13 +01:00
Jacek Caban 5561ee635c jscript: Fixed jscript tests on some broken versions. 2012-01-12 16:09:45 +01:00
Jacek Caban afcb9a0130 jscript: Run sanity check with invoke_version 0. 2012-01-12 16:09:42 +01:00
Jacek Caban e7bb8813a9 jscript: Don't use break in finally block on pre-IE8 jscript. 2012-01-12 16:09:33 +01:00
Jacek Caban dc5a75a7ac jscript: Fixed continue inside for..in statement. 2012-01-10 17:58:57 +01:00
Francois Gouget ee2111b5d5 jscript: Make some engine functions static. 2012-01-09 12:52:10 +01:00
Jacek Caban 5640da1414 jscript: Run script tests in version 2 by default. 2012-01-06 19:24:23 +01:00
Michael Stefaniuc 158c8b76cb jscript: Remove break after return (Smatch). 2012-01-03 12:37:57 +01:00
Marcus Meissner 0648a567a8 jscript: Mark some function DECLSPEC_HIDDEN. 2012-01-03 12:37:31 +01:00
Jacek Caban 4f59ab4ab7 jscript: Use 0 as an invalid label value. 2012-01-03 12:37:23 +01:00
Jacek Caban 9752df99af jscript: Get rid of instr_off from expression_t. 2012-01-03 12:37:23 +01:00
Jacek Caban 708c83e208 jscript: Make 0 an invalid code offset. 2012-01-03 12:37:22 +01:00
Jacek Caban 11453b2414 jscript: Always alloc the first chunk of code buffer. 2012-01-03 12:37:22 +01:00
Jacek Caban da07748ca2 jscript: Get rid of return_type_t. 2011-12-30 15:41:07 +01:00
Jacek Caban 83e8658894 jscript: Get rid of no longer needed interp_tree. 2011-12-30 15:41:06 +01:00
Jacek Caban cdd90254dd jscript: Get rid of no longer needed compile_interp_fallback since we can handle all execution by bytecode.
We use compiler on whole functions body now. There is still some work
done to move it one level up (to whole source string) to do some work
that's currently done (sometimes in a hacky way) by parser, but the most
critical part is done.
2011-12-30 15:41:06 +01:00
Jacek Caban e0552ad8c3 jscript: Use bytecode for labeled continue and break statements. 2011-12-30 15:41:06 +01:00
Jacek Caban b82a6982a9 jscript: Get rid of no longer needed type field of return_type_t structure. 2011-12-30 15:41:05 +01:00