v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
simd128.h File Reference
#include <cstdint>
#include "src/base/memory.h"
#include "src/common/globals.h"
Include dependency graph for simd128.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  v8::internal::Simd128
 

Namespaces

namespace  v8
 
namespace  v8::internal
 

Macros

#define FOREACH_SIMD_TYPE(V)
 
#define DEFINE_SIMD_TYPE(cType, sType, name, kSize)
 
#define DEFINE_SIMD_TYPE_SPECIFIC_METHODS(cType, sType, name, size)
 
#define DECLARE_CAST(cType, sType, name, size)
 

Macro Definition Documentation

◆ DECLARE_CAST

#define DECLARE_CAST ( cType,
sType,
name,
size )
Value:
template <> \
inline sType Simd128::to() const { \
return to_##name(); \
}
const char * name
Definition builtins.cc:39

Definition at line 62 of file simd128.h.

◆ DEFINE_SIMD_TYPE

#define DEFINE_SIMD_TYPE ( cType,
sType,
name,
kSize )
Value:
struct sType { \
cType val[kSize]; \
};

Definition at line 23 of file simd128.h.

◆ DEFINE_SIMD_TYPE_SPECIFIC_METHODS

#define DEFINE_SIMD_TYPE_SPECIFIC_METHODS ( cType,
sType,
name,
size )
Value:
explicit Simd128(sType val) { \
base::WriteUnalignedValue<sType>(reinterpret_cast<Address>(val_), val); \
} \
sType to_##name() const { \
return base::ReadUnalignedValue<sType>(reinterpret_cast<Address>(val_)); \
}

Definition at line 34 of file simd128.h.

◆ FOREACH_SIMD_TYPE

#define FOREACH_SIMD_TYPE ( V)
Value:
V(double, float64x2, f64x2, 2) \
V(float, float32x4, f32x4, 4) \
V(int64_t, int64x2, i64x2, 2) \
V(int32_t, int32x4, i32x4, 4) \
V(int16_t, int16x8, i16x8, 8) \
V(int8_t, int8x16, i8x16, 16)
#define V(Name)

Definition at line 15 of file simd128.h.