5add793abe
The previous approach inlined all 3 API-level branches into a single fieldMulReduce method (~600 DEX instructions). ART's register allocator produces suboptimal code for such large methods, causing stack spills that negate the benefit of eliminating wrapper calls. Split each API-level path into its own private function (~200 DEX instructions each). ART JIT-compiles only the hot one (fieldMulApi35 on API 35+) with full optimization, while the tiny dispatch function (fieldMulReduce) is easily devirtualized and inlined. https://claude.ai/code/session_01EMY5RnXb9rnsyU2KbXrSaY