Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Provide simd-generic-like overloads for other common C++ std functions, traits, etc.

Abierto
#32 1 comentario 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
25/100
Tipo de issue
Nueva funcionalidad
Claridad
Necesita aclaración
Estado de actividad
Activo
Stack tecnológico
cpp
Área
performance

Línea de trabajo

The issue names no files or tests. Start by reviewing the existing simd-generic overloads and the listed standard-library functions and traits, then determine which subset has a defined scope; done would require an agreed set of extensions suitable for a standards committee paper.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

C++29 extension

There are many common types and functions which could be used in a simd-generic way, and which could be added as overloads. The list below is not exhaustive, but serves as an indication of what should be looked at. These should probably all be bundled into a single standards committee paper which proposes extending the current overload set to include other common cases.

Note that it isn't always clear if a overload/trait actually makes sense, even if these is already some precedent for it. For example, numeric_limits<vec> has been proposed, but does this mean that every one of the is_signed_v family of functions should also work? True "simd-generic" behaviour would mean making sure that every possible overload/trait of a vec<T> should map to its corresponding element-wise overload/trait. That would be a huge list so is that going too far. Maybe we should just accept that simd-generic is too big to be pursued everywhere.

Possible overloads:

  • The load/store/gather/scatter family
  • is_signed_v and family: Like numeric_limits<vec> it could return true if the underlying type is signed.
  • make_unsigned, make_signed, make_unsigned_t
  • cmp_less, cmp_greater and family.
  • in_range
  • compare_three_way
Lenguaje dominante
C++
Estrellas
5
Forks
2
Merge medio
1 d 11 h
PR fusionados (30 d)
20

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de intel/xvec

Todos los issues de intel/xvec

Issues similares

Más issues de C++

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.