Граф коммитов

52177 Коммитов

Автор SHA1 Сообщение Дата
Lars T Hansen 9a05479976 Bug 1176214 - Part 3: VM core changes. r=waldo
--HG--
extra : rebase_source : 7020c7375dc84a4bb34b56ea90fd9daa084edd0d
2015-12-02 16:38:26 +01:00
Lars T Hansen 5aae98ed9a Bug 1176214 - Part 2: Preliminary adjustments. r=waldo
--HG--
extra : rebase_source : b306ed5c0ded6830a9333e975d521bc6729c8312
2015-11-23 19:51:50 +01:00
Lars T Hansen 8da342c976 Bug 1176214 - Part 1: Remove obsolete files. r=waldo
--HG--
extra : rebase_source : 70cb1a286fe425bb438349b74020a73e72a6be03
2015-11-13 11:35:37 +01:00
Jan de Mooij 9de1b439be Bug 322529 part 5 - Give Windows ExecutableAllocator its own XorShift128+ RNG. r=jwalden 2015-12-02 13:56:01 +01:00
Jan de Mooij b103e7d1a9 Bug 322529 part 4 - Fix setRNGState shell function and math-random.js jit-test. r=arai 2015-12-02 13:56:01 +01:00
Jan de Mooij 90cb097793 Bug 322529 part 3 - Fix LRandom JIT code to use the new algorithm. r=arai,jwalden 2015-12-02 13:56:00 +01:00
Jan de Mooij 3c2424e82f Bug 322529 part 2 - Add xor64 and add64 to macro-assemblers. r=arai 2015-12-02 13:56:00 +01:00
Jan de Mooij 3a03b8ce13 Bug 322529 part 1 - Use XorShift128PlusRNG for Math.random(). r=jwalden 2015-12-02 13:56:00 +01:00
Jon Coppeard 539c6c9f63 Bug 1227567 - Add Ion cache for module namepsace imports r=shu 2015-12-02 10:10:26 +00:00
Jon Coppeard 2ee97dbd00 Bug 1227567 - Optimise module namespace imports in Ion where we have type information r=shu 2015-12-02 10:10:26 +00:00
Jon Coppeard 64725598d5 Bug 1227567 - Add baseline IC to optimise module namespace imports r=shu 2015-12-02 10:10:26 +00:00
Mike Hommey 88221586dd Bug 1225682 - Don't use nsAuto{,C}String as class member variables in js/xpconnect/. r=mccr8 2015-12-02 11:04:37 +09:00
Eric Faust 0c156b26dc Bug 1229579 - Make class members properly XDR-able. (r=billm) 2015-12-01 15:53:00 -08:00
Steve Fink f9e576a222 Bug 1206308 - include nsprpub and zlib for Windows, plus minor enhancements to make-source-package.sh, r=sstangl
--HG--
extra : rebase_source : d109e313cbd1a6baaac1e215a30c8d38f858a822
extra : amend_source : ef998f30851ecba93f5853f8bdb1eb39c3d22b9b
2015-09-18 17:13:33 -07:00
Yury Delendik b984c50fec Bug 1218029 - Adds ScriptLoadHandler and implements OnIncrementalData callback. r=djvj
--HG--
extra : commitid : 7TyrlgQ2f2Z
2015-12-01 08:00:58 -06:00
Yury Delendik 66199890c4 Bug 1218029 - Adds IncrementalStreamLoader interface stubs. r=djvj
--HG--
extra : commitid : J0UubFG9gvz
2015-11-30 08:54:11 -06:00
Steve Fink ff55707b83 Bug 1225298 - Use GCHashMap for UniqueIdMap, r=terrence
--HG--
extra : rebase_source : 322f5b64eb3e3e37d3ab51ca813b05fe8e78e7bd
2015-11-18 17:37:03 -08:00
Steve Fink fd192a968a Bug 1225298 - Use GCHashMap for liveScopes, r=terrence
--HG--
extra : rebase_source : b364399010d0eadaade561de310125ec3f1f8ed1
2015-11-19 11:21:07 -08:00
Steve Fink 244cf5d69d Bug 1225298 - Use GCHashSet for InnerViewTable, r=terrence
--HG--
extra : rebase_source : 715f2bb5a591efd1acdb28ba1c83f5f2c9c06855
2015-11-19 11:20:53 -08:00
Steve Fink 96199a6125 Bug 1225298 - Use GCHashSet for SymbolRegistry, r=terrence
--HG--
extra : rebase_source : a26b02eee734cb4dbacd4329c96d9e56683b2446
2015-11-18 08:58:57 -08:00
Steve Fink 642ecb4eec Bug 1225298 - Use GCHashSet for SavedStack set of frames, r=terrence
--HG--
extra : rebase_source : 3d713bc3f020a112b6026a0f9605ba7b8427466b
2015-11-19 11:20:44 -08:00
Steve Fink 4a4f8a6547 Bug 1225298 - Use GCHashSet for atoms table, r=terrence
--HG--
extra : rebase_source : e091995dec92f0bd17cfe06885ffc2037cfdcb9d
2015-11-16 21:56:36 -08:00
Morgan Phillips c0cc327f56 Bug 1134253 - Improve object extensibility TypeError messages produced from Object.defineProperty; r=jorendorff
--HG--
extra : rebase_source : a1078b7e6b5605054553f5b445b21f989881f99c
2015-12-01 10:13:58 -08:00
Hannes Verschore d08b0cdd80 Bug 1226816: SharedStubs - Don't enable the call scripted get prop shared stub in ionmonkey yet, r=jandem 2015-12-01 18:11:36 +01:00
Jan de Mooij bb9418628d Bug 1227287 - Fix minor bug with f.arguments and lazy arguments. r=luke 2015-12-01 16:20:36 +01:00
Jan de Mooij 27b63a868f Bug 1225367 - Fix bogus asserts when storing symbols to typed arrays. r=h4writer 2015-12-01 16:17:31 +01:00
Benjamin Bouvier 0385cdc9bd Bug 1229258: Implement dummy asmMergeWith/retargetWithOffset functions in none backend; r=h4writer
--HG--
extra : rebase_source : a6a77c381ef0b6824971e96a28d8cd3c4e364c87
2015-12-01 13:06:35 +01:00
Benjamin Bouvier 4db8c7ff5e Bug 1228340: Get rid of the js_ prefix for CodeSpec, CodeName, NumCodeSpecs; r=jorendorff
--HG--
extra : rebase_source : 15581237242211fb1b29743f909d9c04669c6b2c
2015-11-26 15:51:26 +01:00
Benjamin Bouvier 2e76d6b88a Bug 1228340: Rename JitOptions into DefaultJitOptions and get rid of the js_ prefix for the instance; r=h4writer
--HG--
extra : rebase_source : 58c678bdd16316bfa4c8898cf43b8d68498e64a9
2015-11-26 15:39:22 +01:00
Benjamin Bouvier 8ba8ea4383 Bug 1228340: Remove the js_ prefix in front of IonOptimizationsLevel; r=h4writer
--HG--
extra : rebase_source : 675be157fef20adfccedf7b179c7736a41975ebd
2015-11-26 14:53:26 +01:00
Jan de Mooij 0b2970741e Bug 922406 - Ion-compile global scripts that use 'this'. r=shu 2015-12-01 11:00:22 +01:00
Bogdan Postelnicu 60f4aa423b Bug 1226549 - added assert check for matches pointer in for prevent null dereference. r=hv1989 2015-11-25 06:47:00 +01:00
Nick Fitzgerald aba02288a1 Bug 1226416 - Expose a method to get a node's set of immediately dominated nodes in the dominator tree; r=bz,sfink
This adds the `getImmediatelyDominated` method to `DominatorTree` which takes a
node id and returns the set of each node ids for every node that is immediately
dominated by the node with the given id. The results are sorted by greatest to
least retained size. In conjunction with the `root` attribute, this can be used
to traverse the whole dominator tree.
2015-11-30 17:38:06 -08:00
Jakob Stoklund Olesen f734c21675 Bug 1226027 - Use Simd128 register content type. r=bbouvier
In preparation for the addition of a new set of SIMD types, collapse all of the
128-bit SIMD types into a single content type for a FloatRegister.

This saves bits in TypedRegisterSet and prevents us from overflowing the
uint64_t bit mask currently used.

For consistency, provide global variables ReturnSimd128Reg and
ScratchSimd128Reg, and rename ScratchSimdScope to ScratchSimd128Scope.
2015-11-30 16:16:28 -08:00
Mike Hommey 54278f48fa Bug 1227385 - Avoid make variable references in VISIBILITY_FLAGS and STL_FLAGS. r=mshal 2015-12-01 08:25:22 +09:00
Mike Hommey 281ed723c5 Bug 1227385 - Properly propagate $DIST from top-level after bug 1224490. r=mshal 2015-12-01 08:25:22 +09:00
Mike Hommey 513dd064fd Bug 1227852 - Remove the --with-dist-dir configure flag from js/src/. r=mshal 2015-12-01 08:25:22 +09:00
Luke Wagner 28f2c8f11d Bug 1224389 - Odin: refactor stubs, func-ptrs, and masm use (r=bbouvier)
--HG--
extra : rebase_source : 2adb3f40ec15e473097ee532b32e6999d7acdd84
2015-11-30 15:35:18 -06:00
Luke Wagner 4ef42db6e3 Bug 1224389 - Odin: simplify AsmJSModule global data allocation (r=bbouvier)
--HG--
extra : rebase_source : 20f174a9593293674e20e768f6d19f6ede861083
2015-11-24 23:35:20 -06:00
Luke Wagner f7c5ebaa66 Bug 1224389 - Odin: refactor types/signatures/values (r=bbouvier)
--HG--
rename : js/src/asmjs/AsmJSCompileInputs.h => js/src/asmjs/WasmCompileArgs.h
rename : js/src/asmjs/AsmJSCompile.cpp => js/src/asmjs/WasmIonCompile.cpp
rename : js/src/asmjs/AsmJSCompile.h => js/src/asmjs/WasmIonCompile.h
extra : rebase_source : f9a755a132065f4e261e860e4c787bf2a3225b64
2015-10-30 17:09:32 -05:00
Hannes Verschore 683d74380a Bug 1227028: TraceLogger - Fix when to keep the payload of a TraceLogger event, r=bbouvier 2015-11-30 20:45:18 +01:00
Hannes Verschore 83a7889f1f Bug 1227914: TraceLogger - Limit the memory tracelogger can take, r=bbouvier 2015-11-30 20:45:14 +01:00
Lars T Hansen 55b6a42965 Bug 1228421 - fix intermittent failure. r=bbouvier
--HG--
extra : rebase_source : e142508951db7826da2cefc3a13eaf8d7a017f5a
extra : amend_source : 2b68941d6259f0144ea5373bbef1d6cc8469b3a6
2015-11-30 10:10:48 +01:00
Benjamin Bouvier 294e4e0eeb Bug 1228369: Rename CodeOffset::use/used into bind/bound; r=luke
--HG--
extra : histedit_source : 5687b7f865bb476531218c900f420345d5527ce2
2015-11-26 17:54:01 +01:00
Benjamin Bouvier d02e56a1f0 Bug 1228369: Rename CodeOffsetLabel into CodeOffset; r=luke
--HG--
extra : histedit_source : da9914a1917731ed4707827e2017dfb9536655d9
2015-11-26 17:23:32 +01:00
Benjamin Bouvier fba62be69f Bug 1228369: Backed out 2 changeset because of missing reviewer field in the commit message; r=me
--HG--
extra : amend_source : e584abf47ff2f0562064fe3abf6cc40ebeb896fd
extra : histedit_source : e59d37bb687baad326e191b58369df8814c91178
2015-11-30 13:30:11 +01:00
Benjamin Bouvier 8b479dc36a Bug 1228369: Rename CodeOffset::use/used into bind/bound;
--HG--
extra : rebase_source : 6969f42167d3532367efbf4bd4e691d384a7327a
2015-11-26 17:54:01 +01:00
Benjamin Bouvier 14cb6b06eb Bug 1228369: Rename CodeOffsetLabel into CodeOffset;
--HG--
extra : rebase_source : 9a60854e09adc45ff009b6dd23e6f0485d928364
2015-11-26 17:23:32 +01:00
Lars T Hansen bc9c6e0192 Bug 1228259 - jitspew is #ifdef JS_JITSPEW not DEBUG. r=h4writer
--HG--
extra : rebase_source : 6ac8a0e1095c4a318af15fee745467e5163503e5
extra : amend_source : 9ba9d3d0c9b15a8e3550ace0b88d4068cc945e3b
2015-11-26 12:55:06 +01:00
Sebastian Hengst d155747cfa Backed out 2 changesets (bug 1224722, bug 1226551) for Linux x64 opt Valgrind failure. r=bustage
Backed out changeset 5966ace0c932 (bug 1226551)
Backed out changeset f477eb89443b (bug 1224722)
2015-11-27 00:45:05 +01:00
Till Schneidereit f1064cd317 Bug 1226551 - Add support for installing self-hosting intrinsics via JSAPI. r=efaust, f=bz,mwu 2015-11-25 14:10:25 +01:00
Till Schneidereit 00ace3547e Bug 1224722 - Enable executing multiple inputs as self-hosted JS during runtime startup. r=efaust, f=bz,mwu 2015-11-25 14:05:05 +01:00
Carsten "Tomcat" Book 44189adf88 Merge mozilla-central to mozilla-inbound 2015-11-26 16:56:09 +01:00
Carsten "Tomcat" Book 358e4575c4 merge mozilla-inbound to mozilla-central a=merge 2015-11-26 16:54:27 +01:00
Jan de Mooij 4059a6e5ee Bug 1227263 part 3 - Remove this-slot from non-function frames. r=efaust 2015-11-26 12:00:05 +01:00
Jan de Mooij 12923393cf Bug 1227263 part 2 - Remove this-slot from generators. r=efaust 2015-11-26 12:00:04 +01:00
Jan de Mooij 3f89ce8294 Bug 1227263 part 1 - Rename frame thisValue methods to thisArgument. r=shu 2015-11-26 12:00:04 +01:00
Jon Coppeard 23a1008811 Bug 1227555 - Force specialization of JSObject::is() for ProxyObject subclasses r=shu 2015-11-26 11:49:54 +00:00
Jon Coppeard bf29dccb1c Bug 1227533 - Factor out dummy module resolve hook from tests r=shu 2015-11-26 11:49:54 +00:00
Carsten "Tomcat" Book 4478aaa8da Merge mozilla-central to b2g-inbound 2015-11-25 14:00:32 +01:00
Wei Wu 657db80539 Bug 1228238 - "TraceLogger: don't enable tracelogger unless TLOPTIONS is set". r=hv1989 2015-11-25 23:12:00 +01:00
Yoshi Huang 4b500464f5 Bug 1209162 - Create OriginAttributes subtypes. IGNORE IDL r=sicking. 2015-11-03 09:50:54 +08:00
Wes Kocher e617ebdf10 Backed out changeset d4af58f0f1e0 (bug 1226188) for MacroAssembler bustage on Windows CLOSED TREE
--HG--
extra : commitid : 66bECBf7LtE
2015-11-24 09:49:49 -08:00
Wes Kocher b40b9c497b Backed out changeset eb9e244e3834 (bug 1227535) for static build bustage in ModuleObject.h CLOSED TREE
--HG--
extra : commitid : 27dFKkZdEs4
2015-11-24 09:42:40 -08:00
Jon Coppeard e379214094 Bug 1227535 - Add ZoneAllocPolicy and use it to attribute module memory usage to the zone r=terrence 2015-11-24 17:27:35 +00:00
Jon Coppeard ac26a189d6 Bug 1011786 - Reset GC zeal in reftest before returning to the browser r=terrence 2015-11-24 17:27:35 +00:00
Jon Coppeard 1abd844269 Bug 1226896 - Fix OOM handling related to script counts r=nbp 2015-11-24 17:27:35 +00:00
Terrence Cole 593a471c03 Backout c2c730d6bd73 (Bug 1227144) for build bustage on a CLOSED TREE. 2015-11-24 08:48:57 -08:00
Nicolas B. Pierron bba1586666 Bug 1226188 - Use __VA_ARGS__ to avoid warnings with empty argument list. r=h4writer 2015-11-24 16:41:16 +00:00
Terrence Cole 75b58e896c Bug 1226888 - Remove an incorrect assertion about store buffer state; r=jandem
--HG--
extra : rebase_source : 5bc10e6ce92aea1aed51b7bd0e38bd7d27317ee5
2015-11-24 08:04:08 -08:00
Terrence Cole 1a3c815cc3 Bug 1227144 - Use Rooted instead of AutoRegExpStaticsBuffer; r=jonco
--HG--
extra : rebase_source : 424f2fd357e795e94f89c2bb11c19ad824a396cb
2015-11-19 15:42:18 -08:00
Phil Ringnalda 04870269d3 Back out 91c196b60306 (bug 1226027) for build bustage in Assembler-x64.cpp
CLOSED TREE
2015-11-25 20:12:29 -08:00
Jakob Stoklund Olesen 1badb94490 Bug 1226027 - Use Simd128 register content type. r=bbouvier
In preparation for the addition of a new set of SIMD types, collapse all of the
128-bit SIMD types into a single content type for a FloatRegister.

This saves bits in TypedRegisterSet and prevents us from overflowing the
uint64_t bit mask currently used.

For consistency, provide global variables ReturnSimd128Reg and
ScratchSimd128Reg, and rename ScratchSimdScope to ScratchSimd128Scope.

--HG--
extra : rebase_source : f07deedaa9cddfcea4e71a6d9272314a364bf9c0
2015-11-25 11:39:40 -08:00
Terrence Cole 020b367913 Bug 1226732 - Use stable hashing and builtin sweeping for ipc::ObjectIdMap; r=billm
--HG--
extra : rebase_source : 9dc40a8f2573fd190d9c86a5a88b57dcb41e0771
2015-11-25 11:59:09 -08:00
Terrence Cole 9c36f99a19 Bug 1226801 - None of the GCHashMap users require movable keys; r=fitzgen
--HG--
extra : rebase_source : d24e3f8c5cdfa050b166f224d76967b3f02287c2
2015-11-25 11:58:50 -08:00
Terrence Cole e918579721 Bug 1227774 - Encapsulate markCompartments logic; r=jonco
--HG--
extra : rebase_source : 994a0bafa6e88cff6a29d01d50cd5a29f54ed7ec
2015-11-25 11:41:30 -08:00
Nicolas B. Pierron f538e44852 Bug 1223023 - Ensure that we have enough ballast space for allocating MoveGroups in BacktrackingAllocator::resolveControlFlow. r=bhackett 2015-11-25 17:30:24 +00:00
Ted Mielczarek d9c04b91c1 bug 1224165 - Remove some Makefiles in js/xpconnect/tests/. r=glandium
--HG--
extra : commitid : CdYDnLGN2Yf
extra : rebase_source : 1dee19c8064f1afb53cc646e4659c12577ba6a94
2015-11-12 06:39:01 -05:00
Ted Mielczarek 8b765abfbe bug 1224308 - Remove some Makefile cruft. r=gps
--HG--
extra : commitid : JdDnpW7zfHf
extra : rebase_source : 9eca8f978c43eb6f26c8d14d5d13fee5ea556a02
2015-11-12 06:39:11 -05:00
Nicolas B. Pierron e56bcb2332 Bug 1213735 - LCov: Rely on the GC finalizers to visit all JSScripts. r=bhackett 2015-11-25 16:56:13 +00:00
Nicolas B. Pierron f14fd6c5cc Bug 1219166 - SM LCov: Prevent reporting empty compartments, and empty runtimes. r=bhackett 2015-11-25 16:56:13 +00:00
Nicolas B. Pierron ba81d44fff Bug 1213732 part 3 - SM LCov: Add code coverage support for TableSwitch statements. r=bhackett 2015-11-25 16:56:13 +00:00
Nicolas B. Pierron 95b6d67041 Bug 1213732 part 2 - SM LCov: Check that fallthrough branches are correctly counted. r=bhackett 2015-11-25 16:56:13 +00:00
Nicolas B. Pierron f6a0e76d3d Bug 1213732 part 1 - SM LCov: Report both side of the branches. r=bhackett 2015-11-25 16:56:13 +00:00
Benjamin Bouvier 9cb6c17ff5 Bug 1227642: Make data a ScopedJSFreePtr in js::detail::CopyScript to ensure it doesn't leak; r=jonco
--HG--
extra : rebase_source : ccf4034cc9a0770f9af9391be72ef211a6d71edd
extra : amend_source : 08542020a95717fcc1552755ddeba46ecc79b702
2015-11-24 19:35:19 +01:00
Till Schneidereit 7f6e232d5a Backout of bug 1224722 from a CLOSED TREE. r=bustage
--HG--
extra : amend_source : 2e05abb4de7042d33d50659f0497861a4b7fee06
2015-11-25 15:37:41 +01:00
Till Schneidereit de3be65932 Backout of bug 1226551. r=bustage 2015-11-25 15:36:57 +01:00
Till Schneidereit 8a04abb7cc Bug 1226551 - Add support for installing self-hosting intrinsics via JSAPI. r=efaust, f=bz,mwu
--HG--
extra : rebase_source : a3b179f3f33c3157387fd8170cb657b585131bf4
2015-11-25 14:10:25 +01:00
Till Schneidereit 5bf848f39b Bug 1224722 - Enable executing multiple inputs as self-hosted JS during runtime startup. r=efaust, f=bz,mwu
--HG--
extra : rebase_source : 09dddf7f37d1a7abae24c3ce9189ec77b740ee25
2015-11-25 14:05:05 +01:00
Till Schneidereit 291b0d30f0 Bug 1226799 - De-duplicate the 11 Is[BuiltinName] self-hosting intrinsics with templates. r=arai
--HG--
extra : rebase_source : 0208de7d4f19a7a4611c4309b9a482788a668077
2015-11-21 19:02:24 +01:00
Jon Coppeard 29cc7aba9f Bug 1225565 - Fix module import cycle detection r=shu 2015-11-24 09:57:33 +00:00
Jon Coppeard e73c37e649 Bug 1225561 - Don't allow a module to export non-existent local bindings r=shu 2015-11-24 09:57:32 +00:00
Jon Coppeard cfb82dc28e Bug 1225558 - Improve module error messages r=shu 2015-11-24 09:57:25 +00:00
Hannes Verschore c219ee8308 Bug 1226445: SharedStubs - Keep track of the pushed frames correctly in GetPropCallNative, r=jandem 2015-11-24 08:02:03 +01:00
Hannes Verschore 77ccc3fbae Bug 1224883: Only lazy linking from jit code expects to have valid jit code afterwards, r=jandem 2015-11-24 07:59:55 +01:00
Mike Hommey 394d50aba5 Bug 1226119 - Clear pending exception from script cache writing failure. r=bholley 2015-11-24 11:29:14 +09:00
Jakob Olesen 072dbcf1f7 Bug 1210554 - Handle toggled calls in CodeFromJump(). r=sstangl
When handed a call that had been disabled by ToggleCall(), this
function would crash.
2015-11-23 15:28:46 -08:00
Jakob Olesen 2257ab0488 Bug 1210554 - Dynamically track short-range branches. r=sstangl
Add a branch range argument to LinkAndGetOffsetTo(): ARM64 branches
can't encode arbitrary ranges, so the linked list of unbound label uses
needs some consideration. We can't assume that a newly assembled branch
instruction will be able to point backwards to label->offset().

Change LinkAndGetOffsetTo() to a normal function instead of a template.
We don't need the code duplication just to apply different scale
factors. Throw the premature microoptimizers a bone by replacing the
element_size template argument with its logarithm.

Implement Assembler::PatchShortRangeBranchToVeneer() to insert the
veneer branch after the original short-range branch in the linked list
of uses of the unbound label.

Fix Assembler::bind() to understand that not all branches can reach the
label. Verify that these branches jump to a veneer instead.

Register short-range branches in LinkAndGetOffsetTo(), and unregister
them again in Assembler::bind().
2015-11-23 15:28:46 -08:00
Jakob Olesen 137875511b Bug 1210554 - Change representation of unbound Label linked lists. r=sstangl
Instead of storing byte offsets in the branch instructions using a
label, store instruction offsets, just like the finished branches do.
Use a 0 pc offset to terminate the linked list instead of -1.

This increases the maximum distance between linked branches to be the
same as the range of the branch instrructions. Previously, the
supported range was only 1/4 of what the branch instructions can
encode.

Provide protected functions for manipulating the linked list in
MozBaseAssembler, and rewrite Assembler::bind() and retarget() to use
them instead of decoding branches manually.

Move the LinkAndGet*OffsetTo functions into MozBaseAssembler. Our
version of these functions is completely different from the VIXL
versions.
2015-11-23 15:28:46 -08:00
Jakob Olesen c6a6ebb4a0 Bug 1210554 - Add enum ImmBranchRangeType. r=sstangl
We already have an ARM64 ImmBranchType which classifies the branch
instructions in the ISA. The /range/ classification is required because
we need unique small integers to pass to
AssemblerBufferWithConstantPool::registerBranchDeadline(). The b.cond
and cbz instructions have the same range, but different branch types.

Classify the 32 KB and 1 MB range branches as 'short-range'. Request
these branch ranges to be tracked by the new
AssemblerBufferWithConstantPools::NumShortBranchRanges faclity.

Also add two functions for computing the maximum forward and backward
reach of branches given their range enumerator.
2015-11-23 15:28:46 -08:00
Jakob Olesen 7f1734b658 Bug 1210554 - Add PatchShortRangeBranchToVeneer(). r=nbp
This is the second part of the short branch handling in
AssemblerBufferWithConstantPools. The PatchShortRangeBranchToVeneer()
callback is called from finishPool() to patch short-range branches that
are about to expire.

Implement no-op versions of the callback for ARM and ARM64. These
versions will never be called as long as no short-line branches are
registered. They only exist to prevent linker errors in unoptimized
builds. In an optimized build, the unused function calls will be
optimized out because DeadlineSet<0>::empty() is hardwired to return
true.
2015-11-23 15:28:46 -08:00
Jakob Olesen 1369a4294b Bug 1210554 - Implement constant pool test. r=nbp
Test the existing functionality of AssemblerBufferWithConstantPools
using a fake ISA that is much more constrained than ARM and ARM64.

Documant the Assembler callback that are required to use
AssemblerBufferWithConstantPools, and implement mock versions for the
unit test.
2015-11-23 15:28:46 -08:00
Jakob Stoklund Olesen 4fd935c057 Bug 1210554 - Wire up branchDeadlines_ partially. No Asm callbacks yet. r=nbp
AssemblerBufferWithConstantPools geta a branchDeadlines_ member which keeps
track of forward branch to unbound labels.

Add a hasSpaceForInsts() method which collects the logic for checking for
available space in one place. Insert a constant pool both when constant pool
loads are about to go out of range, and when short-range branch deadlines are
about to expire.

Add registerBranchDeadline() and unregisterBranchDeadline() methods that the
assembler will use to add and remove branches to be tracked.
2015-11-23 15:28:46 -08:00
Jakob Olesen 0d7845c409 Bug 1210554 - Implement BranchDeadlineSet. r=nbp
This is the data structure that will be used to keep track of
unresolved forward short-range branches.
2015-11-23 15:28:46 -08:00
Jakob Olesen 79b20824a5 Bug 1210554 - Add testAssemblerBuffer to jsapi-tests. r=sstangl
Also minor fixes to the AssemblerBuffer class:

- Tighten encapsulation / data hiding.
- Use consistent types size_t + void* for raw byte data.
2015-11-23 15:28:46 -08:00
Jakob Olesen 8d5ec0ea2d Bug 1210554 - Fix unified build breakage. r=sfink 2015-11-23 15:28:46 -08:00
Sean Stangl 9aa813dcdc Bug 1219050 - Update VIXL helper code to v1.10. r=jolesen 2015-10-16 13:49:19 -07:00
Till Schneidereit 237e8f6cf9 Bug 1208464 - Implement proposed ES7 functions Object.values and Object.entries. r=evilpie
--HG--
extra : rebase_source : 0597d5e9e4aa6b29b599afc61246347313d1a8d2
2015-09-25 17:05:26 +02:00
Lars T Hansen e8058f2a5e Bug 1108290 - introduce machine-independent definitions of sub32. r=nbp
--HG--
extra : rebase_source : e3834ac9a112b359c6b92757ddd80c28abcd38c2
2015-11-24 12:57:14 +01:00
Lars T Hansen 2f96e54286 Bug 1108290 - remove machine-specific definitions of sub32. r=nbp
--HG--
extra : rebase_source : cd0d59fd718eb82c15561f583ae289821583a1cd
2015-11-24 12:56:37 +01:00
Lars T Hansen 086b3ba3e9 Bug 1108290 - optimize apply with Array. r=nbp
--HG--
extra : rebase_source : b64fc074fcdafbfa68e1e0c1a1eb7ddce57bb171
2015-11-24 14:56:03 +01:00
Jon Coppeard ea3999a329 Bug 1227535 - Add ZoneAllocPolicy and use it to attribute module memory usage to the zone r=terrence 2015-11-24 17:27:35 +00:00
Benjamin Bouvier 42a3b82777 Bug 1181612: Add MIR generation and code generation to off-thread compilation; r=luke
--HG--
extra : rebase_source : b4d0de64e7bc610f9971d4f38a0c41cbcd2597c8
2015-11-24 19:47:30 +01:00
Benjamin Bouvier fda1f19d95 Bug 1181612: Merge macro assemblers; r=luke
--HG--
extra : rebase_source : 30c7bb060c694d2378131e38da70c82f4b9269cb
2015-11-24 21:26:07 +01:00
Benjamin Bouvier 175cc535b7 Bug 1181612: Make CompileInfo a const class; r=luke
--HG--
extra : rebase_source : 6c1a5dd4cc15e9045930e4dcb73f1fc0e543615f
2015-11-12 15:31:15 +01:00
Tooru Fujisawa 61a51b2b78 Bug 1226936 - Remove PreserveRegExpStatics and telemetry for it. r=till
--HG--
extra : rebase_source : 5d74966072564ce60f971afde6de351a72550b0e
2015-09-22 18:57:28 +09:00
Nicholas Nethercote 4dd2a30a0f Bug 1187146 - Replace nsBaseHashtable::Enumerate() calls in js/xpconnect/ with iterators. r=mrbkap.
--HG--
extra : rebase_source : 28dc3c5614ee36e6e6955b9cc380e85ccc618a0d
2015-11-22 18:52:40 -08:00
Mike Hommey 259b73a779 Backout changeset 29c31b5cdc19 (bug 1227385) for Linux, Android and B2G bustage on a CLOSED TREE. 2015-11-25 09:33:48 +09:00
Mike Hommey 70a5b9589d Bug 1227388 - Finish removing dehydra support. r=mshal
Dehydra/Treehydra is unmaintained, broken (iirc), and obsoleted by clang
static analysis. We've removed parts of the build system support for it, but
not all. This is meant to remove the remains.
2015-11-25 08:23:25 +09:00
Mike Hommey 1044711983 Bug 1227385 - Avoid make variable references in VISIBILITY_FLAGS and STL_FLAGS. r=mshal 2015-11-25 08:23:23 +09:00
Mike Hommey ac46182165 Bug 1227384 - Move LOCAL_INCLUDES and DEFINES to moz.build in js/src/. r=mshal 2015-11-25 08:23:22 +09:00
Terrence Cole f1d99d6f28 Bug 1225631 - Handle options relating to task spawning in spawn_task; r=sfink
--HG--
extra : rebase_source : e7f9b12934dcc04296a3f7be9ed455e5c6410191
2015-11-23 09:52:28 -08:00
Steve Fink 5072610789 Bug 1225594 - Make jit-test's --show-cmd work again; r=terrence
--HG--
extra : rebase_source : b3000697892d20c724d35e15cd46ccf46816ba1d
2015-10-20 13:26:49 -07:00
Jan de Mooij 897269aa50 Bug 1132183 followup - Bump inlineMaxCalleeInlinedBytecodeLength to 3350. r=h4writer on IRC
--HG--
extra : rebase_source : db17fbda89f35303505dfe1d3393cec639dc9e07
2015-11-23 16:21:47 +01:00
Jon Coppeard 9e992d63eb Bug 1221747 - Fix OOM handling in IonScriptCounts r=nbp 2015-11-06 13:09:01 +00:00
Jon Coppeard 88733ff278 Bug 1221747 - Make JS_vsnprintf() return a value that indicates failure if we reach the buffer limit r=nbp 2015-11-23 14:10:28 +00:00
Benjamin Bouvier 4380807e8f Bug 1225605: Simplify SimdTypeDescr::size()/alignment() and remove a macro; r=jolesen
--HG--
extra : rebase_source : cca8ce6d0433bbbfeb09a21afb36af652d97ce76
2015-11-20 10:56:19 +01:00
Benjamin Bouvier fb5678ed2a Bug 1225605: Store SIMD type descriptors on the global SIMD object rather than on the global; r=jolesen
--HG--
extra : rebase_source : ea5e9ace0782e01695ee266efdffad1c5769e26b
2015-11-20 10:52:33 +01:00
Benjamin Bouvier a34c95e14b Bug 1225605: Describe the SIMD type descriptors in terms of a concept; r=jolesen
--HG--
extra : rebase_source : a72625ddeae2d0004fccdda264e824eaf89cd81a
2015-11-19 17:25:36 +01:00
Jan de Mooij 3cdb312aae Bug 1132183 followup - Bump smallFunctionMaxBytecodeLength to 120. r=h4writer 2015-11-23 12:49:50 +01:00
Jon Coppeard e92c43692b Bug 1224710 - Fix OOM handling bugs revealed by new testcase r=bbouvier 2015-11-23 10:53:33 +00:00
Jon Coppeard 1ed75b91b7 Bug 1224710 - Add test for fuzz bug fixed by bug 1223355 r=bbouvier 2015-11-18 16:07:18 +00:00
Jon Coppeard c0fb4d57d9 Bug 1218968 - Reduce running time of oomInArrayProtoTest.js r=lth 2015-11-23 10:52:17 +00:00
Jon Coppeard 4ebccb4bfd Bug 1207571 r=jandem a=abillings 2015-11-23 10:48:21 +00:00
Jan de Mooij 042014efdb Bug 1205707 part 2 - Add test. r=Waldo 2015-11-21 20:53:28 +01:00
Jan de Mooij 64e522d49c Bug 1222917 - Fix register allocation in GenerateCallSetter. r=bhackett 2015-11-21 20:52:08 +01:00
Jan de Mooij 8f55c26a1c Bug 1132183 - Make |this| a real binding, remove lazy this computation. r=efaust,shu 2015-11-21 14:33:13 +01:00
Heiher 4e3be28022 Bug 1226152 - IonMonkey: MIPS64: Make sure the frame pushed are set correctly for ion vmcalls. r=h4writer
---
 js/src/jit/mips64/SharedICHelpers-mips64.h | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)
2015-11-21 15:28:52 +08:00
Heiher 96c782733c Bug 1225859 - IonMonkey: MIPS64: Fix branchTestBoolean(Address) missing. r=jandem
---
 js/src/jit/mips64/MacroAssembler-mips64.cpp | 8 ++++++++
 js/src/jit/mips64/MacroAssembler-mips64.h   | 1 +
 2 files changed, 9 insertions(+)
2015-11-21 15:28:46 +08:00
Terrence Cole 79de7574c1 Bug 1226687 - Part 2: Use stable hashing and builtin sweep for JSObject2JSObjectMap; r=mccr8
--HG--
extra : rebase_source : e3c5c05bead56da0dab01a3fdfb16a1f02fe862d
2015-11-20 13:54:35 -08:00
Terrence Cole 2f587b2fc3 Bug 1226687 - Part 1: Export a GCPolicy usable by JS::Heap; r=fitzgen
--HG--
extra : rebase_source : 7ac38143297ef92265faefe6ce800b6c55dcaa64
2015-11-20 13:53:19 -08:00
Boris Zbarsky fb747879e0 Bug 1224007 part 3. Push down WouldReportJSException into MaybeSetPendingException, since anyone calling the latter will propagate the JS exception as needed. r=peterv 2015-11-20 16:29:41 -05:00
Boris Zbarsky c19412a7ac Bug 1224007 part 1. Rename ThrowMethodFailed to MaybeSetPendingException and make it an ErrorResult instance method. r=peterv 2015-11-20 16:29:40 -05:00
Jeff Walden 03a1ee233b Bug 1220693 - Put the needs-update status of the ICU default time zone behind a spinlock, as the simplest/stupidest possible thing that works. r=sfink
--HG--
extra : rebase_source : 33e4dad372c155ffdc9bd9fd8c1cf26d82f848e3
2015-11-19 14:30:37 -08:00
Nick Fitzgerald 11e1dd10a1 Bug 1226176 - Compute retained sizes in dominator trees and expose them to JavaScript; r=bz,sfink 2015-11-20 09:08:15 -08:00
Jesper Kristensen ba4bee60ea Bug 1094057 - Violations of "use strict"; should generate errors, not warnings, r=jorendorff
Make the use of JSREPORT_STRICT consistent across all places where it is used.
I.e. never add JSREPORT_STRICT when reporting JSREPORT_ERROR in strict mode,
but only when reporting JSREPORT_WARNING in non-strict mode.
This happens to make the errors appear as errors instead of warnings in the console.

--HG--
extra : commitid : J0bmt40WGxH
extra : rebase_source : cf7f65d1aa4ca9f355204c5744898113e6f50a68
2015-11-10 18:18:25 +01:00
Jonathan Kew de00809b72 Bug 1210165 - Update test Intl/DateTimeFormat/format.js to expect 24-hour time in Arabic/Morocco locale. rs=waldo 2015-11-20 11:38:15 +00:00
Jonathan Kew 08e1f4fc03 Bug 1210165 - Update normalization test data for ICU 56 (Unicode 8.0) release. rs=waldo 2015-11-20 11:38:15 +00:00
Benjamin Bouvier ec06fb2c9c Bug 1225605: Make the dependency between SimdTypeDescr::Type and the SimdTypes/SimdLanes arrays clearer; r=jolesen
--HG--
extra : rebase_source : 151400fbeb32dceb47914e645b6d36df435af3bb
2015-11-17 21:40:02 +01:00
Benjamin Bouvier f31a605002 Bug 1225605: Remove non standard SIMD.Int{32x4,16x8,8x16}.bool; r=jolesen
--HG--
extra : rebase_source : 4a6aceabf70bfcab77c0d7e9ec6a768dec18e935
2015-11-17 21:09:21 +01:00