[PATCH x86-64][BZ #20024] Fixed vector sincos/sincosf ABI

Joseph Myers joseph@codesourcery.com
Wed Jun 22 17:57:00 GMT 2016


On Wed, 22 Jun 2016, Andrew Senkevich wrote:

> 2016-06-22 18:12 GMT+03:00 Joseph Myers <joseph@codesourcery.com>:
> > Also, I don't see how this definition can work.  It looks to me like: you
> > initialize the vectors of pointers with lots of copies of the same pointer
> > (as INIT_VEC_LOOP is about putting lots of copies of the same value in a
> > vector).  Then you call the vector function.  Then the TEST_VEC_LOOP calls
> > have a first argument that is, via some indirection, just r or r1, so they
> > would look successively at r[0], r[1] etc. - but only r[0] and r1[0]
> > actually exist.  Given this, I don't understand why the implementation you
> > have would have passed the tests at all.
> 
> Unfolded TEST_VEC_LOOP looks successively at mr[0], mr[1] not at r[0], r[1].
> mr[0], mr[1] etc. are the same pointer, yes, but mx also contains
> equal values...
> Is it Ok?

The whole point of TEST_VEC_LOOP is to make sure that the N floating-point 
results are equal, given equal inputs (to fit vector tests into the scalar 
test infrastructure).

This means you need to use N separate pointers in the vector of pointers.

-- 
Joseph S. Myers
joseph@codesourcery.com



More information about the Libc-alpha mailing list