Andrew Drake
30a3cc58b6
[JAEGER] Fix build on pedantic compilers, fix win32 shell. r=dvander
2010-06-22 19:11:50 -07:00
David Anderson
79bd5716a1
[JAEGER] Use GETPROP PIC for calls when the LHS is known to be an object.
2010-06-22 17:54:05 -07:00
David Anderson
82f5e8e60e
[JAEGER] Fix GETPROP bug with dense arrays.
2010-06-22 16:53:35 -07:00
David Anderson
4e21a7e40e
[JAEGER] Use PIC for instanceof's obj.prototype fetch.
2010-06-22 16:21:21 -07:00
David Mandelin
5635d6ffb5
Adding a space to push to cedar
2010-06-22 15:46:26 -07:00
David Mandelin
a2628ff847
Windows C build fix
2010-06-22 15:26:36 -07:00
David Anderson
408c243f13
[JAEGER] Fixed nits from branding fix.
2010-06-22 15:09:07 -07:00
David Anderson
f4a612c01c
[JAEGER] Cache atom in PIC directly, instead of index, for simplicity.
2010-06-22 15:07:10 -07:00
David Anderson
7965d753a3
[JAEGER] Tighten method barrier test in SETPROP pic.
2010-06-22 14:50:22 -07:00
David Anderson
d31caee286
[JAEGER] Fixed SETPROP PIC not maintaining branding invariants.
2010-06-22 14:45:16 -07:00
David Anderson
56bdd8b4f7
[JAEGER] Allow patching of the inline path after generating stubs.
2010-06-22 13:32:55 -07:00
Luke Wagner
50d922350a
Fix bustage compiling jsapi.h as Objective-C++
2010-06-22 11:54:27 -07:00
Luke Wagner
bae4687e65
Reuse existing JS_ValueToId instead of introducing new JSVAL_TO_JSID
2010-06-22 11:51:46 -07:00
Luke Wagner
9cdf8a36e7
Fix bug in TraceRecorder::storeHole introduced earlier
2010-06-22 10:47:54 -07:00
Luke Wagner
c872ea6cb5
Fix bugs introduced by overzealous application of setNumber in cset 5c5bb620d2c8
2010-06-22 10:14:11 -07:00
Luke Wagner
f536e360bf
Take advantage of value representation in the tracer when mapping values to and from trace types
2010-06-22 09:43:21 -07:00
David Anderson
a6a668c9d3
[JAEGER] Enabled SETPROP PIC, slow path now takes property cache.
2010-06-21 19:41:29 -07:00
David Anderson
39aff71e4a
[JAEGER] Precursor work for Dave Mandelin's SETPROP IC (bug 572310).
2010-06-21 19:34:20 -07:00
David Anderson
e7cd0a7538
[JAEGER] Precursor SETPROP IC work - shimmy top of stack down.
2010-06-21 19:34:18 -07:00
Luke Wagner
7db2d34bde
Merge
2010-06-21 16:30:17 -07:00
Luke Wagner
ebb2d4890b
Be careful when using setDouble that we shouldn't use setNumber instead to fit in an int when possible. Was missing a lot in jsdate.cpp
2010-06-21 16:28:02 -07:00
David Mandelin
4ab1d47307
Bug 573578: intern string before converting to jsid in PropertyOpForwarder
2010-06-21 16:07:31 -07:00
Luke Wagner
90a6ed7cd3
Merge
2010-06-21 12:51:25 -07:00
Luke Wagner
6cc55bb8d5
Fix C-only compile errors
2010-06-21 12:49:23 -07:00
Luke Wagner
5ced30e1fc
Change 32-bit jsval rep to use dense type index instead of bitmask
2010-06-21 12:28:56 -07:00
David Anderson
178ac0c976
[JAEGER] Fixed build.
2010-06-20 16:16:51 -07:00
David Anderson
68eadd08f9
[JAEGER] Re-added Dave Mandelin's GETPROP PIC stubs for string and array length (bug 572310, part 2).
2010-06-20 16:07:21 -07:00
David Anderson
a1983f037c
[JAEGER] Use cheaper comparison for GETPROP type checks.
2010-06-20 13:17:45 -07:00
David Mandelin
1f140032fd
Bug 573171: Make JSOP_LENGTH produce an int32-tagged value for dense arrays
2010-06-18 18:30:08 -07:00
David Mandelin
49ad7aab28
Windows browser build fixes
2010-06-18 15:58:34 -07:00
David Mandelin
8c3417b347
MSVC build fix: windows.h includes an extern "C" operator==
2010-06-18 14:16:57 -07:00
Luke Wagner
dc916dafc5
Tweak trace-tests/tests/basic/delete-named-names.js checkStats
2010-06-18 01:06:48 -07:00
Luke Wagner
cc9eacee25
Merge
2010-06-18 01:02:26 -07:00
Luke Wagner
bf3afea5b8
Fix bugs; browser is up and running
2010-06-18 00:59:10 -07:00
Luke Wagner
b7955fe7b7
Browser builds
2010-06-17 23:51:54 -07:00
David Mandelin
1ec5c13d2a
Remove MAP_32BIT which prevents us from building on many platforms and we aren't going to use any more anyway.
2010-06-17 18:23:47 -07:00
David Mandelin
c046cbd662
Bug 572842: restore deleted test in ~XPCTraceableVariant
2010-06-17 18:06:24 -07:00
Sean Stangl
a879cc1e9e
Redefine JSVAL type constants for one-comparison object, primitive check.
...
The following types are defined to have the upper mask bits set:
JSVAL_MASK16_NULL is 0x2000;
JSVAL_MASK16_NONFUNOBJ is 0x4000;
JSVAL_MASK16_FUNOBJ is 0x8000.
So each of IS_OBJECT(), IS_OBJECT_OR_NULL(), and IS_PRIMITIVE()
just requires one comparison, saving a bitwise AND.
2010-06-17 16:44:10 -07:00
Sean Stangl
bdffe4e8ba
Redefine JSVAL type constants for one-comparison object, primitive check.
...
The following types are defined to have the upper mask bits set:
JSVAL_MASK16_NULL is 0x2000;
JSVAL_MASK16_NONFUNOBJ is 0x4000;
JSVAL_MASK16_FUNOBJ is 0x8000.
So each of IS_OBJECT(), IS_OBJECT_OR_NULL(), and IS_PRIMITIVE()
just requires one comparison, saving a bitwise AND.
2010-06-17 16:44:10 -07:00
Sean Stangl
d8f50a0f4e
Redefine JSVAL_MASK16_INT32 to ((uint16)0x0001).
...
This permits isNumber() to just check <= JSVAL_MASK32_INT32,
since no number can have type JSVAL_MASK32_CLEAR (asserted).
2010-06-17 16:44:06 -07:00
David Anderson
884b494c29
[JAEGER] Re-added Dave Mandelin's polymorphic inline caches for GETPROP (bug 572310).
2010-06-19 21:58:55 -07:00
David Anderson
ff9eadf410
[JAEGER] Fast path for EQ,NE when one side is constant null or undefined.
2010-06-18 13:55:08 -07:00
David Anderson
4d054d48ba
[JAEGER] Don't optimize escaping variables (bug 566022).
2010-06-18 11:07:15 -07:00
Sean Stangl
1c4a45fe74
[JAEGER] Change JSFrameReg to static const on advice from Luke.
2010-06-18 00:44:17 -07:00
David Anderson
cbe631e38a
[JAEGER] Fixed regression in light frames.
2010-06-17 20:33:16 -07:00
David Anderson
d0cfbb0fad
[JAEGER] Fixed bug in JSOP_UNBRANDTHIS.
2010-06-17 20:30:19 -07:00
David Anderson
8142533567
[JAEGER] Added JSOP_UNBRAND,UNBRANDTHIS.
2010-06-17 20:27:22 -07:00
David Anderson
fb49319458
[JAEGER] Lower var init and call obj creation into script prologue.
2010-06-17 18:36:30 -07:00
David Anderson
d5d0ad5d93
[JAEGER] Guard that calls have compiled code.
2010-06-17 18:36:28 -07:00
Sean Stangl
9a415dd80c
Redefine JSVAL_MASK16_INT32 to ((uint16)0x0001).
...
This permits isNumber() to just check <= JSVAL_MASK32_INT32,
since no number can have type JSVAL_MASK32_CLEAR (asserted).
2010-06-17 16:44:06 -07:00