Commit Graph

35958 Commits

Author SHA1 Message Date
Benjamin Bouvier
3ffb1eb125 Bug 878495 - In shell, print "[native code]" for native functions. r=luke 2013-06-06 17:57:15 -07:00
Benjamin Bouvier
9ee14f0649 Bug 878435 - In asmjs mode, compare in uint32 mode only if both operands are unsigned. r=luke 2013-06-06 17:00:08 -07:00
Benjamin Bouvier
e9ecd45e88 Bug 877908 - Precludes also directives after "use asm". r=luke 2013-06-06 13:49:13 -07:00
Anand Soni
36e81da58c Bug 875449 - Rename ListBase to DOMProxy, since these proxies are used for all sorts of objects that aren't in any way like lists. r=djvj 2013-06-07 00:02:26 +05:30
Martin Husemann
ee61930148 Bug 870325 - Fix alignment of Bindings on SPARC64. r=nnethercote.
--HG--
extra : rebase_source : d89c154f8b3484079cc7fb4fa656cf8ff72bae8a
2013-06-06 22:03:12 -07:00
Jason Orendorff
7560b11dde Bug 879831, part 7 - Isolate the frontend. Make files outside the frontend include frontend/BytecodeCompiler.h or frontend/SourceNotes.h if possible; those two act as facades and do not include all the rest of the frontend headers. r=njn. 2013-06-06 22:49:17 -05:00
Jason Orendorff
9e51182d34 Bug 879831, part 6 - Factor out Debugger inlines that depend on other "inlines" headers into vm/Debugger-inl.h. r=njn. 2013-06-06 22:49:03 -05:00
Jason Orendorff
063f616a75 Bug 879831, part 5 - Factor out js::Probes functions that depend on "inlines" headers into vm/Probes-inl.h. r=njn.
--HG--
rename : js/src/jsprobes.h => js/src/vm/Probes-inl.h
rename : js/src/jsprobes.cpp => js/src/vm/Probes.cpp
2013-06-06 22:48:45 -05:00
Jason Orendorff
f578f2deb5 Bug 879831, part 4 - Make vm/String-inl.h not include gc/Barrier-inl.h, breaking an #include cycle. Make vm/Shape-inl.h not #include itself. r=njn. 2013-06-06 22:48:32 -05:00
Jason Orendorff
063f633aa3 Bug 879831, part 3 - Make jsobjinlines.h not include jsscriptinlines.h, eliminating the #include cycle jsscriptinlines.h -> vm/Shape-inl.h -> jsobjinlines.h -> jsscriptinlines.h. r=njn. 2013-06-04 16:24:43 -05:00
Jason Orendorff
ebb79d6588 Bug 879831, part 2 - Move JSObject::asModule from Module.h to jsobjinlines.h since it requires another inline function defined in that header. r=njn. 2013-06-06 22:48:00 -05:00
Jason Orendorff
483d5aaa19 Bug 879831, part 1 - Uninline JSScript::sourceObject. Same as bug 877444, but actually uninline sourceObject all the way out to a .cpp file. r=njn. 2013-06-06 22:47:40 -05:00
Jason Orendorff
1299dfaf08 Bug 879831, part 0 - Add defined(JS_ION) guard to more ion headers, to prevent the need for #ifdef JS_ION around #includes in other files. r=njn. 2013-06-06 22:47:23 -05:00
Jason Orendorff
6529e5c409 Bug 872717 - Remove PNX_FORINVAR. Its only user, jsreflect.cpp, does not really need the hint. r=luke. 2013-06-06 22:47:23 -05:00
Jason Orendorff
dac9045adf Bug 872720 - Do not bother calling clearParent in Parser::newRegExp. r=Waldo. 2013-06-06 22:47:23 -05:00
Jason Orendorff
62143386f6 Bug 879817 - Remove unused method Debugger::isDebugWrapper. r=jonco. 2013-06-06 22:47:22 -05:00
Benjamin Bouvier
d98480141d Bug 878520: don't clone native asm.js functions; r=luke 2013-06-06 14:48:40 -07:00
Jim Blandy
8691f71850 Bug 877444: Remove new 'inline function used but not defined' warnings for ScriptSourceObject-related functions. r=terrence 2013-06-06 14:47:12 -07:00
Jon Coppeard
446418bc45 Bug 878486: Improve sweeping of breakpoints r=terrence 2013-06-06 14:47:12 -07:00
Eddy Bruel
0bddaed1a5 Bug 858060 - Throw SyntaxError on module syntax. Fix bogus assertion. r=jorendorff.
--HG--
extra : rebase_source : ea25ab9fa70ff070ab85a5d4187d9b7312817557
2013-06-05 14:17:43 -05:00
Jason Orendorff
aafbec68ce Bug 877639 - Switch some code in frontend/FoldConstants.cpp from getOp() to getKind(). r=jwalden.
--HG--
extra : rebase_source : 97c448dc52660fc0257d81730b1c07eb2b89df40
2013-06-05 14:17:43 -05:00
Sankha Narayan Guria
7b2aff4ced Bug 875433 - Array.prototype.iterator is the same function object as .values. r=jorendorff.
--HG--
extra : rebase_source : 0b9b93bd796ba2c528b89c377b8aac922631ec98
2013-06-05 14:17:35 -05:00
Sankha Narayan Guria
cb3aa2346e Bug 869996 - Implement Set.prototype.{keys, values, entries}. r=jorendorff.
--HG--
extra : rebase_source : 6d978d49d2fb696162b1cef5b643a209a01a4711
2013-06-05 14:17:30 -05:00
Sean Stangl
63095521a7 Bug 858586 - Drop temporary MGetPropertyCache reference if native inlining fails. r=h4writer 2013-06-05 17:05:28 -07:00
Kannan Vijayan
3a15382a12 Bug 877287 - Fix regression introduced by revision 7df36088f645. r=bhackett 2013-06-06 15:03:40 -04:00
Kyle Huey
3c18bb93bd Back out bug 877584 on this CLOSED TREE. 2013-06-06 10:49:09 -07:00
Kyle Huey
a983f728ac Bug 877584: Route JS holding through the cycle collection runtime so it can do different things on different threads. r=mccr8 2013-06-06 10:23:45 -07:00
Terrence Cole
305b13f06f Bug 879874 - Do not allow JIT code to allocate into a disabled nursery; r=bhackett
--HG--
extra : rebase_source : 5f08128798e8f54d1a145f85ed75d0fab2343381
2013-06-06 09:09:05 -07:00
Hannes Verschore
3fcf048742 Bug 876607 - IonMonkey: Reordering of operands should look to real use count, r=sstangl 2013-06-06 15:35:13 +02:00
Martin Stransky
be0eb98266 Bug 877626 - Port GTK2 to GTK3 - build config, headers fix. r=karlt 2013-06-06 07:57:58 -04:00
Martin Stransky
93519395da Bug 877626 - Port GTK2 to GTK3 - build config, configure in js part. r=karlt 2013-06-06 07:57:40 -04:00
Jon Coppeard
67b65aef25 Bug 876654 - [jsdbg2] Assertion failure: kind == CrossCompartmentKey::DebuggerScript ... at jsgc.cpp:3241 r=terrence 2013-06-06 10:16:51 +01:00
Peter Van der Beken
e4144fe986 Bug 877654 - Remove thisptr offset tables - Remove thisptr table support from XPConnect. r=Ms2ger.
--HG--
extra : rebase_source : 9f333a76ba13b518e3a33a230adcdd154606fa1a
2013-05-21 21:59:30 +02:00
Daniel Holbert
419d3f37bc Bug 880078: Remove no-longer-used variable 'secFlag' from XPCWrappedNative::CallMethod. r=bholley 2013-06-06 00:27:16 -07:00
Dan Gohman
d2d2af3c55 Bug 875916 - Fix some x86 assembly spew bugs. Also, change the order of operands in psrlq and psllq to be consistent with the operand ordering used in the rest of the file. r=sstangl 2013-06-05 17:10:47 -07:00
Dan Gohman
c2ded3e0bd Bug 875917 - Use xorl to zero a register instead of movl. r=luke 2013-06-05 17:10:47 -07:00
Dan Gohman
a391d737e0 Bug 871728 - Avoid pushing the stack pointer to the stack; it's saved and restored in ABIArgGenerator::NonVolatileReg. r=luke 2013-06-05 17:10:47 -07:00
Dan Gohman
87af9eb6ec Bug 878818 - Include column numbers in asm.js diagnostics. r=luke 2013-06-05 17:10:47 -07:00
Jeff Walden
30fbb1dadd Bug 496923 - Import the ch09 test262 tests into jstests. r=generating-script-was-reviewed
--HG--
extra : rebase_source : 2734046863d49aa9400d1602a65dc8a851b10b05
2013-06-05 17:02:40 -07:00
Jeff Walden
0c24d7d87c Bug 496923 - Update the test262-updating script to import the ch09 tests. r=terrence
--HG--
extra : rebase_source : ec86e42b9808880804d06599fdf334602e1b2842
2013-06-05 17:02:37 -07:00
Steve Fink
f7f0db4c7c Backed out changeset 55fa2277a702 (bug 848592) for exposing pre-existing rooting hazards. Will fix the problems before relanding. The green you see is a lie. 2013-06-05 16:03:30 -07:00
Dan Gohman
6205d25c2c Bug 875910 - Optimize x86 and x64 encodings for test and cmp with immediates. r=sstangl 2013-06-05 14:59:33 -07:00
Steve Fink
65cc8bf36b Bug 848592 - Mark memory accessed by dynamic rooting analysis as defined, r=njn
--HG--
extra : rebase_source : 15c4b347a2705883bffa148955b2a3c147499864
2013-03-06 15:56:35 -08:00
Steve Fink
6236142a93 Bug 876776 - Add a -J option to the shell for running under jorendb, r=terrence
--HG--
extra : rebase_source : 60afc69f0c9ac65ab913797f8393779f3566ed2e
2013-06-04 12:14:17 -07:00
Steve Fink
b22e1776a4 Bug 876776 - Do not crash when dumping a NULL object, r=terrence
--HG--
extra : rebase_source : 01e96eb326c42b62b49251dce5dac7e2fbc031b5
2013-06-04 12:14:17 -07:00
Steve Fink
1c27bfb0ec Bug 876776 - Allow using '--' to terminate shell arguments (and pass the rest to the script), r=terrence
This makes
  ./js -f foo.js -- a b c
the same as
  ./js foo.js a b c
but also allows things like
  ./js -e 'print(arguments)' -- a b c
which previously wasn't possible.

--HG--
extra : rebase_source : dbed845426786c86f20e6f9abe4479e07bb228b9
2013-05-22 09:50:08 -07:00
Steve Fink
843379c20f Bug 876776 - Import latest version of js/examples/jorendb.js. DONTBUILD
--HG--
extra : rebase_source : 03473dd562c2b41e4720dcbaa41dc07bcc57c050
2013-06-04 12:14:17 -07:00
Terrence Cole
92c0bf02c4 Bug 879079 - Fix some exact rooting static analysis failures under js/src; r=bhackett
--HG--
extra : rebase_source : 3d5181531aef48516f1ec257b674e033a2da2aa6
2013-06-03 16:30:00 -07:00
Jeff Walden
601ccbd7b3 Bug 496923 - Import the ch11/ test262 tests into jstests. r=generating-script-was-reviewed
--HG--
extra : rebase_source : e83eb03850d7283fffe3aa81d72d9198427b2771
2013-06-04 17:32:01 -07:00
Jeff Walden
652140b987 Bug 496923 - Make the test262-importing script import tests from ch11/. r=terrence
--HG--
extra : rebase_source : 33780b34a54407f5deff88aa523318d3c83a1024
2013-06-04 17:31:54 -07:00
Jeff Walden
0ca5f9abd9 Bug 496923 - Import the ch13/ test262 tests into jstests. r=generating-script-was-reviewed
--HG--
extra : rebase_source : b82cc636c546b1005ad837d3d2eeb696e686abbb
2013-06-04 17:13:53 -07:00
Jeff Walden
c8fb09ffe4 Bug 496923 - Make update-test262.sh import tests from ch13/. r=terrence
--HG--
extra : rebase_source : ab8c3abd718abb15c7b3a8ed91c42dca7908d2f1
2013-06-04 10:46:42 -07:00
Jeff Walden
db8b2e9b13 Bug 496923 - Import the ch10/ test262 tests into jstests. r=generating-script-was-reviewed
--HG--
extra : rebase_source : 13e84b256b23baba42cdb8b139e17174d9a264df
2013-06-04 17:04:47 -07:00
Jeff Walden
660959dcb4 Bug 496923 - Make the test262-importing script import tests from ch10/, and skip the tests that we don't currently pass (6 for test harness shortcomings, 2 for actual bugs). r=terrence
--HG--
extra : rebase_source : 559020828156815e625a96815792ed08107fb790
2013-06-04 10:43:42 -07:00
Kannan Vijayan
21398e47da Bug 870034. r=bhackett 2013-06-05 16:52:11 -04:00
Kannan Vijayan
a16723311b Bug 877287. r=h4writer 2013-06-05 16:42:23 -04:00
Sean Stangl
580396922c Bug 879564 followup - Fix build on a CLOSED TREE. no_r=red 2013-06-05 12:05:30 -07:00
Kevin Stangl
a759ab7084 Bug 879564 - Inline Math.atan2(). r=sstangl 2013-06-05 11:36:09 -07:00
Gavin Sharp
58ec80b040 Bug 878291: define RELEASE_BUILD/NIGHTLY_BUILD in the js configure too, r=ted
--HG--
extra : transplant_source : %20%C3%0EB%1F%F0%ED%84%91%EF3%06vJ%AA%BB3y%A8%D1
2013-05-31 14:56:48 -07:00
Dan Gohman
6566491f07 Bug 875929 - Now that js_bitscan_ctz64 and js_bitscan_clz64 are implemented on all platforms, clean up some compatibility code which isn't needed anymore. r=evilpies 2013-06-05 07:39:10 -07:00
Benjamin Bouvier
b535eb4c00 Bug 879033 - Replace MOZ_DOUBLE_IS_NEGZERO by IsNegativeZero on Solaris. r=jimb 2013-06-03 15:09:22 -07:00
Dan Gohman
e38a539d67 Bug 875929 - Generalize the code for materializing double constants. In particular, this new code handles 0x7ff8000000000000, a common NaN. To support this, implement js_bitscan_ctz64 for 32-bit targets. r=evilpies 2013-06-04 21:39:13 -07:00
Bobby Holley
88a9016df8 Bug 877261 - Fold XPCCallContext::Init into XPCCallContext::XPCCallContext. r=Ms2ger
The large block is a simple move.
2013-06-04 21:11:21 -07:00
Bobby Holley
a3d8f01f4d Bug 877261 - Remove WrapperInitOptions. r=Ms2ger
Now that we don't have the separate path for initialization from an
XPCLazyCallContext, this stuff can be simplified. We get rid of Init entirely
in the next patch.
2013-06-04 21:11:21 -07:00
Bobby Holley
12746e0315 Bug 877261 - Kill XPCLazyCallContext. r=Ms2ger
\o/
2013-06-04 21:11:21 -07:00
Bobby Holley
064c330185 Bug 877261 - Remove XPCLazyCallContext from Quickstubs. r=Ms2ger
There are a number of places where quickstubs does a scary-looking call to
lccx->SetWrapper. However, the lccx never gets morphed into a ccx, nor does
it escape in any other way. And unlike ccxes, declaring an lccx on the stack
doesn't have any observable side-effects. So this should actually be safe.
2013-06-04 21:11:20 -07:00
Bobby Holley
b0bce0db6d Bug 877261 - Stop Passing lccx in a few Quickstubs places where we just want a JSContext. r=Ms2ger 2013-06-04 21:11:20 -07:00
Bobby Holley
7903bf3f7d Bug 877261 - Remove the last two non-quickstub XPCLazyCallContexts. r=Ms2ger 2013-06-04 21:11:20 -07:00
Bobby Holley
9eb992af2f Bug 877261 - Remove a bunch of now-unnecessary ccx declarations from nsXPConnect. r=Ms2ber 2013-06-04 21:11:20 -07:00
Bobby Holley
f5457d09df Bug 877261 - Remove XPCCallContext from XPCCComponents. r=Ms2ger 2013-06-04 21:11:19 -07:00
Bobby Holley
da316c6a98 Bug 877261 - Stop taking a cx in XPCWrappedJS::GetNewOrUsed. r=Ms2ger
Some of these callers seem to be passing a ccx when they don't need to, but
let's just remove the param all together for consistency.
2013-06-04 21:11:19 -07:00
Bobby Holley
638227a746 Bug 877261 - Stop using XPCCallContext for XPCConvert. r=Ms2ger 2013-06-04 21:11:19 -07:00
Bobby Holley
e5c61adafd Bug 877261 - Stop using XPCCallContext for most stuff in XPCWrappedNative.cpp. r=Ms2ger
Starting with the above, this is the smallest unit change that will compile.
2013-06-04 21:11:18 -07:00
Bobby Holley
e59ccf90a4 Bug 877478 - Remove the machinery for security managers in XPCContext. r=mrbkap 2013-06-04 19:56:43 -07:00
Bobby Holley
19669be68e Bug 877478 - Move all consumers of GetAppropriateSecurityManager to GetDefaultSecurityManager and rm the former. r=mrbkap 2013-06-04 19:56:43 -07:00
Bobby Holley
55582b37e2 Bug 877478 - Remove SetSecurityManagerForJSContext and related APIs. r=mrbkap
The only consumers here were the shells, which we've now fixed.
2013-06-04 19:56:43 -07:00
Bobby Holley
4a91b8a55b Bug 877478 - Remove FullTrustSecMan junk. r=mrbkap
This stuff shouldn't be necessary anymore. The default security manager should
do the right thing given for script running in the scope of a BackstagePass.
2013-06-04 19:56:42 -07:00
Shu-yu Guo
bab8db53a5 Bug 878374 - Support non-Value Handles as VMFunction outparams. (r=nbp) 2013-05-31 19:16:14 -07:00
Shu-yu Guo
39e8edf31c Bug 877559 - Fix passing double arguments to callVM in Ion. (r=nbp) 2013-05-29 22:36:51 -07:00
Dan Gohman
4f601ff93d Bug 875419 - Fold ImmWord values which fit in 32-bit immediate fields. r=sstangl 2013-06-04 20:52:21 -04:00
Jeff Walden
2c7f4e9985 Bug 879376 - Remove a bunch of obsolete files from js/src/tests. r=terrence 2013-06-04 10:46:43 -07:00
Jeff Walden
6c2595aaf3 Bug 496923 - Remove js/src/tests/update-test402.sh as update-test262.sh subsumes it. r=trivial 2013-06-04 10:46:36 -07:00
Jeff Walden
1d79dc6f65 Bug 496923 - Allow update-test262.sh to copy directly from a test262 working directory, when (even local) cloning would be too slow. r=terrence
--HG--
extra : rebase_source : 9d74cf9bd45425defcbfd70291545442f8f5f489
2013-06-03 15:17:42 -07:00
Terrence Cole
8e1d01cb44 No Bug - Fix merge bustage impacting GGC builds; r=Waldo
--HG--
extra : rebase_source : 8933560f048763af305c6a530f61a97708b90d59
2013-06-04 15:44:48 -07:00
Bobby Holley
4c7eef9edd Bug 879341 - Use an AutoPushJSContext in JSD. r=gabor
We can do this now, since it won't cause infinite recursion.
2013-06-04 15:37:59 -07:00
Bobby Holley
3e0ac7f12e Bug 879341 - Use an AutoSafeJSContext in CheckForDebugMode like we should. r=gabor 2013-06-04 15:37:59 -07:00
Bobby Holley
660e0551e4 Bug 879341 - Move CheckForDebugMode into the main thread event observer. r=gabor
This gets invoked at the very end of nsThread::ProcessNextEvent(). If the cx stack
is empty here, that means the event loop isn't nested - if it it was, we'd at
least have a null cx on the stack from a higher-level call to OnProcessNextEvent
for the main thread observer.

As such, this seems like a much more reasonable place to make debug mode changes.
2013-06-04 15:37:58 -07:00
Terrence Cole
a523229f4e Bug 877835 - Make the nursery a permanent allocation; r=bhackett
--HG--
extra : rebase_source : 5a874d10b07abb61c093a3dc19af6d4eeb3d9497
2013-05-28 15:51:34 -07:00
Sean Stangl
9c1dad3c87 Bug 877912 - Fix incorrect MatchOnly start position. r=mjrosenb 2013-06-04 15:01:38 -07:00
Brian Hackett
5eadb5d9ef Bug 878293 - Remove Parser::init, cleanup parse maps pool, r=waldo. 2013-06-04 15:53:29 -06:00
Terrence Cole
2fcad78032 Bug 879112 - Allocate singleton call objects tenured; r=bhackett
--HG--
extra : rebase_source : 42ec6e999f44503a32137bca4fe0e92eedd831cc
2013-06-04 14:52:32 -07:00
Jason Orendorff
4da266b9d9 Backed out changeset 5d6e363a7b4b, which hasn't got review yet. 2013-06-04 16:29:01 -05:00
Jason Orendorff
cc4bdc0a68 Bug 872416, part 6 - Make jsobjinlines.h not include jsscriptinlines.h, eliminating the #include cycle jsscriptinlines.h -> vm/Shape-inl.h -> jsobjinlines.h -> jsscriptinlines.h. NOT REVIEWED YET. 2013-06-04 16:24:43 -05:00
Jason Orendorff
9e2386f98e Bug 872416, part 5b - Make objinlines.h not include vm/RegExpStatics-inl.h. r=luke. (Reviewed as "part 5".) 2013-06-04 16:24:43 -05:00
Jason Orendorff
14ca17255e Bug 872416, part 5a - Make vm/RegExpObject-inl.h and vm/RegExpStatic-inl.h not include each other, breaking an include cycle. r=luke. (Reviewed as "part 10", but changing the order of the patches made it easier to get the whole stack working in GCC.) 2013-06-04 16:24:43 -05:00
Jason Orendorff
1f1cfd45f7 Bug 872416, part 4 - Make jsobjinlines.h not include builtin/Iterator-inl.h (since that includes jsobjinlines.h, making a cycle). r=luke. 2013-06-04 16:24:42 -05:00
Jason Orendorff
73c975e65a Bug 872416, part 3 - Make frontend/BytecodeCompiler.h not include frontend/Parser.h. r=luke. 2013-06-04 16:24:42 -05:00
Jason Orendorff
1bed60a39e Bug 872416, part 2b - Make jsanalyze.h not include jspocodeinlines.h. Factor out inlines into jsanalyzeinlines.h. r=luke. (This is only half of the patch reviewed as "part 2". The other half didn't work in GCC and is on hold.) 2013-06-04 16:24:42 -05:00
Jason Orendorff
d67dcba82f Bug 872416, part 2a - Factor out source notes into a new header file. Make jsopcodeinlines.h not include BytecodeEmitter.h. r=luke. (Reviewed as "part 11", but doing this first made it easier to get the whole stack working in GCC.) 2013-06-04 16:24:42 -05:00
Jason Orendorff
c760350680 Bug 872416, part 1 - Move js::frontend::LexicalLookup from a header into the only file that uses it. r=luke. 2013-06-04 16:24:42 -05:00