mirror of
https://github.com/boykopovar/AnyPS5.git
synced 2026-11-03 12:57:27 +00:00
Every IR value grew its argument vector one AddArgument at a time from empty, so a value with three arguments allocated three times (capacity 1, 2 and then 4) and freed the first two. The constructor now reserves IrOpcodeOperandCount(opcode) arguments, the count IrBuilder::Emit already requires, so a value built with its opcode's arguments allocates once. Opcodes without fixed arguments (constants, phis) reserve nothing, as before. The IR and the SPIR-V are unchanged. Co-Authored-By: Claude Opus 5.5 <[email protected]>