From 26bd35c19fad30d64b42c77a1f2f2aaaca1be9f4 Mon Sep 17 00:00:00 2001 From: Joe Savona Date: Fri, 6 Jun 2025 09:56:17 -0700 Subject: [PATCH] Update base for Update on "[compiler] Alternate pipeline for new mutability model" This PR gets a first fixture working end-to-end with the new mutability and aliasing model. Key changes: * Add a feature flag to enable the model. When enabled we no longer call InferReferenceEffects or InferMutableRanges, and instead use the new equivalents. * Adds a pass that infers Place-specific effects based on mutable ranges and instruction effects. This is necessary to satisfy existing code that requires operand effects to be populated. * Adds a pass that infers the outwardly-visible capturing/aliasing behavior of a function expression. The idea is that this can bubble up and be used in conjunction with the `Apply` effect to get precise inference of things like `array.map(() => { ... })`. [ghstack-poisoned]