Commit Graph

69787 Commits

Author SHA1 Message Date
Brian Hackett
aae52a8f74 [INFER] Don't use shell bindMethod function on non-compileAndGo scripts, bug 654710. 2011-05-09 13:03:03 -07:00
Brian Hackett
4955efb887 [INFER] Don't mark type as synced after writing known-undefined values to locals, bug 655508. 2011-05-09 10:56:54 -07:00
Brian Hackett
3f7deb9632 [INFER] Need to call ensureVarTypes before slotTypes, bug 653395. 2011-05-09 10:27:18 -07:00
Brian Hackett
93fea1ae90 [INFER] Maybe fix build breaks. 2011-05-09 10:00:29 -07:00
Brian Hackett
c930c3e982 Merge TM -> JM
--HG--
rename : js/src/GlobalObject.cpp => js/src/vm/GlobalObject.cpp
2011-05-09 09:49:48 -07:00
Paul Biggar
9c572e750b Bug 652593: Remove compound GET*PROP opcodes, to fix strict warnings (r=bhackett,dao)
The undefined property strict-mode warning was missed under some compound
opcodes. JM had removed those opcodes, and so the warnings appeared. This
ports the opcode remove to TM, fixing the warnings.

Bug 647626 removed the compound opcodes from JM, as they made type-inference
and the JITs more complex, for a minor speed impact (see
https://bugzilla.mozilla.org/show_bug.cgi?id=647626#c6 for benchmarks).

This also fixes the strict mode warnings that appeared in the browser as a
result of the fix.
2011-05-09 07:37:37 -07:00
Brian Hackett
c280d034f7 Merge. 2011-05-09 07:28:32 -07:00
Brian Hackett
417f1e64b9 [INFER] Remove on stack recompilation, allow removed on stack JIT frames to rejoin into the interpreter, bug 650163. 2011-05-09 07:12:47 -07:00
Tom Schuster
82f4ee4b3f Bug 654685: add reportCompare to fix warnings, no_r= 2011-05-08 00:11:03 +02:00
Tom Schuster
d84a191ec4 Bug 654685: Remove Boolean.prototype.toJSON r=pbiggar 2011-05-07 22:34:44 +02:00
Jan de Mooij
44b6d881bb [INFER] Fix ensureInteger to forget allocated GP register, bug 655505. r=bhackett 2011-05-07 20:40:44 +02:00
Tom Schuster
cd0d919992 Bug 652154: Fix path reversal on windows in jstest r=pbiggar 2011-05-07 19:20:31 +02:00
Makoto Kato
fc6d231d63 Bug 654873 - ARM target (gcc 4.5.2 or later) should use built-in atomic function instead of arm-kuser. r=gal 2011-05-08 00:47:13 +09:00
Paul Biggar
b7a5a9115b Bug 653153: Fix the parseInt fast path doubles above 1e21 (r=jwalden)
The spec says parseInt needs to convert to a string before being converted to
an integer. For 1e+21 (and greater), ToString uses exponential notation:
"1e+21", which get's parsed as 1. The existing parseInt fast path for doubles
converted it directly into an integer, giving the result 1e21. The fix adds a
bounds check to see if the exponential notation is triggered, and still uses
the fast path if not.
2011-05-07 05:31:59 -07:00
Gregor Wagner
b087efb463 Bug 655175 - Add entrance and exit time to GCTimer. r=igor 2011-05-06 13:59:37 -07:00
Jacob Bramley
9f550706e6 Replace prtypes inclusion to make cross-builds work again. [bug 655042] [r=bhackett] 2011-05-06 08:41:58 +01:00
Brian Hackett
a47edd60c2 [INFER] Allow call inlining and LICM to work together, bug 653962. 2011-05-05 13:59:29 -07:00
Jan de Mooij
1da5f47004 [INFER] Don't call learnType when property type is unknown, bug 654393. r=bhackett 2011-05-05 21:35:30 +02:00
Jan de Mooij
c49fd69f2a [INFER] Use generated rejoin path for ic::NativeCall/ic::NativeNew, bug 654536. r=bhackett 2011-05-05 21:35:29 +02:00
Jan de Mooij
c97bd188d2 [INFER] Fix rejoin point for JSOP_DEFLOCALFUN* and JSOP_IN, bug 653397. r=bhackett 2011-05-05 10:04:31 +02:00
Paul Biggar
9b9d0b4696 [INFER] Turn off check-ooms as part of |make check|, it doesn't work right. 2011-05-04 04:49:41 -07:00
Paul Biggar
b5c783f971 [INFER] Remove calls to js_free, js_calloc, etc. Also stop checking for this until closer to merge time. 2011-05-04 04:49:14 -07:00
Brian Hackett
714311bfc4 [INFER] Workaround GCC miscompilation. 2011-05-02 17:37:06 -07:00
Brian Hackett
3e59ff5829 [INFER] Clear f.scratch indicator value on all return paths from CompileFunction, bug 653980. 2011-05-01 17:59:37 -07:00
Brian Hackett
f6366f7596 [INFER] Watch out for Invoke called on dummy frames when deciding to use a new type for the result, bug 653262. 2011-05-01 17:45:53 -07:00
Brian Hackett
052373f8bb [INFER] Assume double types for entries with empty type sets being merged into double phi nodes, bug 653249. 2011-05-01 17:38:05 -07:00
Brian Hackett
d868b00326 [INFER] Mark INCELEM opcodes accessing non-integer properties as producing unknown values, bug 653243. 2011-05-01 16:58:01 -07:00
Brian Hackett
b7e3e5433b [INFER] LICM for accesses on definite properties, bug 653962. 2011-05-01 16:31:14 -07:00
Brian Hackett
c54f0f760a [INFER] Add read barrier for shapes with non-standard getters, bug 653639. 2011-04-30 19:42:58 -07:00
Brian Hackett
7151aca829 [INFER] Increase number of fixed slots for objects with more properties accessed than direct accesses, bug 649376. 2011-04-30 18:45:01 -07:00
Brian Hackett
0abb7dc501 [INFER] Mark type objects as unknown when splicing in a prototype with unknown properties, bug 653639. 2011-04-30 18:19:35 -07:00
Brian Hackett
b6adf3132e [INFER] Understand types of window objects, bug 653639. 2011-04-30 17:53:40 -07:00
Jeff Walden
188186661c Bug 653789 - Don't let Object.prototype.toLocaleString recur itself to death. r=luke
--HG--
extra : rebase_source : 92b8b568512a28c577e526fd25b593db071a65b7
2011-04-30 03:22:25 -04:00
Brian Hackett
838352f9db Merge TM -> JM 2011-04-28 13:02:47 -07:00
Brian Hackett
f13ebb4bef [INFER] Analyses for eliminating integer overflow guards, bug 652520. 2011-04-27 23:28:54 -07:00
Brian Hackett
29bff816ec [INFER] Don't use varTypes in compiler with inference disabled. 2011-04-27 07:07:38 -07:00
Paul Biggar
e4d6748cc4 Bug 642772: Don't recreate a class during enumeration, if it has been deleted (r=bhackett)
In SM, classes are lazily resolved. If we detect that a class about to be used
has not yet been resolved, then we resolve it. However, the way that we decided
that they were resolved was broken. If the global object had a String property,
then it had been resolved. So what happened when we deleted the String
property? Well, it got resolved again.

Instead of using the String property of the global object, we now use the
contructor slot on the global object. This works fine for String, but some
classes don't have a constructor, like Math and JSON. For those classes, we set
the constructor slot to True. In either case, we can now tell that a class is
resolved if the constructor slot in not Undefined.
2011-04-27 04:13:56 -07:00
Brian Hackett
28d7599a5f [INFER] Only convert known ints when fixing doubles before branching, bug 652590. 2011-04-26 23:28:39 -07:00
Brian Hackett
179f1102a9 [INFER] Rejoin from recompilations triggered by CompileFunction, bug 646267. 2011-04-26 22:07:52 -07:00
Brian Hackett
af83908117 [INFER] Propagate SSA stack eagerly to targets in switch and try blocks, bug 652646. 2011-04-26 14:32:52 -07:00
Jeff Walden
5d29251946 Bug 652746 - Implement js::ArgumentsObject, js::NormalArgumentsObject, and js::StrictArgumentsObject. r=njn
--HG--
extra : rebase_source : 84258ffa658ba09928ab9b86f8017fa6683f3146
2011-04-25 22:40:00 -04:00
Jeff Walden
77b801ddde Bug 653888 - Clean up the Walk internal spec function, make the reviver delete properties from arrays if it returns undefined. r=pbiggar (relanding after a first try that appears to have triggered a random orange without methodjit on Linux debug, that went away on two rebuilds)
--HG--
extra : rebase_source : 4cef6936c39d63e232363baa64d24c0d1fabc60e
2011-05-05 00:24:15 -04:00
Luke Wagner
1bf189f3f2 Fix test added by 33d8b418732b to not hit quota on 64-bit (r=orange)
--HG--
rename : js/src/jit-test/tests/test-apply-many-args.js => js/src/jit-test/tests/basic/test-apply-many-args.js
rename : js/src/jit-test/tests/testCrossGlobalInvokeSession.js => js/src/jit-test/tests/basic/testCrossGlobalInvokeSession.js
2011-05-10 11:33:26 -07:00
Luke Wagner
8145c1e4e2 Bug 653785 - Properly compute stack quota in bumpLimit (r=dvander) 2011-05-10 09:51:53 -07:00
Chris Leary
e9c15c147e Merge mozilla-central to tracemonkey. 2011-05-09 14:27:44 -07:00
Paul Biggar
1cd5ff1908 Backed out changeset 0c6254cb818d (bug 652593) due to PROCESS-CRASH orange in M(oth). 2011-05-09 09:50:36 -07:00
Julian Reschke
e74e4501f5 Implement exslt-date:date-time (bug 603159) r=sicking 2011-04-26 13:46:43 +01:00
Matt Brubeck
9cb8fa2cff Bug 643032 - Don't start network status listener until Fennec starts [r=blassey] 2011-05-09 12:58:55 -07:00
Jonas Sicking
549cf0a0a2 Bug 643786. Don't fire DOMNodeRemoved when removing the editor created <br>. r=ehsan 2011-05-09 12:33:04 -07:00
Jonas Sicking
48d490b63b Bug 650493 Part 3: Back out patch from bug 645572 as we should now always end up with correct update counts. r=ehsan 2011-05-09 12:33:03 -07:00