https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115710
--- Comment #8 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
I wonder if we could also add:
+/* cabs(x+0i) or cabs(0+xi) -> abs(x). */
+(simplify
+ (CABS (complex:c @0 real_zerop@1))
+ (abs @0))
+ /* cabs(x+xi) -> fabs(x)*sqrt(2). */
+ (simplify
+ (CABS (complex @0 @0))
+ (mult (abs @0) { build_real_truncate (type, dconst_sqrt2 ()); })))
to the lowering part.
let me look into doing that but it will be 3rd part to the patch series. Since
we should have this info already ...