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

55852 Коммитов

Автор SHA1 Сообщение Дата
Tom Schuster dc41558384 Bug 1279303 - Implement change to O.getOwnPropertyDescriptors and update tests. r=efaust 2016-07-27 20:12:04 +02:00
Andrew McCreight 3e7a8efdae Bug 1289550 - Remove "fun little hack" from XPCNativeSetKey. r=bz
XPCNativeSetKey has a huge comment about this weird hack it does,
where it tags the first 16 bytes with a magic value. The purpose of
this seem to be that PLDHashtable used to require that the Match()
operation handle both the desired "key" type and the actual entry type
(NativeSetMap::Entry in this case), with the latter needed for
resizing. However, that duality in the match operation has not been
needed since bug 374906, which landed in 2007, so this class can be
greatly simplified.

IsAKey() can be replaced with true, which simplifies some hash
operations.
2016-07-27 10:11:40 -07:00
Andrew McCreight e806f57820 Bug 1289136 - Fifth argument to XPCConvert::NativeInterface2JSObject() is always null. r=gabor 2016-07-27 10:11:40 -07:00
Bobby Holley a4d1001c60 Bug 1289617 - Add an opt-out for bindgen in the SpiderMonkey DEBUG checker. r=sfink 2016-07-27 09:41:48 -07:00
Matthew Wein 33de9c036e Bug 1285063 - Part 1: Add a helper to XPCOMUtils to iterate over entries in a category. r=kmag
MozReview-Commit-ID: 3mjrPrRuLej

--HG--
extra : rebase_source : 7b7dad1a4bab958a590c24d97f564e34b3355633
2016-07-11 17:33:06 -07:00
Till Schneidereit 0f21372d5b Bug 1289040 - Fix malformed test. r=me 2016-07-27 17:51:17 +02:00
Boris Zbarsky 5b840d9b96 Bug 1288791 part 2. Rename WrapNativeParent to FindAssociatedGlobal and update it to actually do that. r=bkelly 2016-07-27 11:05:36 -04:00
Till Schneidereit ba785233be Bug 1289040 - Properly handle non-wrapped Promise hook functions in UnwrappedPerformPromiseThen. r=efaust 2016-07-27 16:59:59 +02:00
Till Schneidereit 79052e5d92 Bug 1288382 - Don't try to add non-Promise objects to the list of dependent promises that's only used for debugging. r=efaust 2016-07-27 16:59:18 +02:00
Carsten "Tomcat" Book 7293066753 merge mozilla-inbound to mozilla-central a=merge 2016-07-27 16:35:44 +02:00
Mike Hommey 1f9624559e Bug 1289294 - Move MT detection to python configure. r=chmanchester
--HG--
extra : rebase_source : c84ade9a0db9aca2f2e64b8a3424fe14dd19a924
2016-07-26 15:15:08 +09:00
Jim Blandy 002186dad9 Bug 1282518 - Propagate return values from RematerializedFrames to BaselineFrames. r=shu 2016-07-22 14:19:48 -07:00
Mike Hommey 8398056155 Bug 1289291 - Move Windows SDK detection to python configure. r=chmanchester
At the same time, autodetect the SDK if WINDOWSSDKDIR is not given.

--HG--
extra : rebase_source : 4ee98e2105b607bab5050127f23354e9b291a246
2016-07-22 19:10:04 +09:00
Mike Hommey 1b9c70450b Bug 1289289 - Move --with-windows-version to python configure. r=chmanchester
Also, don't set the MOZ_WINSDK_TARGETVER define anymore, as it's unused.

--HG--
extra : rebase_source : a6aa1458985d6c158abdc7cd7926b73990f4df2a
2016-07-22 17:08:53 +09:00
Benjamin Bouvier 6f037c3aa7 Bug 1286517: Allow any expression in ElemSegments offset initializers; r=luke
MozReview-Commit-ID: KIfET7uiPZF

--HG--
extra : rebase_source : 6329ed8b4572bcc8d0d38d5feda011b0b82ca348
2016-07-25 19:50:26 +02:00
Benjamin Bouvier bcbc873b13 Bug 1286517: Implement text-to-binary for Globals; r=luke
MozReview-Commit-ID: ajyuriWJK5

--HG--
extra : rebase_source : e9c33a0e729ebc3dda24c18fe5fe3a3db019e30d
2016-07-25 18:10:58 +02:00
Benjamin Bouvier 3bb9e21ec3 Bug 1286517: Implement Global section in WebAssembly; r=luke
MozReview-Commit-ID: aD6rBQ3e57

--HG--
extra : rebase_source : 6987461ccfee07a5f494745fcb02cbac825def95
2016-07-25 19:50:20 +02:00
Benjamin Bouvier 8839c5fde7 Bug 1286517: Implement codegen for i64 globals on x64; r=luke
MozReview-Commit-ID: IYgd60IZhBs

--HG--
extra : rebase_source : 33136af695975f7860554b400202f556267f4a3a
2016-07-22 14:30:12 +02:00
Benjamin Bouvier b4f8b1aae8 Bug 1286517: Rename {Load/Store}Global to {Get,Set}Global in wasm bytecode; r=luke
MozReview-Commit-ID: 5BGgPC487xm

--HG--
extra : rebase_source : 3cf3e73a0113a94e11b8ba8f2df0cfd23acfbb10
2016-07-22 14:29:17 +02:00
Nicolas B. Pierron ab3ab6c2aa Bug 1289025 - Ensure enough ballast space in MakeMRegExpHoistable. r=arai 2016-07-26 13:00:16 +00:00
Heiher 639f4a2429 Bug 1289262 - IonMonkey: MIPS64: Don't clobbers the scratch registers in ma_addTestOverflow/ma_subTestOverflow. r=arai
---
 js/src/jit/mips64/MacroAssembler-mips64.cpp | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)
2016-07-27 13:23:17 +08:00
Heiher 399ac7e63e Bug 1289261 - IonMonkey: MIPS: Use conditional move in minMaxDouble/Float32. r=arai
---
 .../jit/mips-shared/MacroAssembler-mips-shared.cpp | 52 ++++++++++++----------
 1 file changed, 28 insertions(+), 24 deletions(-)
2016-07-27 13:23:16 +08:00
Heiher 67e31960f4 Bug 1289263 - Baldr: MIPS64: Fix compile errors in loadAsmJSHeapRegisterFromGlobalData. r=luke
---
 js/src/jit/mips64/MacroAssembler-mips64.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
2016-07-27 13:23:15 +08:00
Carsten "Tomcat" Book 574d0d452b merge mozilla-inbound to mozilla-central a=merge 2016-07-26 11:55:54 +02:00
Andrew McCreight ec20330bad Bug 1288823, part 7 - Fix XPCNativeScriptableInfo ctor arguments. r=mrbkap 2016-07-25 16:32:56 -07:00
Andrew McCreight 3a21c61e93 Bug 1288823, part 6 - Remove unused methods from XPCNativeScriptableInfo and XPCWrappedNativeProto. r=mrbkap 2016-07-25 16:32:56 -07:00
Andrew McCreight f71885f593 Bug 1288823, part 5 - Remove the unused XPCWrappedNativeProto::mClassInfoFlags. r=mrbkap 2016-07-25 16:32:56 -07:00
Andrew McCreight 9f3f1c7a9b Bug 1288823, part 4 - Mark things delete in XPConnect. r=mrbkap 2016-07-25 16:32:56 -07:00
Andrew McCreight f8d74765b2 Bug 1288823, part 3 - Mark more classes final in xpcprivate.h. r=mrbkap 2016-07-25 16:32:56 -07:00
Andrew McCreight 192238e71d Bug 1288823, part 2 - Remove unused #defines from xpcprivate.h. r=mrbkap 2016-07-25 16:32:56 -07:00
Andrew McCreight 7e800a8998 Bug 1288823, part 1 - Use doSweep more consistently in XPCJSRuntime::FinalizeCallback. r=mrbkap 2016-07-25 16:32:55 -07:00
Nick Fitzgerald 4e81593ca0 Bug 1289073 - Convert from double to unsigned before checking that the max frames is greater than zero; r=jimb 2016-07-25 15:07:22 -07:00
Nick Fitzgerald 57f0aea91b Bug 1289058 - Null check principals before holding them in JS::FirstSubsumedFrame; r=jimb 2016-07-25 15:07:22 -07:00
Mike Hommey 02e5baaf74 Bug 1289246 - Do not hardcode mt.exe as the Manifest Tool. r=chmanchester
Configure uses the value of the MT environment variable before falling back
to mt(.exe), but the build system was completely ignoring the MT
environment variable.

--HG--
extra : rebase_source : 8c9b43aeb08493ae5bd6d6361f4f18f097ea0553
2016-07-22 15:56:26 +09:00
Andi-Bogdan Postelnicu cd8204fb3b Bug 1289064 - eliminate null check on |iid| in XPCConvert::NativeInterface2JSObject. r=bholley
MozReview-Commit-ID: EtiVWiHlYx5

--HG--
extra : rebase_source : 4dcd94c19f0b7f68787658e8937b2535fe37b39f
2016-07-25 13:13:19 +03:00
Carsten "Tomcat" Book b9a6c687fa merge mozilla-inbound to mozilla-central a=merge 2016-07-25 15:50:41 +02:00
Chris Peterson 1408fa9074 Bug 1288925 - Replace JS_ALIGNAS() polyfill with alignas(). r=sfink 2016-07-25 01:14:04 -07:00
Benjamin Bouvier feab551c2f Bug 1289080: Don't allow call_indirect without a table and memory accesses without memory; r=luke
MozReview-Commit-ID: DkuyBiGsaxs

--HG--
extra : rebase_source : d051b7e8c9e7c32ba60a6e37bb4c6dc98dc36ef9
2016-07-25 14:54:50 +02:00
Jakob Stoklund Olesen 8525095859 Bug 1279312 - Remove SymbolicAddress::StackLimit. r=luke
This symbolic address is not used any longer. It has been replaced by the
stackLimit entry in the TlsData struct.
2016-07-25 07:57:36 -07:00
Jakob Stoklund Olesen fa3211efd0 Bug 1279312 - Use WasmTlsReg in baseline Wasm compiler. r=lth
Allocate an additional slot in localInfo_ and use it to save the incoming TLS
pointer. When setting up arguments for a function call, get the TLS pointer from
that local slot. Also preserve the TLS pointer register by reloading it before
returning.

This makes the Baseline ABI compatible with the Ion ABI.
2016-07-25 07:57:36 -07:00
Jakob Stoklund Olesen ee4080cea7 Bug 1279312 - Handle call-preserved registers in register allocator. r=bhackett
- Add a virtual isCallPreserved() method to LNode which allows a call
  instruction to indicate that it preserves the values of some registers. Use
  this hook in BacktrackingAllocator when processing a call instruction.

- Add a preservesTlsReg() property to MAsmJSCall and use this to implement the
  LAsmJSCall::isCallPreserved() method.

- Mark intra-module WebAssembly calls as preserving the TLS pointer register.

This change allows the backtracking register allocator to leave the TLS pointer
register alone in small functions that don't need it for something else. There
are probably more improvements to be done if we need to split the live range of
the TLS pointer register. For example, BacktrackingAllocator::splitAcrossCalls()
will still split that live range at all calls.
2016-07-25 07:57:36 -07:00
Jakob Stoklund Olesen 31633a4c4d Bug 1279312 - Preserve TLS pointer register across calls. r=bbouvier
WebAssembly functions take a TLS pointer argument and now ensure that the
WasmTlsReg register has the same value when they return.

This is not yet exploited by the register allocator which still thinks that all
registers are clobbered by function calls.
2016-07-25 07:57:36 -07:00
Jakob Stoklund Olesen b600088345 Bug 1279312 - Use TLS pointer for the stack limit check. r=luke
Get the stack limit from TlsData::stackLimit instead of
SymbolicAddress::StackLimit. Since the TLS pointer register is available at
every function prologue, the over-recursion check is the same cost as using the
statically linked address.
2016-07-25 07:57:36 -07:00
Jakob Stoklund Olesen 6b0c6f166b Bug 1279312 - Pass a TLS pointer hidden argument to WebAssembly functions. r=luke
WebAssembly functions now expect to be passed a hidden argument in WasmTlsReg
which is a pointer to a TlsData struct.

Temporarily allocate a TlsData instance in the wasm::Instance itself. When wasm
supports multithreading, we will need to allocate a TlsData instance per thread
per module instance.

This patch generates code to pass the TLS pointer to WebAssembly functions,
preserving it through intra-module calls. The pointer is not used for anything
yet, and the the TLS pointer register is not currently preserved across function
calls.
2016-07-25 07:57:35 -07:00
Jan de Mooij c7e88a5ad8 Bug 1286795 part 6 - Replace JS_NewRuntime/JS_DestroyRuntime with JS_NewContext/JS_DestroyContext. r=luke,bz 2016-07-23 19:54:19 +02:00
Jan de Mooij e0ae8a8c5a Bug 1286795 part 5 - Change some classes to take JSContext instead of JSRuntime. r=terrence 2016-07-23 19:53:03 +02:00
Jan de Mooij fd0edec3bf Bug 1286795 part 4 - Change some callbacks to take JSContext instead of JSRuntime. r=terrence 2016-07-23 19:52:47 +02:00
Jan de Mooij 0770a8d8b4 Bug 1286795 part 3 - Change UbiNode APIs to take JSContext instead of JSRuntime. r=fitzgen 2016-07-23 19:52:25 +02:00
Jan de Mooij 8073c28728 Bug 1286795 part 2 - Change JS_RequestInterruptCallback to take JSContext instead of JSRuntime. r=luke 2016-07-23 19:52:20 +02:00
Jan de Mooij 1b710973b8 Bug 1286795 part 1 - Change more GC APIs to take JSContext instead of JSRuntime. r=terrence 2016-07-23 19:51:23 +02:00