Commit graph

14 commits

Author SHA1 Message Date
Gaming4JC
417aa02122 1344477 - Part 1: Add JSOP_CALL_IGNORES_RV for function call that ignores return value. 2019-07-22 19:52:23 +08:00
wolfbeast
769e5dad1e Remove AIX 1st party code OS checks, part 1
Issue #186
2019-04-04 20:26:39 +08:00
Nicolas B. Pierron
c6e54b5208 Force expected crashes on unexpected magic values. 2019-03-23 06:44:11 +08:00
adeshkp
521c918660 Remove telemetry leftovers from JS engine. 2019-02-16 00:27:38 +08:00
trav90
4d089648be Call memset on a void*, not a T*, in js_delete_poison to avoid memset-on-nontrivial warnings with gcc that don't matter for an object whose lifetime is about to end 2019-02-16 00:13:48 +08:00
trav90
02e07860b2 Stop using PodZero in several places to initialize values of non-trivial type 2019-02-16 00:13:45 +08:00
trav90
2fabd9fa1b Avoid using memset on a not-trivial type like ServoSizes 2019-02-16 00:11:36 +08:00
trav90
37959f9945 Avoid using memset on a not-trivial type like TabSizes 2019-02-16 00:11:35 +08:00
trav90
6b97ee8cab Avoid doing a memset on a non-POD structure
|entryCount| tracks -- in fast-to-check manner -- the number of entries in the hashtable.  But to actually enumerate entries, we have to loop through all of |table|, checking for entries that are actually live.  A live entry is indicated by a zero |hash| in the entry.  The |memset| would properly zero that; removing the memset will not.

It's not entirely clear whether a memset that overwrites a lot of stuff but is maybe simpler, is faster than compiler-generated likely-SIMD code that zeroes out *just* |hash| fields in all the entries.  But I am going to guess that SIMD is good enough.  For now, we should just do the simple and thing: don't distinguish POD and non-POD, and know that the compiler is going to recognize that |mem.addr()->~T()| is a no-op when T is trivial.  So with POD, the loop should degenerate to just zeroing |hash| at consistent offset, and SIMD will eat that up, and it can't be *that* different from the memset in performance (if it is at all).
2019-02-16 00:11:33 +08:00
wolfbeast
0795e50d87 Refactor structured clone JSAPI to prevent mismatched scopes.
Roll-up of bugs 1442722, 1455071, 1433642, 1456604 and 1458320.
2019-02-16 00:01:32 +08:00
wolfbeast
66bf4fa8f9 Bug 1411415. 2019-02-15 23:53:18 +08:00
janekptacijarabaci
344ea39e20 Bug 1310078 - Implement valueAsNumber and valueAsDate for <input type=datetime-local> 2019-02-15 23:44:42 +08:00
trav90
10b24b8110 Fix Value::isGCThing footgun, stop returning true for NullValue 2019-02-15 23:41:26 +08:00
Roy Tam
dcd9973243 import FIREFOX_52_6_0esr_RELEASE from mozilla-esr52 hg repo 2018-01-19 03:59:58 +08:00