v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
v8::internal::compiler::turboshaft::FloatUnaryOp Struct Reference

#include <operations.h>

Inheritance diagram for v8::internal::compiler::turboshaft::FloatUnaryOp:
Collaboration diagram for v8::internal::compiler::turboshaft::FloatUnaryOp:

Public Types

enum class  Kind : uint8_t {
  kAbs , kNegate , kSilenceNaN , kRoundDown ,
  kRoundUp , kRoundToZero , kRoundTiesEven , kLog ,
  kLog2 , kLog10 , kLog1p , kSqrt ,
  kCbrt , kExp , kExpm1 , kSin ,
  kCos , kSinh , kCosh , kAcos ,
  kAsin , kAsinh , kAcosh , kTan ,
  kTanh , kAtan , kAtanh
}
 
- Public Types inherited from v8::internal::compiler::turboshaft::FixedArityOperationT< 1, FloatUnaryOp >
using Base
 
- Public Types inherited from v8::internal::compiler::turboshaft::OperationT< FloatUnaryOp >
using Base
 

Public Member Functions

base::Vector< const RegisterRepresentationoutputs_rep () const
 
base::Vector< const MaybeRegisterRepresentationinputs_rep (ZoneVector< MaybeRegisterRepresentation > &storage) const
 
V< Floatinput () const
 
 FloatUnaryOp (V< Float > input, Kind kind, FloatRepresentation rep)
 
auto options () const
 
- Public Member Functions inherited from v8::internal::compiler::turboshaft::FixedArityOperationT< 1, FloatUnaryOp >
 FixedArityOperationT (Args... args)
 
V8_INLINE auto ExplodeImpl (Fn fn, Mapper &mapper, std::index_sequence< InputI... >, std::index_sequence< OptionI... >) const
 
V8_INLINE auto Explode (Fn fn, Mapper &mapper) const
 
- Public Member Functions inherited from v8::internal::compiler::turboshaft::OperationT< FloatUnaryOp >
bool IsRequiredWhenUnused () const
 
FloatUnaryOpderived_this ()
 
const FloatUnaryOpderived_this () const
 
base::Vector< OpIndexinputs ()
 
base::Vector< const OpIndexinputs () const
 
V8_INLINE OpIndexinput (size_t i)
 
V8_INLINE V< Anyinput (size_t i) const
 
V8_INLINE V< Tinput (size_t i) const
 
size_t StorageSlotCount () const
 
 OperationT (size_t input_count)
 
 OperationT (ShadowyOpIndexVectorWrapper inputs)
 
bool EqualsForGVN (const Base &other) const
 
bool operator== (const Base &other) const
 
size_t HashWithOptions (const Args &... args) const
 
size_t hash_value (HashingStrategy strategy=HashingStrategy::kDefault) const
 
void PrintInputs (std::ostream &os, const std::string &op_index_prefix) const
 
void PrintOptions (std::ostream &os) const
 
void Validate (const Graph &graph) const
 
- Public Member Functions inherited from v8::internal::compiler::turboshaft::Operation
base::Vector< const OpIndexinputs () const
 
V8_INLINE OpIndex input (size_t i) const
 
size_t StorageSlotCount () const
 
base::Vector< const RegisterRepresentationoutputs_rep () const
 
base::Vector< const MaybeRegisterRepresentationinputs_rep (ZoneVector< MaybeRegisterRepresentation > &storage) const
 
template<class Op >
bool Is () const
 
template<class Op >
underlying_operation_t< Op > & Cast ()
 
template<class Op >
const underlying_operation_t< Op > & Cast () const
 
template<class Op >
const underlying_operation_t< Op > * TryCast () const
 
template<class Op >
underlying_operation_t< Op > * TryCast ()
 
OpEffects Effects () const
 
bool IsBlockTerminator () const
 
bool IsRequiredWhenUnused () const
 
bool IsProtectedLoad () const
 
std::string ToString () const
 
void PrintInputs (std::ostream &os, const std::string &op_index_prefix) const
 
void PrintOptions (std::ostream &os) const
 
bool IsOnlyUserOf (const Operation &value, const Graph &graph) const
 
void Print () const
 

Static Public Member Functions

static V8_EXPORT_PRIVATE bool IsSupported (Kind kind, FloatRepresentation rep)
 
- Static Public Member Functions inherited from v8::internal::compiler::turboshaft::FixedArityOperationT< 1, FloatUnaryOp >
static FloatUnaryOpNew (Graph *graph, Args... args)
 
- Static Public Member Functions inherited from v8::internal::compiler::turboshaft::OperationT< FloatUnaryOp >
static constexpr OpEffects Effects ()
 
static constexpr bool IsBlockTerminator ()
 
static constexpr std::optional< OpEffectsEffectsIfStatic ()
 
static size_t StorageSlotCount (size_t input_count)
 
static FloatUnaryOpNew (Graph *graph, size_t input_count, Args... args)
 
static FloatUnaryOpNew (Graph *graph, ShadowyOpIndexVectorWrapper inputs, Args... args)
 
- Static Public Member Functions inherited from v8::internal::compiler::turboshaft::Operation
static size_t StorageSlotCount (Opcode opcode, size_t input_count)
 

Public Attributes

Kind kind
 
FloatRepresentation rep
 
- Public Attributes inherited from v8::internal::compiler::turboshaft::Operation
const Opcode opcode
 
SaturatedUint8 saturated_use_count
 
const uint16_t input_count
 

Static Public Attributes

static constexpr OpEffects effects = OpEffects()
 
- Static Public Attributes inherited from v8::internal::compiler::turboshaft::FixedArityOperationT< 1, FloatUnaryOp >
static constexpr uint16_t input_count
 
- Static Public Attributes inherited from v8::internal::compiler::turboshaft::OperationT< FloatUnaryOp >
static const Opcode opcode
 

Additional Inherited Members

- Protected Member Functions inherited from v8::internal::compiler::turboshaft::Operation
 Operation (Opcode opcode, size_t input_count)
 
template<class OpmaskT >
 V8_CLANG_NO_SANITIZE ("memory") bool IsOpmask() const
 
 Operation (const Operation &)=delete
 
Operationoperator= (const Operation &)=delete
 

Detailed Description

Definition at line 1952 of file operations.h.

Member Enumeration Documentation

◆ Kind

Enumerator
kAbs 
kNegate 
kSilenceNaN 
kRoundDown 
kRoundUp 
kRoundToZero 
kRoundTiesEven 
kLog 
kLog2 
kLog10 
kLog1p 
kSqrt 
kCbrt 
kExp 
kExpm1 
kSin 
kCos 
kSinh 
kCosh 
kAcos 
kAsin 
kAsinh 
kAcosh 
kTan 
kTanh 
kAtan 
kAtanh 

Definition at line 1953 of file operations.h.

Constructor & Destructor Documentation

◆ FloatUnaryOp()

v8::internal::compiler::turboshaft::FloatUnaryOp::FloatUnaryOp ( V< Float > input,
Kind kind,
FloatRepresentation rep )
inlineexplicit

Definition at line 2000 of file operations.h.

Member Function Documentation

◆ input()

V< Float > v8::internal::compiler::turboshaft::FloatUnaryOp::input ( ) const
inline

Definition at line 1996 of file operations.h.

Here is the caller graph for this function:

◆ inputs_rep()

base::Vector< const MaybeRegisterRepresentation > v8::internal::compiler::turboshaft::FloatUnaryOp::inputs_rep ( ZoneVector< MaybeRegisterRepresentation > & storage) const
inline

Definition at line 1991 of file operations.h.

◆ IsSupported()

bool v8::internal::compiler::turboshaft::FloatUnaryOp::IsSupported ( Kind kind,
FloatRepresentation rep )
static

Definition at line 299 of file operations.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ options()

auto v8::internal::compiler::turboshaft::FloatUnaryOp::options ( ) const
inline

Definition at line 2003 of file operations.h.

◆ outputs_rep()

base::Vector< const RegisterRepresentation > v8::internal::compiler::turboshaft::FloatUnaryOp::outputs_rep ( ) const
inline

Definition at line 1987 of file operations.h.

Member Data Documentation

◆ effects

OpEffects v8::internal::compiler::turboshaft::FloatUnaryOp::effects = OpEffects()
staticconstexpr

Definition at line 1986 of file operations.h.

◆ kind

Kind v8::internal::compiler::turboshaft::FloatUnaryOp::kind

Definition at line 1983 of file operations.h.

◆ rep

FloatRepresentation v8::internal::compiler::turboshaft::FloatUnaryOp::rep

Definition at line 1984 of file operations.h.


The documentation for this struct was generated from the following files: