e148ff1ed7
Replace every non-inline uLt() call with uLtInline() across FieldP.kt, U256.kt, and ScalarN.kt. The expect/actual uLt() can't be inline (KMP limitation), costing ~84ns per call on ART as a real function dispatch. From the trace: 12,394 uLt calls × 84ns = 1.035ms per verify (1.2% of total). uLtInline uses the same XOR-with-MIN_VALUE trick but as a package-level inline function — zero dispatch overhead. Also inline isInfinity() body directly: was delegating to U256.isZero() (double dispatch), now computes (z[0] or z[1] or z[2] or z[3]) == 0L directly. 190 calls × 347ns = 66µs saved. https://claude.ai/code/session_015CtM5k88rF7WFgX8o2AGNR