Closed
Bug 1407535
(Rabaldr-ARM64)
Opened 7 years ago
Closed 7 years ago
[meta] ARM64 support for wasm baseline (Rabaldr)
Categories
(Core :: JavaScript Engine: JIT, enhancement, P3)
Tracking
()
RESOLVED
FIXED
People
(Reporter: lth, Assigned: lth)
References
(Blocks 1 open bug)
Details
(Keywords: meta, Whiteboard: [geckoview:crow])
Attachments
(4 obsolete files)
A fairly modest amount of effort is necessary to support WebAssembly on aarch64 with a baseline-only strategy. At least the following work items:
* stubs for calling in and calling out
* interrupt / signal handling for OOB handling
* huge-memory support
* register assignment, architecture strategies, frame layouts, etc
* port the baseline compiler by instantiating its porting APIs, generalizing
* fill in many assembler macros that are now MOZ_CRASH, this includes some
hard OOL cases (non-trivial amounts of logic)
* resolve the simulator situation wrt atomics (useless, last we looked)
The baseline compiler is becoming large enough that it is also time to refactor it a bit, so that work should happen first.
Assignee | ||
Comment 1•7 years ago
|
||
WIP. Adds most of the ARM64 support to wasm baseline (all except some atomics support and two OOL cases). Initial work on masm and other issues.
Assignee | ||
Comment 2•7 years ago
|
||
Rollup patch - enough support to actually compile and run some code. (An old Smalltalk joke holds that your engine works when it can execute "3+4" correctly. This queue can do that.)
Assignee | ||
Comment 3•7 years ago
|
||
Work in progress.
Attachment #8944369 -
Attachment is obsolete: true
Updated•7 years ago
|
Alias: Rebaldr
status-firefox59:
--- → wontfix
status-firefox60:
--- → affected
Whiteboard: [geckoview:crow]
Assignee | ||
Updated•7 years ago
|
Hardware: Other → ARM64
Assignee | ||
Updated•7 years ago
|
Alias: Rebaldr → Rabaldr
Assignee | ||
Comment 4•7 years ago
|
||
I have some stubs work left but won't do that until the stubs rewrite lands.
Alias: Rabaldr → Rabaldr-ARM64
Depends on: 1319203
Summary: [meta] Wasm: arm64 / aarch64 support for baseline (Rabaldr) → [meta] ARM64 support for wasm baseline (Rabaldr)
Assignee | ||
Comment 5•7 years ago
|
||
Attachment #8948668 -
Attachment is obsolete: true
Assignee | ||
Updated•7 years ago
|
Blocks: Fennec-ARM64
Assignee | ||
Updated•7 years ago
|
Attachment #8950861 -
Attachment is obsolete: true
Assignee | ||
Comment 6•7 years ago
|
||
Try run for final patch queue is green:
https://treeherder.mozilla.org/#/jobs?repo=try&revision=fed7d260309c153fc78ec295297a601a37926319
Hardware testing is green.
Waiting on a couple of minor reviews; basically ready to land.
Assignee | ||
Comment 7•7 years ago
|
||
... and it runs my wasm raytracer demo on my Nexus 5X. My work here is done.
Assignee | ||
Updated•7 years ago
|
Status: ASSIGNED → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•