@celox-sim/celox / index / OptimizeOptions
Interface: OptimizeOptions
Defined in: packages/celox/src/types.ts:188
Per-pass optimizer control flags. All default to true when omitted.
Properties
bitExtractPeephole?
optionalbitExtractPeephole?:boolean
Defined in: packages/celox/src/types.ts:194
Converts (value >> shift) & mask patterns into direct ranged loads.
coalesceStores?
optionalcoalesceStores?:boolean
Defined in: packages/celox/src/types.ts:208
Merges consecutive narrow stores into wider Concat+Store operations.
commitSinking?
optionalcommitSinking?:boolean
Defined in: packages/celox/src/types.ts:200
Sinks commit operations closer to their use site.
eliminateDeadWorkingStores?
optionaleliminateDeadWorkingStores?:boolean
Defined in: packages/celox/src/types.ts:204
Removes working-memory stores that are never read.
hoistCommonBranchLoads?
optionalhoistCommonBranchLoads?:boolean
Defined in: packages/celox/src/types.ts:192
Hoists loads shared across all branches to the branch entry.
inlineCommitForwarding?
optionalinlineCommitForwarding?:boolean
Defined in: packages/celox/src/types.ts:202
Inlines values forwarded through commit operations.
optimizeBlocks?
optionaloptimizeBlocks?:boolean
Defined in: packages/celox/src/types.ts:196
General block-level optimizations (dead block removal, merging).
reschedule?
optionalreschedule?:boolean
Defined in: packages/celox/src/types.ts:206
Reorders instructions for better Cranelift code generation.
splitWideCommits?
optionalsplitWideCommits?:boolean
Defined in: packages/celox/src/types.ts:198
Splits wide commit operations into narrower ones for efficiency.
storeLoadForwarding?
optionalstoreLoadForwarding?:boolean
Defined in: packages/celox/src/types.ts:190
Store-load forwarding: propagates stored values to subsequent loads.