Closed Bug 1528869 Opened 6 years ago Closed 6 years ago

Enable Ion on ARM64 shell

Categories

(Core :: JavaScript Engine: JIT, enhancement, P2)

ARM64
Unspecified
enhancement

Tracking

()

RESOLVED FIXED
mozilla67
Tracking Status
firefox67 --- fixed

People

(Reporter: sstangl, Assigned: sstangl)

References

(Blocks 1 open bug)

Details

Attachments

(2 files)

A Try run for ARM64 Ion shows all tests passing, except for one that appears to be a GC error and fails with Baseline-only. I can't reproduce that failure locally -- it might require a low-memory device.

It also appears that TryChooser will not let me run any tests other than just the jit-tests -- and therefore, it's not clear what other tests will fail when we try to land.

Therefore I propose trying to land Ion on ARM64, shell-only, with the expectation that we'll likely get backed out, in order to see what tests are actually running on the full tree build, and what work we have left in the remaining 3 weeks allotted to this project.

Enable IonMonkey in the ARM64 shell, but keep it disabled in the browser.

In the past I've found using that using ulimit -v to limit the amount of virtual memory allows low-memory devices to be simulated on desktop.

Pushed by sstangl@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/240f53dcb5e6 Enable IonMonkey in the ARM64 shell, but keep it disabled in the browser. r=nbp
Attached file stack (deleted) —

With the patch in comment 1, I keep getting asserts repeatedly with a stack like this, but they are non-reproducible.

Compiled on m-c rev bf3951daded0 with --enable-debug --enable-more-deterministic --enable-simulator=arm64 and runtime flags like --fuzzing-safe --execute="setJitCompilerOption("ion.forceinlineCaches",1)" --ion-extra-checks --ion-warmup-threshold=100 --ion-eager --ion-gvn=off --more-compartments --ion-offthread-compile=off --gc-zeal=23,146 --no-threads --baseline-eager (not sure if all are needed)

Hope this helps?

(In reply to Gary Kwong [:gkw] [:nth10sd] from comment #5)

Created attachment 9045133 [details]
stack

Hope this helps?

Thanks, the assertion and the stack trace definitely help. It was supposed to be fixed by one of my previous patches.
Can you file a separate bug blocking this one?

Depends on: 1530351

Green Try push with Bug 1529034 landed: https://treeherder.mozilla.org/#/jobs?repo=try&revision=4f4498644c7007e86d12cfd89d8b6829862756ae

Once that merges to m-c, I will attempt to re-land this.

Flags: needinfo?(sstangl)
Pushed by sstangl@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/b2fb7cd41c79 Enable IonMonkey in the ARM64 shell, but keep it disabled in the browser. r=nbp

Backed out changeset b2fb7cd41c79 (bug 1528869) for failing at /waiterlist-order-of-operations-is-fifo.js on a CLOSED TREE.

Backout link: https://hg.mozilla.org/integration/autoland/rev/c24728a48d075bfb8f8047af6dd6d6ade9c7c58a

Push with failures: https://treeherder.mozilla.org/#/jobs?repo=autoland&resultStatus=testfailed%2Cbusted%2Cexception&selectedJob=232089614&revision=b2fb7cd41c796eabae8e4310aa34ea23ef858714

Log link: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=232089614&repo=autoland&lineNumber=41220

Log snippet:

[task 2019-03-06T07:23:50.913Z] TEST-PASS | test262/language/statements/for-await-of/async-func-decl-dstr-array-elem-init-simple-no-strict.js | (args: "--dll /builds/worker/workspace/breakpad-tools/libbreakpadinjector.so") [0.2 s]
[task 2019-03-06T07:23:50.913Z] TEST-PASS | test262/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-obj-id.js | (args: "--dll /builds/worker/workspace/breakpad-tools/libbreakpadinjector.so") [0.2 s]
[task 2019-03-06T07:23:50.914Z] TEST-PASS | test262/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-rest-iter.js | (args: "--dll /builds/worker/workspace/breakpad-tools/libbreakpadinjector.so") [0.2 s]
[task 2019-03-06T07:23:50.914Z] TEST-PASS | test262/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id.js | (args: "--dll /builds/worker/workspace/breakpad-tools/libbreakpadinjector.so") [0.2 s]
[task 2019-03-06T07:23:50.914Z] TEST-PASS | test262/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-ary-init.js | (args: "--dll /builds/worker/workspace/breakpad-tools/libbreakpadinjector.so") [0.2 s]
[task 2019-03-06T07:23:50.914Z] TEST-PASS | test262/language/statements/for-await-of/async-func-decl-dstr-obj-prop-elem-init-evaluation.js | (args: "--dll /builds/worker/workspace/breakpad-tools/libbreakpadinjector.so") [0.2 s]
[task 2019-03-06T07:23:50.914Z] TEST-PASS | test262/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-fn-name-class.js | (args: "--dll /builds/worker/workspace/breakpad-tools/libbreakpadinjector.so") [0.1 s]
[task 2019-03-06T07:23:50.915Z] TEST-PASS | test262/language/statements/for-await-of/async-gen-dstr-var-async-ary-init-iter-no-close.js | (args: "--dll /builds/worker/workspace/breakpad-tools/libbreakpadinjector.so") [0.1 s]
[task 2019-03-06T07:23:50.915Z] TEST-PASS | test262/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-obj-prop-id-init.js | (args: "--dll /builds/worker/workspace/breakpad-tools/libbreakpadinjector.so") [0.1 s]
[task 2019-03-06T07:23:51.068Z] TEST-UNEXPECTED-FAIL | test262/built-ins/Atomics/wait/waiterlist-order-of-operations-is-fifo.js | (args: "--dll /builds/worker/workspace/breakpad-tools/libbreakpadinjector.so") | (TIMEOUT) [300.2 s]
[task 2019-03-06T07:23:51.068Z] TEST-PASS | test262/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-get-value-err.js | (args: "--dll /builds/worker/workspace/breakpad-tools/libbreakpadinjector.so") [0.2 s]
[task 2019-03-06T07:23:51.068Z] TEST-PASS | test262/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-fn-name-cover.js | (args: "--dll /builds/worker/workspace/breakpad-tools/libbreakpadinjector.so") [0.2 s]
[task 2019-03-06T07:23:51.068Z] TEST-PASS | test262/language/statements/for-await-of/async-func-decl-dstr-obj-rest-same-name.js | (args: "--dll /builds/worker/workspace/breakpad-tools/libbreakpadinjector.so") [0.2 s]
[task 2019-03-06T07:23:51.068Z] TEST-PASS | test262/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-init-fn-name-fn.js | (args: "--dll /builds/worker/workspace/breakpad-tools/libbreakpadinjector.so") [0.2 s]
[task 2019-03-06T07:23:51.068Z] TEST-PASS | test262/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-not-final-obj.js | (args: "--dll /builds/worker/workspace/breakpad-tools/libbreakpadinjector.so") [0.2 s]
[task 2019-03-06T07:23:51.069Z] TEST-PASS | test262/language/statements/for-await-of/async-gen-decl-dstr-obj-prop-elem-init-assignment-null.js | (args: "--dll /builds/worker/workspace/breakpad-tools/libbreakpadinjector.so") [0.2 s]
[task 2019-03-06T07:23:51.069Z] TEST-PASS | test262/language/statements/for-await-of/async-func-dstr-var-ary-init-iter-close.js | (args: "--dll /builds/worker/workspace/breakpad-tools/libbreakpadinjector.so") [0.1 s]

Flags: needinfo?(sstangl)
Depends on: 1532996
Pushed by sstangl@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/afb2e1e1665f Enable IonMonkey in the ARM64 shell, but keep it disabled in the browser. r=nbp
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla67

\o/

Flags: needinfo?(sstangl)
Depends on: 1533295
No longer depends on: 1530351
Regressions: 1530351
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: