+ # This helps some shaders because, after some optimizations, they end up
+ # with patterns like (-a < -b) || (b < a). In an ideal world, this sort of
+ # matching would be handled by CSE.
+ (('flt', ('fneg', a), ('fneg', b)), ('flt', b, a)),
+ (('fge', ('fneg', a), ('fneg', b)), ('fge', b, a)),
+ (('feq', ('fneg', a), ('fneg', b)), ('feq', b, a)),
+ (('fne', ('fneg', a), ('fneg', b)), ('fne', b, a)),
+ (('flt', ('fneg', a), -1.0), ('flt', 1.0, a)),
+ (('flt', -1.0, ('fneg', a)), ('flt', a, 1.0)),
+ (('fge', ('fneg', a), -1.0), ('fge', 1.0, a)),
+ (('fge', -1.0, ('fneg', a)), ('fge', a, 1.0)),
+ (('fne', ('fneg', a), -1.0), ('fne', 1.0, a)),
+ (('feq', -1.0, ('fneg', a)), ('feq', a, 1.0)),
+