From: Evandro Menezes Date: Tue, 14 Jun 2016 16:26:02 +0000 (+0000) Subject: [AArch64] Add commit message X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=eed7fbc5e35259367407b809d3b8e17a9552f5ee;p=gcc.git [AArch64] Add commit message * gcc/ChangeLog: Add commit messages for patch series that added support for optionally using the Newton series for division and square root. From-SVN: r237452 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index bbc996e10ed..f95e4a659e5 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -122,6 +122,79 @@ to a deeper loop nest. Pop the last item off the path here rather than in convert_and_register_jump_thread_path. +2016-06-13 Evandro Menezes + Wilco Dijkstra + + [AArch64] Emit division using the Newton series + + * config/aarch64/aarch64-protos.h + (cpu_approx_modes): Add new member "division". + (aarch64_emit_approx_div): Declare new function. + * config/aarch64/aarch64.c + (generic_approx_modes): New member "division". + (exynosm1_approx_modes): Likewise. + (xgene1_approx_modes): Likewise. + (aarch64_emit_approx_div): Define new function. + * config/aarch64/aarch64.md ("div3"): New expansion. + * config/aarch64/aarch64-simd.md ("div3"): Likewise. + * config/aarch64/aarch64.opt (-mlow-precision-div): Add new option. + * doc/invoke.texi (-mlow-precision-div): Describe new option. + +2016-06-13 Evandro Menezes + Wilco Dijkstra + + [AArch64] Emit square root using the Newton series + + * config/aarch64/aarch64-protos.h + (aarch64_emit_approx_rsqrt): Replace with new function + "aarch64_emit_approx_sqrt". + (cpu_approx_modes): New member "sqrt". + * config/aarch64/aarch64.c + (generic_approx_modes): New member "sqrt". + (exynosm1_approx_modes): Likewise. + (xgene1_approx_modes): Likewise. + (aarch64_emit_approx_rsqrt): Replace with new function + "aarch64_emit_approx_sqrt". + (aarch64_override_options_after_change_1): Handle new option. + * config/aarch64/aarch64-simd.md + (rsqrt2): Use new function instead. + (sqrt2): New expansion and insn definitions. + * config/aarch64/aarch64.md: Likewise. + * config/aarch64/aarch64.opt + (mlow-precision-sqrt): Add new option description. + * doc/invoke.texi (mlow-precision-sqrt): Likewise. + +2016-06-13 Evandro Menezes + + [AArch64] Add more choices for the reciprocal square root approximation + + Allow a target to prefer such operation depending on the operation mode. + + * config/aarch64/aarch64-protos.h + (AARCH64_APPROX_MODE): New macro. + (AARCH64_APPROX_{NONE,ALL}): Likewise. + (cpu_approx_modes): New structure. + (tune_params): New member "approx_modes". + * config/aarch64/aarch64-tuning-flags.def + (AARCH64_EXTRA_TUNE_APPROX_RSQRT): Remove macro. + * config/aarch64/aarch64.c + (generic_approx_modes): New core "cpu_approx_modes" structure. + (exynosm1_approx_modes): Likewise. + (xgene1_approx_modes): Likewise. + (generic_tunings): New member "approx_modes". + (cortexa35_tunings): Likewise. + (cortexa53_tunings): Likewise. + (cortexa57_tunings): Likewise. + (cortexa72_tunings): Likewise. + (exynosm1_tunings): Likewise. + (thunderx_tunings): Likewise. + (xgene1_tunings): Likewise. + (use_rsqrt_p): New argument for the mode and use new member from + "tune_params". + (aarch64_builtin_reciprocal): Devise mode from builtin. + (aarch64_optab_supported_p): New argument for the mode. + * doc/invoke.texi (-mlow-precision-recip-sqrt): Reword description. + 2016-06-13 Kelvin Nilsen * config/rs6000/rs6000.h (RS6000_BTM_COMMON): Add the