mirror of
https://github.com/odin-lang/Odin.git
synced 2026-06-19 16:42:33 +00:00
Predicated FP round (FRINTN/P/M/Z/A/X/I, FRECPX), reversed predicated shifts (ASRR/LSLR/LSRR) and FP (FSUBR/FDIVR), FP compare (FCMEQ/GE/GT/ NE/UO + vs-zero FCMLE/FCMLT), integer compare aliases (CMPLE/LO/LS/LT), predicate logical (NANDS/NORS/ORNS), predicate break (BRKPA/BRKPB, BRKA/BRKB + flag-setting BRKAS/BRKBS), SVE2 EOR3/BCAX, INSR, COMPACT. New specgen SVE section: a generic emitter assembles each form all-zero then one variant per field at its max (Z 31, 3-bit Pg 7, 4-bit Pd/Pg/Pn/ Pm 15, GPR wzr/xzr) and derives mask = ~union. Operand placements verified vs llvm-mc: the reversed/destructive ops put Zm at VN (5-9); the CMPLE/LO/LS/LT aliases swap operands (VM/VN); EOR3/BCAX place the 3rd src at VM and 4th at VN. All 22 representative forms byte-exact and decode-clean; 461 tests green. (BRKN + CPY/EXT/MOV/NOT_P/FFR/XAR stragglers next.)