gecko-dev/js
Andy Wingo 977d74aede Bug 1595466 - Fix multi-value shuffle of stack values toward SP r=lth
This commit fixes a bug whereby shuffling of stack results toward the
stack pointer was borked.  Just for posterity, here's a wee ASCII art of
how this works in the baseline compiler.  The error came in the last
transition, when shuffling B toward the newly-expanded SP.  The previous
code was simply bogus.

```
      initial        (i32.const A)
       stack    -->  (local.get B)    -> popRegisterResults -> popStackResults
       state         (local.get C)
            _
  |     | | |            | |                | |                   | |
  |     | | stack        | |                | |                   | |
  |     | | height       | |                | |                   | |
  |     | | |            | |                | |                   | |
  |   sp+-+ v            +-+                +-+                   +-+
  |                                         |B|                   |A|
  |                                         +-+                   +-+
  |                                                               |B|
  |                                                               +-+
  |
  V                 nothing pushed       C in %rax;         B shuffled toward
stack               on machine stack;    A still on         %rsp; A materialized
grows               3 values on value    value stack
down                stack
```

Differential Revision: https://phabricator.services.mozilla.com/D52676

--HG--
extra : moz-landing-system : lando
2019-11-12 17:49:10 +00:00
..
ductwork/debugger Bug 1564168 - [jsdbg2] Debugger.prototype.enabled should be removed. 2019-08-19 21:47:05 +00:00
examples Bug 1564168 - [jsdbg2] Debugger.prototype.enabled should be removed. 2019-08-19 21:47:05 +00:00
ipc Bug 1588231. Remove special-cased QI-for-DOM-objects handling in CPOWs, since no one uses it outside of one test. r=peterv 2019-10-14 10:31:28 +00:00
public Backed out changeset 8daa186bd18b (bug 1593399) for causing crashes @js::gcstats::Statistics. CLOSED TREE 2019-11-13 07:00:37 +02:00
rust Bug 1590907 - Remove obsolete macro JS_NO_JSVAL_JSID_STRUCT_TYPES. r=sfink 2019-11-12 22:00:55 +00:00
src Bug 1595466 - Fix multi-value shuffle of stack values toward SP r=lth 2019-11-12 17:49:10 +00:00
xpconnect Bug 1591145 - Remove Document.GetAnonymousElementByAttribute r=webidl,baku 2019-11-07 21:36:15 +00:00
app.mozbuild Bug 1569197 - Backed out changeset 2a053de2828f;r=arai 2019-08-07 09:17:11 +00:00
ffi.configure
moz.build
moz.configure Bug 1577757 - Add a compile-time option for wasm multi-value r=luke 2019-10-01 14:30:35 +00:00
sub.configure Bug 844509 - Don't encode environment in get_cmd_output and old_configure. r=nalexander 2019-08-20 22:12:23 +00:00