This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [x86, 2/n] Replace builtins with vector extensions


Ping?
https://gcc.gnu.org/ml/gcc-patches/2014-10/msg01808.html

On Sat, 18 Oct 2014, Marc Glisse wrote:

Hello,

this time, +-* for 128 bit integer vectors. I am using an unsigned type so the compiler knows that we expect wrapping. I don't know why Intel's description of mullo insists that the multiplication is signed, that only matters for the high part...

Next parts (waiting for approval for this one) should be:
- same thing with 256 and 512 bit integer vectors
- & | ^ (integer only)

Maybe (or it can wait until the next release):
- < > == abs min max (integer only)


2014-10-20  Marc Glisse  <marc.glisse@inria.fr>

	* config/i386/emmintrin.h (__v2du, __v4su, __v8hu, __v16qu): New
	typedefs.
	(_mm_add_epi8, _mm_add_epi16, _mm_add_epi32, _mm_add_epi64,
	_mm_sub_epi8, _mm_sub_epi16, _mm_sub_epi32, _mm_sub_epi64,
	_mm_mullo_epi16): Use vector extensions instead of builtins.
	* config/i386/smmintrin.h (_mm_mullo_epi32): Likewise.



--
Marc Glisse


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]