HotSpot JIT 如何让掩码编译消失
The mask that compiles to nothing: how HotSpots JIT learned to reason about bits

当开发者写下 `(x << 2) & -4` 时,HotSpot 的 C2 编译器竟能将其优化为单纯的位移操作,让位运算凭空消失。这背后是编译器对数值“已知位”的深层推理。传统范围分析无法表达“低两位必为零”的特性,而 HotSpot 引入的 KnownBits 机制,通过追踪每一位的确定状态(0、1 或未知),与数值范围相互修正,最终实现精准剪枝。这一优化在 JDK 26 奠基,JDK 27 落地,展现了编译器如何从“猜范围”进化到“懂比特”。
"范围能告诉你数值很小,但无法说明它是偶数,更无法说明它是四的倍数。"