> Am 24.06.2022 um 10:14 schrieb Martin Liška <mli...@suse.cz>: > > Hi. > > As noticed in the PR, I wrongly introduced /= and *= operators. > Problem was that these operators need to modify *this object. > > Patch can bootstrap on x86_64-linux-gnu and survives regression tests. > > Ready to be installed? Ok > Thanks, > Martin > > PR middle-end/106059 > > gcc/ChangeLog: > > * profile-count.h: *= and /= operators need to modify this > object. > --- > gcc/profile-count.h | 20 ++++++++++++-------- > 1 file changed, 12 insertions(+), 8 deletions(-) > > diff --git a/gcc/profile-count.h b/gcc/profile-count.h > index be6e2d57cf7..141a8827001 100644 > --- a/gcc/profile-count.h > +++ b/gcc/profile-count.h > @@ -605,9 +605,10 @@ public: > return apply_scale (num, 1); > } > > - profile_probability operator*= (int64_t den) const > + profile_probability operator*= (int64_t num) > { > - return *this * den; > + *this = apply_scale (num, 1); > + return *this; > } > > profile_probability operator/ (int64_t den) const > @@ -615,9 +616,10 @@ public: > return apply_scale (1, den); > } > > - profile_probability operator/= (int64_t den) const > + profile_probability operator/= (int64_t den) > { > - return *this / den; > + *this = apply_scale (1, den); > + return *this; > } > > /* Get the value of the count. */ > @@ -1017,9 +1019,10 @@ public: > return apply_scale (num, 1); > } > > - profile_count operator*= (int64_t den) const > + profile_count operator*= (int64_t num) > { > - return *this * den; > + *this = apply_scale (num, 1); > + return *this; > } > > profile_count operator/ (int64_t den) const > @@ -1027,9 +1030,10 @@ public: > return apply_scale (1, den); > } > > - profile_count operator/= (int64_t den) const > + profile_count operator/= (int64_t den) > { > - return *this / den; > + *this = apply_scale (1, den); > + return *this; > } > > /* Return true when value is not zero and can be used for scaling. > -- > 2.36.1 >
Re: [PATCH] profile-count: fix /= and *= operators
Richard Biener via Gcc-patches Fri, 24 Jun 2022 01:38:19 -0700
- [PATCH] profile-count: fix /= and *= operat... Martin Liška
- Re: [PATCH] profile-count: fix /= and ... Richard Biener via Gcc-patches