Skip to content

@celox-sim/celox / index / OptimizeOptions

Interface: OptimizeOptions ​

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

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

Properties ​

bitExtractPeephole? ​

optional bitExtractPeephole?: boolean

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

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


coalesceStores? ​

optional coalesceStores?: boolean

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

Merges consecutive narrow stores into wider Concat+Store operations.


commitSinking? ​

optional commitSinking?: boolean

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

Sinks commit operations closer to their use site.


eliminateDeadWorkingStores? ​

optional eliminateDeadWorkingStores?: boolean

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

Removes working-memory stores that are never read.


hoistCommonBranchLoads? ​

optional hoistCommonBranchLoads?: boolean

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

Hoists loads shared across all branches to the branch entry.


inlineCommitForwarding? ​

optional inlineCommitForwarding?: boolean

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

Inlines values forwarded through commit operations.


optimizeBlocks? ​

optional optimizeBlocks?: boolean

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

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


reschedule? ​

optional reschedule?: boolean

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

Reorders instructions for better Cranelift code generation.


splitWideCommits? ​

optional splitWideCommits?: boolean

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

Splits wide commit operations into narrower ones for efficiency.


storeLoadForwarding? ​

optional storeLoadForwarding?: boolean

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

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