v8  3.14.5(node0.10.28)
V8 is Google's open source JavaScript engine
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
FloatingPointHelper Class Reference

#include <code-stubs-arm.h>

Inheritance diagram for FloatingPointHelper:
Collaboration diagram for FloatingPointHelper:

Public Types

enum  Destination { kVFPRegisters, kCoreRegisters, kFPURegisters, kCoreRegisters }
 
enum  Destination { kVFPRegisters, kCoreRegisters, kFPURegisters, kCoreRegisters }
 

Static Public Member Functions

static void LoadSmis (MacroAssembler *masm, Destination destination, Register scratch1, Register scratch2)
 
static void LoadOperands (MacroAssembler *masm, FloatingPointHelper::Destination destination, Register heap_number_map, Register scratch1, Register scratch2, Label *not_number)
 
static void ConvertNumberToInt32 (MacroAssembler *masm, Register object, Register dst, Register heap_number_map, Register scratch1, Register scratch2, Register scratch3, DwVfpRegister double_scratch, Label *not_int32)
 
static void ConvertIntToDouble (MacroAssembler *masm, Register int_scratch, Destination destination, DwVfpRegister double_dst, Register dst1, Register dst2, Register scratch2, SwVfpRegister single_scratch)
 
static void LoadNumberAsInt32Double (MacroAssembler *masm, Register object, Destination destination, DwVfpRegister double_dst, DwVfpRegister double_scratch, Register dst1, Register dst2, Register heap_number_map, Register scratch1, Register scratch2, SwVfpRegister single_scratch, Label *not_int32)
 
static void LoadNumberAsInt32 (MacroAssembler *masm, Register object, Register dst, Register heap_number_map, Register scratch1, Register scratch2, Register scratch3, DwVfpRegister double_scratch0, DwVfpRegister double_scratch1, Label *not_int32)
 
static void DoubleIs32BitInteger (MacroAssembler *masm, Register src1, Register src2, Register dst, Register scratch, Label *not_int32)
 
static void CallCCodeForDoubleOperation (MacroAssembler *masm, Token::Value op, Register heap_number_result, Register scratch)
 
static void LoadSmis (MacroAssembler *masm, Destination destination, Register scratch1, Register scratch2)
 
static void LoadOperands (MacroAssembler *masm, FloatingPointHelper::Destination destination, Register heap_number_map, Register scratch1, Register scratch2, Label *not_number)
 
static void ConvertNumberToInt32 (MacroAssembler *masm, Register object, Register dst, Register heap_number_map, Register scratch1, Register scratch2, Register scratch3, FPURegister double_scratch, Label *not_int32)
 
static void ConvertIntToDouble (MacroAssembler *masm, Register int_scratch, Destination destination, FPURegister double_dst, Register dst1, Register dst2, Register scratch2, FPURegister single_scratch)
 
static void LoadNumberAsInt32Double (MacroAssembler *masm, Register object, Destination destination, FPURegister double_dst, Register dst1, Register dst2, Register heap_number_map, Register scratch1, Register scratch2, FPURegister single_scratch, Label *not_int32)
 
static void LoadNumberAsInt32 (MacroAssembler *masm, Register object, Register dst, Register heap_number_map, Register scratch1, Register scratch2, Register scratch3, FPURegister double_scratch, Label *not_int32)
 
static void DoubleIs32BitInteger (MacroAssembler *masm, Register src1, Register src2, Register dst, Register scratch, Label *not_int32)
 
static void CallCCodeForDoubleOperation (MacroAssembler *masm, Token::Value op, Register heap_number_result, Register scratch)
 

Detailed Description

Definition at line 709 of file code-stubs-arm.h.

Member Enumeration Documentation

Enumerator
kVFPRegisters 
kCoreRegisters 
kFPURegisters 
kCoreRegisters 

Definition at line 711 of file code-stubs-arm.h.

Enumerator
kVFPRegisters 
kCoreRegisters 
kFPURegisters 
kCoreRegisters 

Definition at line 711 of file code-stubs-mips.h.

Member Function Documentation

static void CallCCodeForDoubleOperation ( MacroAssembler masm,
Token::Value  op,
Register  heap_number_result,
Register  scratch 
)
static
static void CallCCodeForDoubleOperation ( MacroAssembler masm,
Token::Value  op,
Register  heap_number_result,
Register  scratch 
)
static
static void ConvertIntToDouble ( MacroAssembler masm,
Register  int_scratch,
Destination  destination,
DwVfpRegister  double_dst,
Register  dst1,
Register  dst2,
Register  scratch2,
SwVfpRegister  single_scratch 
)
static
static void ConvertIntToDouble ( MacroAssembler masm,
Register  int_scratch,
Destination  destination,
FPURegister  double_dst,
Register  dst1,
Register  dst2,
Register  scratch2,
FPURegister  single_scratch 
)
static
static void ConvertNumberToInt32 ( MacroAssembler masm,
Register  object,
Register  dst,
Register  heap_number_map,
Register  scratch1,
Register  scratch2,
Register  scratch3,
DwVfpRegister  double_scratch,
Label *  not_int32 
)
static
static void ConvertNumberToInt32 ( MacroAssembler masm,
Register  object,
Register  dst,
Register  heap_number_map,
Register  scratch1,
Register  scratch2,
Register  scratch3,
FPURegister  double_scratch,
Label *  not_int32 
)
static
static void DoubleIs32BitInteger ( MacroAssembler masm,
Register  src1,
Register  src2,
Register  dst,
Register  scratch,
Label *  not_int32 
)
static
static void DoubleIs32BitInteger ( MacroAssembler masm,
Register  src1,
Register  src2,
Register  dst,
Register  scratch,
Label *  not_int32 
)
static
static void LoadNumberAsInt32 ( MacroAssembler masm,
Register  object,
Register  dst,
Register  heap_number_map,
Register  scratch1,
Register  scratch2,
Register  scratch3,
FPURegister  double_scratch,
Label *  not_int32 
)
static
static void LoadNumberAsInt32 ( MacroAssembler masm,
Register  object,
Register  dst,
Register  heap_number_map,
Register  scratch1,
Register  scratch2,
Register  scratch3,
DwVfpRegister  double_scratch0,
DwVfpRegister  double_scratch1,
Label *  not_int32 
)
static
static void LoadNumberAsInt32Double ( MacroAssembler masm,
Register  object,
Destination  destination,
FPURegister  double_dst,
Register  dst1,
Register  dst2,
Register  heap_number_map,
Register  scratch1,
Register  scratch2,
FPURegister  single_scratch,
Label *  not_int32 
)
static
static void LoadNumberAsInt32Double ( MacroAssembler masm,
Register  object,
Destination  destination,
DwVfpRegister  double_dst,
DwVfpRegister  double_scratch,
Register  dst1,
Register  dst2,
Register  heap_number_map,
Register  scratch1,
Register  scratch2,
SwVfpRegister  single_scratch,
Label *  not_int32 
)
static
static void LoadOperands ( MacroAssembler masm,
FloatingPointHelper::Destination  destination,
Register  heap_number_map,
Register  scratch1,
Register  scratch2,
Label *  not_number 
)
static
static void LoadOperands ( MacroAssembler masm,
FloatingPointHelper::Destination  destination,
Register  heap_number_map,
Register  scratch1,
Register  scratch2,
Label *  not_number 
)
static
static void LoadSmis ( MacroAssembler masm,
Destination  destination,
Register  scratch1,
Register  scratch2 
)
static
static void LoadSmis ( MacroAssembler masm,
Destination  destination,
Register  scratch1,
Register  scratch2 
)
static

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