Using `SmallVector` would introduce a dependency cycle (see https://github.com/llvm/llvm-project/pull/155630#discussion_r2495268497), so this uses a NodeList.
Using `SmallVector` would introduce a dependency cycle (see https://github.com/llvm/llvm-project/pull/155630#discussion_r2495268497), so this uses a NodeList.