clang 23.0.0git
hlsl_alias_intrinsics.h File Reference
#include "hlsl_alias_intrinsics_gen.inc"

Go to the source code of this file.

Namespaces

namespace  hlsl

Macros

#define _HLSL_BUILTIN_ALIAS(builtin)
#define _HLSL_AVAILABILITY(platform, version)
#define _HLSL_AVAILABILITY_STAGE(platform, version, stage)
#define _HLSL_16BIT_AVAILABILITY(platform, version, ...)
#define _HLSL_16BIT_AVAILABILITY_STAGE(environment, version, stage)
#define _HLSL_16BIT_AVAILABILITY_SHADERMODEL_DEFAULT()

Functions

template<int R, int C>
 hlsl::_HLSL_BUILTIN_ALIAS (__builtin_hlsl_mul) vector< half
C hlsl::mul (vector< half, R >, matrix< half, R, C >)
template<typename T, int R, int C>
vector< T, Chlsl::mul (vector< T, R >, matrix< T, R, C >)
R hlsl::mul (matrix< half, R, C >, vector< half, C >)
template<typename T, int R, int C>
vector< T, Rhlsl::mul (matrix< T, R, C >, vector< T, C >)
template<int R, int K, int C>
 hlsl::_HLSL_BUILTIN_ALIAS (__builtin_hlsl_mul) matrix< half
C hlsl::mul (matrix< half, R, K >, matrix< half, K, C >)
template<typename T, int R, int K, int C>
matrix< T, R, Chlsl::mul (matrix< T, R, K >, matrix< T, K, C >)
template<int R, int C>
 hlsl::_HLSL_BUILTIN_ALIAS (__builtin_hlsl_transpose) matrix< half
R hlsl::transpose (matrix< half, R, C >)
template<typename T, int R, int C>
matrix< T, C, Rhlsl::transpose (matrix< T, R, C >)
 Returns the transpose of the input matrix.
template<typename T>
hlsl::select (bool, T, T)
 ternary operator.
template<typename T>
vector< T, 2 > hlsl::select (vector< bool, 2 >, vector< T, 2 >, vector< T, 2 >)
template<typename T>
vector< T, 3 > hlsl::select (vector< bool, 3 >, vector< T, 3 >, vector< T, 3 >)
template<typename T>
vector< T, 4 > hlsl::select (vector< bool, 4 >, vector< T, 4 >, vector< T, 4 >)
template<typename T>
vector< T, 2 > hlsl::select (vector< bool, 2 >, T, vector< T, 2 >)
template<typename T>
vector< T, 3 > hlsl::select (vector< bool, 3 >, T, vector< T, 3 >)
template<typename T>
vector< T, 4 > hlsl::select (vector< bool, 4 >, T, vector< T, 4 >)
template<typename T>
vector< T, 2 > hlsl::select (vector< bool, 2 >, vector< T, 2 >, T)
template<typename T>
vector< T, 3 > hlsl::select (vector< bool, 3 >, vector< T, 3 >, T)
template<typename T>
vector< T, 4 > hlsl::select (vector< bool, 4 >, vector< T, 4 >, T)
template<typename T>
__detail::enable_if_t< __detail::is_arithmetic< T >::Value, vector< T, 2 > > hlsl::select (vector< bool, 2 >, T, T)
template<typename T>
__detail::enable_if_t< __detail::is_arithmetic< T >::Value, vector< T, 3 > > hlsl::select (vector< bool, 3 >, T, T)
template<typename T>
__detail::enable_if_t< __detail::is_arithmetic< T >::Value, vector< T, 4 > > hlsl::select (vector< bool, 4 >, T, T)

Variables

 hlsl::R
 hlsl::C

Macro Definition Documentation

◆ _HLSL_16BIT_AVAILABILITY

#define _HLSL_16BIT_AVAILABILITY ( platform,
version,
... )
Value:
__VA_OPT__(_HLSL_AVAILABILITY(platform, __VA_ARGS__))
#define _HLSL_AVAILABILITY(platform, version)

Definition at line 36 of file hlsl_alias_intrinsics.h.

Referenced by hlsl::mul().

◆ _HLSL_16BIT_AVAILABILITY_SHADERMODEL_DEFAULT

#define _HLSL_16BIT_AVAILABILITY_SHADERMODEL_DEFAULT ( )

Definition at line 39 of file hlsl_alias_intrinsics.h.

Referenced by hlsl::mul(), and hlsl::mul().

◆ _HLSL_16BIT_AVAILABILITY_STAGE

#define _HLSL_16BIT_AVAILABILITY_STAGE ( environment,
version,
stage )

Definition at line 38 of file hlsl_alias_intrinsics.h.

◆ _HLSL_AVAILABILITY

#define _HLSL_AVAILABILITY ( platform,
version )
Value:
__attribute__((availability(platform, introduced = version)))
_Float16 __2f16 __attribute__((ext_vector_type(2)))
Zeroes the upper 128 bits (bits 255:128) of all YMM registers.

Definition at line 21 of file hlsl_alias_intrinsics.h.

◆ _HLSL_AVAILABILITY_STAGE

#define _HLSL_AVAILABILITY_STAGE ( platform,
version,
stage )
Value:
availability(platform, introduced = version, environment = stage)))

Definition at line 23 of file hlsl_alias_intrinsics.h.

◆ _HLSL_BUILTIN_ALIAS

#define _HLSL_BUILTIN_ALIAS ( builtin)
Value:
__attribute__((clang_builtin_alias(builtin)))

Definition at line 19 of file hlsl_alias_intrinsics.h.