Skip to content

@celox-sim/celox / index / OptimizeOptions

Interface: OptimizeOptions

Defined in: packages/celox/src/types.ts:137

Per-pass optimizer control flags. All default to true when omitted.

Properties

bitExtractPeephole?

optional bitExtractPeephole: boolean

Defined in: packages/celox/src/types.ts:143

Converts (value >> shift) & mask patterns into direct ranged loads.


coalesceStores?

optional coalesceStores: boolean

Defined in: packages/celox/src/types.ts:157

Merges consecutive narrow stores into wider Concat+Store operations.


commitSinking?

optional commitSinking: boolean

Defined in: packages/celox/src/types.ts:149

Sinks commit operations closer to their use site.


eliminateDeadWorkingStores?

optional eliminateDeadWorkingStores: boolean

Defined in: packages/celox/src/types.ts:153

Removes working-memory stores that are never read.


hoistCommonBranchLoads?

optional hoistCommonBranchLoads: boolean

Defined in: packages/celox/src/types.ts:141

Hoists loads shared across all branches to the branch entry.


inlineCommitForwarding?

optional inlineCommitForwarding: boolean

Defined in: packages/celox/src/types.ts:151

Inlines values forwarded through commit operations.


optimizeBlocks?

optional optimizeBlocks: boolean

Defined in: packages/celox/src/types.ts:145

General block-level optimizations (dead block removal, merging).


reschedule?

optional reschedule: boolean

Defined in: packages/celox/src/types.ts:155

Reorders instructions for better Cranelift code generation.


splitWideCommits?

optional splitWideCommits: boolean

Defined in: packages/celox/src/types.ts:147

Splits wide commit operations into narrower ones for efficiency.


storeLoadForwarding?

optional storeLoadForwarding: boolean

Defined in: packages/celox/src/types.ts:139

Store-load forwarding: propagates stored values to subsequent loads.