19:50:17karloszbut it could just be LEA RDX, [T] \\ CMOVEQ RDX, R12 ideally
19:50:36stassatsi was very glad to avoid having to do that
19:53:19stassatsi also didn't do the multi-flag option right, but arm64 doesn't have any, so it's under a rag at the moment
19:53:45stassatsor maybe it's right, three operands and all
19:54:06karloszso i think i can just invert the condition inside the move-if on x86
19:54:19karloszthat should allow erasing the need for the temp
19:57:22stassatsi hadn't done move-if on arm64 previously because then it pessimized cbz/cbnz (branch if zero), but with the instcombine pass it's no longer an issue
19:58:00stassatsand it will even work with tbz/tbnz (branh if bit set)
19:59:44stassatsbut i really want a real code model for peephole optimization, which registers definitions are available, maybe which constant values are where
19:59:54stassatsso it can do more than just adjacent instructions