This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
Re: GCC does not generate ADCX or ADOX for _addcarryx_u64
On 2017-08-21 07:31 -0400, Jeffrey Walton wrote:
> On Mon, Aug 21, 2017 at 7:20 AM, Marc Glisse <marc.glisse@inria.fr> wrote:
> > On Mon, 21 Aug 2017, Jeffrey Walton wrote:
> >
> > > I'm trying to use _addcarryx_u64. GCC 7.1 is still generating ADD and
> > > ADC instead of ADCX or ADOX:
> >
> > Does that compute wrong values? Make the program slower?
>
> It looks like the values are computed correctly.
>
> I don't know the affect on performance. The only benchmarks I have are
> for add/adc. I can't get the adcx/adox generated to benchmark them.
>
> Compared to Intel ICC code generation, Intel's code is about 20% to 30% smaller.
GCC once used ADCX but got silly results. So Uros disabled it.
See <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67317>, or
<https://gcc.gnu.org/ml/gcc-bugs/2015-08/msg01534.html> if you can't access
Bugzilla.
> Jeff
--
Xi Ruoyao <ryxi@stu.xidian.edu.cn>
School of Aerospace Science and Technology, Xidian University