[PATCH] std::experimental::simd

Matthias Kretz m.kretz@gsi.de
Mon Oct 14 12:12:00 GMT 2019


Let me try again to get this patch ready. It will need a few iterations... 
This patch is without documentation and testsuite. I can add them on request 
but would prefer a follow-up patch after getting this one right.

I recommend to review starting from simd.h + simd_scalar.h, then 
simd_builtin.h, simd_x86.h, and simd_fixed_size.h. I sure when we get this far 
we are a few iterations further.

Regarding the license. The license header is currently just a copy from my 
repo, but we can change it to the libstdc++ license. The paperwork with the 
FSF is done.


	* include/Makefile.am: Add new header.
	* include/Makefile.in: Regenerate.
	* include/experimental/simd: New header for Parallelism TS 2.
	* include/experimental/bits/simd.h: Definition of the public simd
	interfaces and general implementation helpers.
	* include/experimental/bits/simd_builtin.h: Implementation of the
	_VecBuiltin simd_abi.
	* include/experimental/bits/simd_combine.h: Preliminary
	implementation of the _Combine simd_abi.
	* include/experimental/bits/simd_converter.h: Generic simd
	conversions.
	* include/experimental/bits/simd_detail.h: Internal macros for the
	simd implementation.
	* include/experimental/bits/simd_fixed_size.h: Simd fixed_size ABI
	specific implementations.
	* include/experimental/bits/simd_math.h: Math overloads for simd.
	* include/experimental/bits/simd_neon.h: Simd NEON specific
	implementations.
	* include/experimental/bits/simd_scalar.h: Simd scalar ABI
	specific implementations.
	* include/experimental/bits/simd_x86.h: Simd x86 specific
	implementations.
	* include/experimental/bits/simd_x86_conversions.h: x86 specific
	conversion optimizations.

-- 
──────────────────────────────────────────────────────────────────────────
 Dr. Matthias Kretz                           https://mattkretz.github.io
 GSI Helmholtzzentrum für Schwerionenforschung             https://gsi.de
 SIMD easy and portable                     https://github.com/VcDevel/Vc
──────────────────────────────────────────────────────────────────────────
-------------- next part --------------
A non-text attachment was scrubbed...
Name: simd.diff.xz
Type: application/x-xz
Size: 87536 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/libstdc++/attachments/20191014/dae39b55/attachment.xz>


More information about the Libstdc++ mailing list