[meta] Avoid explicit error returns and checks during Ion compilation

NEW
Unassigned

Status

()

Core
JavaScript Engine: JIT
P5
normal
3 years ago
2 years ago

People

(Reporter: bhackett, Unassigned)

Tracking

Trunk
x86
Mac OS X
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(Not tracked)

Details

(Reporter)

Description

3 years ago
IonBuilder can only fail via OOM, by disabling the script, or to indicate a retry due to bad inlining or the new script properties analysis needing to be performed.  Other stages of Ion compilation can generally only fail via OOM.  The compiler uses a variety of error reporting strategies, though: setting OOM flags or other failure fields, using a ballast and failing if it can't be refilled, and explicitly returning failure codes.

It would be nice if this was cleaned up, by removing almost all explicit error returns and error checking in the compiler, and relying on failure fields in the builder or macro assembler for propagating failure.  The ballast would be used to allow compiler things like MIR definitions to be allocated infallibly, as they are now.
(Reporter)

Updated

3 years ago
Summary: Avoid explicit error returns and checks during Ion compilation → [meta] Avoid explicit error returns and checks during Ion compilation
(Reporter)

Updated

3 years ago
Depends on: 1106947
(Reporter)

Updated

3 years ago
Depends on: 1107774

Updated

2 years ago
Priority: -- → P5
You need to log in before you can comment on or make changes to this bug.