|
| MacroAssembler (Isolate *isolate, void *buffer, int size) |
|
void | Jump (Register target, Condition cond=al) |
|
void | Jump (Address target, RelocInfo::Mode rmode, Condition cond=al) |
|
void | Jump (Handle< Code > code, RelocInfo::Mode rmode, Condition cond=al) |
|
void | Call (Register target, Condition cond=al) |
|
int | CallSize (Address target, RelocInfo::Mode rmode, Condition cond=al) |
|
void | Call (Address target, RelocInfo::Mode rmode, Condition cond=al, TargetAddressStorageMode mode=CAN_INLINE_TARGET_ADDRESS) |
|
int | CallSize (Handle< Code > code, RelocInfo::Mode rmode=RelocInfo::CODE_TARGET, TypeFeedbackId ast_id=TypeFeedbackId::None(), Condition cond=al) |
|
void | Call (Handle< Code > code, RelocInfo::Mode rmode=RelocInfo::CODE_TARGET, TypeFeedbackId ast_id=TypeFeedbackId::None(), Condition cond=al, TargetAddressStorageMode mode=CAN_INLINE_TARGET_ADDRESS) |
|
void | Ret (Condition cond=al) |
|
void | Drop (int count, Condition cond=al) |
|
void | Ret (int drop, Condition cond=al) |
|
void | Swap (Register reg1, Register reg2, Register scratch=no_reg, Condition cond=al) |
|
void | And (Register dst, Register src1, const Operand &src2, Condition cond=al) |
|
void | Ubfx (Register dst, Register src, int lsb, int width, Condition cond=al) |
|
void | Sbfx (Register dst, Register src, int lsb, int width, Condition cond=al) |
|
void | Bfi (Register dst, Register src, Register scratch, int lsb, int width, Condition cond=al) |
|
void | Bfc (Register dst, Register src, int lsb, int width, Condition cond=al) |
|
void | Usat (Register dst, int satpos, const Operand &src, Condition cond=al) |
|
void | Call (Label *target) |
|
void | Push (Register src) |
|
void | Pop (Register dst) |
|
void | Move (Register dst, Handle< Object > value) |
|
void | Move (Register dst, Register src, Condition cond=al) |
|
void | Move (DwVfpRegister dst, DwVfpRegister src) |
|
void | Load (Register dst, const MemOperand &src, Representation r) |
|
void | Store (Register src, const MemOperand &dst, Representation r) |
|
void | LoadRoot (Register destination, Heap::RootListIndex index, Condition cond=al) |
|
void | StoreRoot (Register source, Heap::RootListIndex index, Condition cond=al) |
|
void | IncrementalMarkingRecordWriteHelper (Register object, Register value, Register address) |
|
void | RememberedSetHelper (Register object, Register addr, Register scratch, SaveFPRegsMode save_fp, RememberedSetFinalAction and_then) |
|
void | CheckPageFlag (Register object, Register scratch, int mask, Condition cc, Label *condition_met) |
|
void | CheckMapDeprecated (Handle< Map > map, Register scratch, Label *if_deprecated) |
|
void | JumpIfNotInNewSpace (Register object, Register scratch, Label *branch) |
|
void | JumpIfInNewSpace (Register object, Register scratch, Label *branch) |
|
void | HasColor (Register object, Register scratch0, Register scratch1, Label *has_color, int first_bit, int second_bit) |
|
void | JumpIfBlack (Register object, Register scratch0, Register scratch1, Label *on_black) |
|
void | EnsureNotWhite (Register object, Register scratch1, Register scratch2, Register scratch3, Label *object_is_white_and_not_data) |
|
void | JumpIfDataObject (Register value, Register scratch, Label *not_data_object) |
|
void | RecordWriteField (Register object, int offset, Register value, Register scratch, LinkRegisterStatus lr_status, SaveFPRegsMode save_fp, RememberedSetAction remembered_set_action=EMIT_REMEMBERED_SET, SmiCheck smi_check=INLINE_SMI_CHECK) |
|
void | RecordWriteContextSlot (Register context, int offset, Register value, Register scratch, LinkRegisterStatus lr_status, SaveFPRegsMode save_fp, RememberedSetAction remembered_set_action=EMIT_REMEMBERED_SET, SmiCheck smi_check=INLINE_SMI_CHECK) |
|
void | RecordWrite (Register object, Register address, Register value, LinkRegisterStatus lr_status, SaveFPRegsMode save_fp, RememberedSetAction remembered_set_action=EMIT_REMEMBERED_SET, SmiCheck smi_check=INLINE_SMI_CHECK) |
|
void | Push (Handle< Object > handle) |
|
void | Push (Smi *smi) |
|
void | Push (Register src1, Register src2, Condition cond=al) |
|
void | Push (Register src1, Register src2, Register src3, Condition cond=al) |
|
void | Push (Register src1, Register src2, Register src3, Register src4, Condition cond=al) |
|
void | Pop (Register src1, Register src2, Condition cond=al) |
|
void | Pop (Register src1, Register src2, Register src3, Condition cond=al) |
|
void | Pop (Register src1, Register src2, Register src3, Register src4, Condition cond=al) |
|
void | PushFixedFrame (Register marker_reg=no_reg) |
|
void | PopFixedFrame (Register marker_reg=no_reg) |
|
void | PushSafepointRegisters () |
|
void | PopSafepointRegisters () |
|
void | PushSafepointRegistersAndDoubles () |
|
void | PopSafepointRegistersAndDoubles () |
|
void | StoreToSafepointRegisterSlot (Register src, Register dst) |
|
void | StoreToSafepointRegistersAndDoublesSlot (Register src, Register dst) |
|
void | LoadFromSafepointRegisterSlot (Register dst, Register src) |
|
void | Ldrd (Register dst1, Register dst2, const MemOperand &src, Condition cond=al) |
|
void | Strd (Register src1, Register src2, const MemOperand &dst, Condition cond=al) |
|
void | VFPEnsureFPSCRState (Register scratch) |
|
void | VFPCanonicalizeNaN (const DwVfpRegister dst, const DwVfpRegister src, const Condition cond=al) |
|
void | VFPCanonicalizeNaN (const DwVfpRegister value, const Condition cond=al) |
|
void | VFPCompareAndSetFlags (const DwVfpRegister src1, const DwVfpRegister src2, const Condition cond=al) |
|
void | VFPCompareAndSetFlags (const DwVfpRegister src1, const double src2, const Condition cond=al) |
|
void | VFPCompareAndLoadFlags (const DwVfpRegister src1, const DwVfpRegister src2, const Register fpscr_flags, const Condition cond=al) |
|
void | VFPCompareAndLoadFlags (const DwVfpRegister src1, const double src2, const Register fpscr_flags, const Condition cond=al) |
|
void | Vmov (const DwVfpRegister dst, const double imm, const Register scratch=no_reg) |
|
void | VmovHigh (Register dst, DwVfpRegister src) |
|
void | VmovHigh (DwVfpRegister dst, Register src) |
|
void | VmovLow (Register dst, DwVfpRegister src) |
|
void | VmovLow (DwVfpRegister dst, Register src) |
|
void | LoadNumber (Register object, LowDwVfpRegister dst, Register heap_number_map, Register scratch, Label *not_number) |
|
void | LoadNumberAsInt32Double (Register object, DwVfpRegister double_dst, Register heap_number_map, Register scratch, LowDwVfpRegister double_scratch, Label *not_int32) |
|
void | LoadNumberAsInt32 (Register object, Register dst, Register heap_number_map, Register scratch, DwVfpRegister double_scratch0, LowDwVfpRegister double_scratch1, Label *not_int32) |
|
void | Prologue (PrologueFrameMode frame_mode) |
|
void | EnterExitFrame (bool save_doubles, int stack_space=0) |
|
void | LeaveExitFrame (bool save_doubles, Register argument_count, bool restore_context) |
|
void | LoadContext (Register dst, int context_chain_length) |
|
void | LoadTransitionedArrayMapConditional (ElementsKind expected_kind, ElementsKind transitioned_kind, Register map_in_out, Register scratch, Label *no_map_match) |
|
void | LoadGlobalFunction (int index, Register function) |
|
void | LoadGlobalFunctionInitialMap (Register function, Register map, Register scratch) |
|
void | InitializeRootRegister () |
|
void | InvokeCode (Register code, const ParameterCount &expected, const ParameterCount &actual, InvokeFlag flag, const CallWrapper &call_wrapper) |
|
void | InvokeFunction (Register function, const ParameterCount &actual, InvokeFlag flag, const CallWrapper &call_wrapper) |
|
void | InvokeFunction (Register function, const ParameterCount &expected, const ParameterCount &actual, InvokeFlag flag, const CallWrapper &call_wrapper) |
|
void | InvokeFunction (Handle< JSFunction > function, const ParameterCount &expected, const ParameterCount &actual, InvokeFlag flag, const CallWrapper &call_wrapper) |
|
void | IsObjectJSObjectType (Register heap_object, Register map, Register scratch, Label *fail) |
|
void | IsInstanceJSObjectType (Register map, Register scratch, Label *fail) |
|
void | IsObjectJSStringType (Register object, Register scratch, Label *fail) |
|
void | IsObjectNameType (Register object, Register scratch, Label *fail) |
|
void | PushTryHandler (StackHandler::Kind kind, int handler_index) |
|
void | PopTryHandler () |
|
void | Throw (Register value) |
|
void | ThrowUncatchable (Register value) |
|
void | Throw (BailoutReason reason) |
|
void | ThrowIf (Condition cc, BailoutReason reason) |
|
void | CheckAccessGlobalProxy (Register holder_reg, Register scratch, Label *miss) |
|
void | GetNumberHash (Register t0, Register scratch) |
|
void | LoadFromNumberDictionary (Label *miss, Register elements, Register key, Register result, Register t0, Register t1, Register t2) |
|
void | MarkCode (NopMarkerTypes type) |
|
void | Allocate (int object_size, Register result, Register scratch1, Register scratch2, Label *gc_required, AllocationFlags flags) |
|
void | Allocate (Register object_size, Register result, Register scratch1, Register scratch2, Label *gc_required, AllocationFlags flags) |
|
void | UndoAllocationInNewSpace (Register object, Register scratch) |
|
void | AllocateTwoByteString (Register result, Register length, Register scratch1, Register scratch2, Register scratch3, Label *gc_required) |
|
void | AllocateAsciiString (Register result, Register length, Register scratch1, Register scratch2, Register scratch3, Label *gc_required) |
|
void | AllocateTwoByteConsString (Register result, Register length, Register scratch1, Register scratch2, Label *gc_required) |
|
void | AllocateAsciiConsString (Register result, Register length, Register scratch1, Register scratch2, Label *gc_required) |
|
void | AllocateTwoByteSlicedString (Register result, Register length, Register scratch1, Register scratch2, Label *gc_required) |
|
void | AllocateAsciiSlicedString (Register result, Register length, Register scratch1, Register scratch2, Label *gc_required) |
|
void | AllocateHeapNumber (Register result, Register scratch1, Register scratch2, Register heap_number_map, Label *gc_required, TaggingMode tagging_mode=TAG_RESULT) |
|
void | AllocateHeapNumberWithValue (Register result, DwVfpRegister value, Register scratch1, Register scratch2, Register heap_number_map, Label *gc_required) |
|
void | CopyFields (Register dst, Register src, LowDwVfpRegister double_scratch, int field_count) |
|
void | CopyBytes (Register src, Register dst, Register length, Register scratch) |
|
void | InitializeFieldsWithFiller (Register start_offset, Register end_offset, Register filler) |
|
void | TryGetFunctionPrototype (Register function, Register result, Register scratch, Label *miss, bool miss_on_bound_function=false) |
|
void | CompareObjectType (Register heap_object, Register map, Register type_reg, InstanceType type) |
|
void | CheckObjectTypeRange (Register heap_object, Register map, InstanceType min_type, InstanceType max_type, Label *false_label) |
|
void | CompareInstanceType (Register map, Register type_reg, InstanceType type) |
|
void | CheckFastElements (Register map, Register scratch, Label *fail) |
|
void | CheckFastObjectElements (Register map, Register scratch, Label *fail) |
|
void | CheckFastSmiElements (Register map, Register scratch, Label *fail) |
|
void | StoreNumberToDoubleElements (Register value_reg, Register key_reg, Register elements_reg, Register scratch1, LowDwVfpRegister double_scratch, Label *fail, int elements_offset=0) |
|
void | CompareMap (Register obj, Register scratch, Handle< Map > map, Label *early_success) |
|
void | CompareMap (Register obj_map, Handle< Map > map, Label *early_success) |
|
void | CheckMap (Register obj, Register scratch, Handle< Map > map, Label *fail, SmiCheckType smi_check_type) |
|
void | CheckMap (Register obj, Register scratch, Heap::RootListIndex index, Label *fail, SmiCheckType smi_check_type) |
|
void | DispatchMap (Register obj, Register scratch, Handle< Map > map, Handle< Code > success, SmiCheckType smi_check_type) |
|
void | CompareRoot (Register obj, Heap::RootListIndex index) |
|
Condition | IsObjectStringType (Register obj, Register type, Condition cond=al) |
|
void | IllegalOperation (int num_arguments) |
|
void | IndexFromHash (Register hash, Register index) |
|
void | GetLeastBitsFromSmi (Register dst, Register src, int num_least_bits) |
|
void | GetLeastBitsFromInt32 (Register dst, Register src, int mun_least_bits) |
|
void | SmiToDouble (LowDwVfpRegister value, Register smi) |
|
void | TestDoubleIsInt32 (DwVfpRegister double_input, LowDwVfpRegister double_scratch) |
|
void | TryDoubleToInt32Exact (Register result, DwVfpRegister double_input, LowDwVfpRegister double_scratch) |
|
void | TryInt32Floor (Register result, DwVfpRegister double_input, Register input_high, LowDwVfpRegister double_scratch, Label *done, Label *exact) |
|
void | TryInlineTruncateDoubleToI (Register result, DwVfpRegister input, Label *done) |
|
void | TruncateDoubleToI (Register result, DwVfpRegister double_input) |
|
void | TruncateHeapNumberToI (Register result, Register object) |
|
void | TruncateNumberToI (Register object, Register result, Register heap_number_map, Register scratch1, Label *not_int32) |
|
void | CheckFor32DRegs (Register scratch) |
|
void | SaveFPRegs (Register location, Register scratch) |
|
void | RestoreFPRegs (Register location, Register scratch) |
|
void | CallStub (CodeStub *stub, TypeFeedbackId ast_id=TypeFeedbackId::None(), Condition cond=al) |
|
void | TailCallStub (CodeStub *stub, Condition cond=al) |
|
void | CallRuntime (const Runtime::Function *f, int num_arguments, SaveFPRegsMode save_doubles=kDontSaveFPRegs) |
|
void | CallRuntimeSaveDoubles (Runtime::FunctionId id) |
|
void | CallRuntime (Runtime::FunctionId id, int num_arguments, SaveFPRegsMode save_doubles=kDontSaveFPRegs) |
|
void | CallExternalReference (const ExternalReference &ext, int num_arguments) |
|
void | TailCallExternalReference (const ExternalReference &ext, int num_arguments, int result_size) |
|
void | TailCallRuntime (Runtime::FunctionId fid, int num_arguments, int result_size) |
|
int | CalculateStackPassedWords (int num_reg_arguments, int num_double_arguments) |
|
void | PrepareCallCFunction (int num_reg_arguments, int num_double_registers, Register scratch) |
|
void | PrepareCallCFunction (int num_reg_arguments, Register scratch) |
|
void | MovToFloatParameter (DwVfpRegister src) |
|
void | MovToFloatParameters (DwVfpRegister src1, DwVfpRegister src2) |
|
void | MovToFloatResult (DwVfpRegister src) |
|
void | CallCFunction (ExternalReference function, int num_arguments) |
|
void | CallCFunction (Register function, int num_arguments) |
|
void | CallCFunction (ExternalReference function, int num_reg_arguments, int num_double_arguments) |
|
void | CallCFunction (Register function, int num_reg_arguments, int num_double_arguments) |
|
void | MovFromFloatParameter (DwVfpRegister dst) |
|
void | MovFromFloatResult (DwVfpRegister dst) |
|
void | CallApiFunctionAndReturn (Register function_address, ExternalReference thunk_ref, int stack_space, MemOperand return_value_operand, MemOperand *context_restore_operand) |
|
void | JumpToExternalReference (const ExternalReference &builtin) |
|
void | InvokeBuiltin (Builtins::JavaScript id, InvokeFlag flag, const CallWrapper &call_wrapper=NullCallWrapper()) |
|
void | GetBuiltinEntry (Register target, Builtins::JavaScript id) |
|
void | GetBuiltinFunction (Register target, Builtins::JavaScript id) |
|
Handle< Object > | CodeObject () |
|
void | TruncatingDiv (Register result, Register dividend, int32_t divisor) |
|
void | SetCounter (StatsCounter *counter, int value, Register scratch1, Register scratch2) |
|
void | IncrementCounter (StatsCounter *counter, int value, Register scratch1, Register scratch2) |
|
void | DecrementCounter (StatsCounter *counter, int value, Register scratch1, Register scratch2) |
|
void | Assert (Condition cond, BailoutReason reason) |
|
void | AssertFastElements (Register elements) |
|
void | Check (Condition cond, BailoutReason reason) |
|
void | Abort (BailoutReason msg) |
|
void | set_generating_stub (bool value) |
|
bool | generating_stub () |
|
void | set_has_frame (bool value) |
|
bool | has_frame () |
|
bool | AllowThisStubCall (CodeStub *stub) |
|
bool | use_eabi_hardfloat () |
|
void | JumpIfNotPowerOfTwoOrZero (Register reg, Register scratch, Label *not_power_of_two_or_zero) |
|
void | JumpIfNotPowerOfTwoOrZeroAndNeg (Register reg, Register scratch, Label *zero_and_neg, Label *not_power_of_two) |
|
void | SmiTag (Register reg, SBit s=LeaveCC) |
|
void | SmiTag (Register dst, Register src, SBit s=LeaveCC) |
|
void | TrySmiTag (Register reg, Label *not_a_smi) |
|
void | TrySmiTag (Register reg, Register src, Label *not_a_smi) |
|
void | SmiUntag (Register reg, SBit s=LeaveCC) |
|
void | SmiUntag (Register dst, Register src, SBit s=LeaveCC) |
|
void | UntagAndJumpIfSmi (Register dst, Register src, Label *smi_case) |
|
void | UntagAndJumpIfNotSmi (Register dst, Register src, Label *non_smi_case) |
|
void | SmiTst (Register value) |
|
void | NonNegativeSmiTst (Register value) |
|
void | JumpIfSmi (Register value, Label *smi_label) |
|
void | JumpIfNotSmi (Register value, Label *not_smi_label) |
|
void | JumpIfNotBothSmi (Register reg1, Register reg2, Label *on_not_both_smi) |
|
void | JumpIfEitherSmi (Register reg1, Register reg2, Label *on_either_smi) |
|
void | AssertNotSmi (Register object) |
|
void | AssertSmi (Register object) |
|
void | AssertString (Register object) |
|
void | AssertName (Register object) |
|
void | AssertUndefinedOrAllocationSite (Register object, Register scratch) |
|
void | AssertIsRoot (Register reg, Heap::RootListIndex index) |
|
void | JumpIfNotHeapNumber (Register object, Register heap_number_map, Register scratch, Label *on_not_heap_number) |
|
void | LookupNumberStringCache (Register object, Register result, Register scratch1, Register scratch2, Register scratch3, Label *not_found) |
|
void | JumpIfNonSmisNotBothSequentialAsciiStrings (Register object1, Register object2, Register scratch1, Register scratch2, Label *failure) |
|
void | JumpIfNotBothSequentialAsciiStrings (Register first, Register second, Register scratch1, Register scratch2, Label *not_flat_ascii_strings) |
|
void | JumpIfBothInstanceTypesAreNotSequentialAscii (Register first_object_instance_type, Register second_object_instance_type, Register scratch1, Register scratch2, Label *failure) |
|
void | JumpIfInstanceTypeIsNotSequentialAscii (Register type, Register scratch, Label *failure) |
|
void | JumpIfNotUniqueName (Register reg, Label *not_unique_name) |
|
void | EmitSeqStringSetCharCheck (Register string, Register index, Register value, uint32_t encoding_mask) |
|
void | GetRelocatedValueLocation (Register ldr_location, Register result) |
|
void | ClampUint8 (Register output_reg, Register input_reg) |
|
void | ClampDoubleToUint8 (Register result_reg, DwVfpRegister input_reg, LowDwVfpRegister double_scratch) |
|
void | LoadInstanceDescriptors (Register map, Register descriptors) |
|
void | EnumLength (Register dst, Register map) |
|
void | NumberOfOwnDescriptors (Register dst, Register map) |
|
template<typename Field > |
void | DecodeField (Register reg) |
|
void | EnterFrame (StackFrame::Type type, bool load_constant_pool=false) |
|
int | LeaveFrame (StackFrame::Type type) |
|
void | CheckEnumCache (Register null_value, Label *call_runtime) |
|
void | TestJSArrayForAllocationMemento (Register receiver_reg, Register scratch_reg, Label *no_memento_found) |
|
void | JumpIfJSArrayHasAllocationMemento (Register receiver_reg, Register scratch_reg, Label *memento_found) |
|
void | JumpIfDictionaryInPrototypeChain (Register object, Register scratch0, Register scratch1, Label *found) |
|
| MacroAssembler (Isolate *isolate, byte *buffer, unsigned buffer_size) |
|
Handle< Object > | CodeObject () |
|
void | And (const Register &rd, const Register &rn, const Operand &operand) |
|
void | Ands (const Register &rd, const Register &rn, const Operand &operand) |
|
void | Bic (const Register &rd, const Register &rn, const Operand &operand) |
|
void | Bics (const Register &rd, const Register &rn, const Operand &operand) |
|
void | Orr (const Register &rd, const Register &rn, const Operand &operand) |
|
void | Orn (const Register &rd, const Register &rn, const Operand &operand) |
|
void | Eor (const Register &rd, const Register &rn, const Operand &operand) |
|
void | Eon (const Register &rd, const Register &rn, const Operand &operand) |
|
void | Tst (const Register &rn, const Operand &operand) |
|
void | LogicalMacro (const Register &rd, const Register &rn, const Operand &operand, LogicalOp op) |
|
void | Add (const Register &rd, const Register &rn, const Operand &operand) |
|
void | Adds (const Register &rd, const Register &rn, const Operand &operand) |
|
void | Sub (const Register &rd, const Register &rn, const Operand &operand) |
|
void | Subs (const Register &rd, const Register &rn, const Operand &operand) |
|
void | Cmn (const Register &rn, const Operand &operand) |
|
void | Cmp (const Register &rn, const Operand &operand) |
|
void | Neg (const Register &rd, const Operand &operand) |
|
void | Negs (const Register &rd, const Operand &operand) |
|
void | AddSubMacro (const Register &rd, const Register &rn, const Operand &operand, FlagsUpdate S, AddSubOp op) |
|
void | Adc (const Register &rd, const Register &rn, const Operand &operand) |
|
void | Adcs (const Register &rd, const Register &rn, const Operand &operand) |
|
void | Sbc (const Register &rd, const Register &rn, const Operand &operand) |
|
void | Sbcs (const Register &rd, const Register &rn, const Operand &operand) |
|
void | Ngc (const Register &rd, const Operand &operand) |
|
void | Ngcs (const Register &rd, const Operand &operand) |
|
void | AddSubWithCarryMacro (const Register &rd, const Register &rn, const Operand &operand, FlagsUpdate S, AddSubWithCarryOp op) |
|
void | Mov (const Register &rd, const Operand &operand, DiscardMoveMode discard_mode=kDontDiscardForSameWReg) |
|
void | Mov (const Register &rd, uint64_t imm) |
|
void | Mvn (const Register &rd, uint64_t imm) |
|
void | Mvn (const Register &rd, const Operand &operand) |
|
void | Ccmp (const Register &rn, const Operand &operand, StatusFlags nzcv, Condition cond) |
|
void | Ccmn (const Register &rn, const Operand &operand, StatusFlags nzcv, Condition cond) |
|
void | ConditionalCompareMacro (const Register &rn, const Operand &operand, StatusFlags nzcv, Condition cond, ConditionalCompareOp op) |
|
void | Csel (const Register &rd, const Register &rn, const Operand &operand, Condition cond) |
|
void | LoadStoreMacro (const CPURegister &rt, const MemOperand &addr, LoadStoreOp op) |
|
void | Load (const Register &rt, const MemOperand &addr, Representation r) |
|
void | Store (const Register &rt, const MemOperand &addr, Representation r) |
|
void | Adr (const Register &rd, Label *label) |
|
void | Asr (const Register &rd, const Register &rn, unsigned shift) |
|
void | Asr (const Register &rd, const Register &rn, const Register &rm) |
|
| STATIC_ASSERT ((reg_zero==(reg_not_zero^1))&&(reg_bit_clear==(reg_bit_set^1))&&(always==(never^1))) |
|
void | B (Label *label, BranchType type, Register reg=NoReg, int bit=-1) |
|
void | B (Label *label) |
|
void | B (Condition cond, Label *label) |
|
void | B (Label *label, Condition cond) |
|
void | Bfi (const Register &rd, const Register &rn, unsigned lsb, unsigned width) |
|
void | Bfxil (const Register &rd, const Register &rn, unsigned lsb, unsigned width) |
|
void | Bind (Label *label) |
|
void | Bl (Label *label) |
|
void | Blr (const Register &xn) |
|
void | Br (const Register &xn) |
|
void | Brk (int code) |
|
void | Cbnz (const Register &rt, Label *label) |
|
void | Cbz (const Register &rt, Label *label) |
|
void | Cinc (const Register &rd, const Register &rn, Condition cond) |
|
void | Cinv (const Register &rd, const Register &rn, Condition cond) |
|
void | Cls (const Register &rd, const Register &rn) |
|
void | Clz (const Register &rd, const Register &rn) |
|
void | Cneg (const Register &rd, const Register &rn, Condition cond) |
|
void | CzeroX (const Register &rd, Condition cond) |
|
void | CmovX (const Register &rd, const Register &rn, Condition cond) |
|
void | Cset (const Register &rd, Condition cond) |
|
void | Csetm (const Register &rd, Condition cond) |
|
void | Csinc (const Register &rd, const Register &rn, const Register &rm, Condition cond) |
|
void | Csinv (const Register &rd, const Register &rn, const Register &rm, Condition cond) |
|
void | Csneg (const Register &rd, const Register &rn, const Register &rm, Condition cond) |
|
void | Dmb (BarrierDomain domain, BarrierType type) |
|
void | Dsb (BarrierDomain domain, BarrierType type) |
|
void | Debug (const char *message, uint32_t code, Instr params=BREAK) |
|
void | Extr (const Register &rd, const Register &rn, const Register &rm, unsigned lsb) |
|
void | Fabs (const FPRegister &fd, const FPRegister &fn) |
|
void | Fadd (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm) |
|
void | Fccmp (const FPRegister &fn, const FPRegister &fm, StatusFlags nzcv, Condition cond) |
|
void | Fcmp (const FPRegister &fn, const FPRegister &fm) |
|
void | Fcmp (const FPRegister &fn, double value) |
|
void | Fcsel (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm, Condition cond) |
|
void | Fcvt (const FPRegister &fd, const FPRegister &fn) |
|
void | Fcvtas (const Register &rd, const FPRegister &fn) |
|
void | Fcvtau (const Register &rd, const FPRegister &fn) |
|
void | Fcvtms (const Register &rd, const FPRegister &fn) |
|
void | Fcvtmu (const Register &rd, const FPRegister &fn) |
|
void | Fcvtns (const Register &rd, const FPRegister &fn) |
|
void | Fcvtnu (const Register &rd, const FPRegister &fn) |
|
void | Fcvtzs (const Register &rd, const FPRegister &fn) |
|
void | Fcvtzu (const Register &rd, const FPRegister &fn) |
|
void | Fdiv (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm) |
|
void | Fmadd (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm, const FPRegister &fa) |
|
void | Fmax (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm) |
|
void | Fmaxnm (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm) |
|
void | Fmin (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm) |
|
void | Fminnm (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm) |
|
void | Fmov (FPRegister fd, FPRegister fn) |
|
void | Fmov (FPRegister fd, Register rn) |
|
void | Fmov (FPRegister fd, double imm) |
|
void | Fmov (FPRegister fd, float imm) |
|
template<typename T > |
void | Fmov (FPRegister fd, T imm) |
|
void | Fmov (Register rd, FPRegister fn) |
|
void | Fmsub (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm, const FPRegister &fa) |
|
void | Fmul (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm) |
|
void | Fneg (const FPRegister &fd, const FPRegister &fn) |
|
void | Fnmadd (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm, const FPRegister &fa) |
|
void | Fnmsub (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm, const FPRegister &fa) |
|
void | Frinta (const FPRegister &fd, const FPRegister &fn) |
|
void | Frintn (const FPRegister &fd, const FPRegister &fn) |
|
void | Frintz (const FPRegister &fd, const FPRegister &fn) |
|
void | Fsqrt (const FPRegister &fd, const FPRegister &fn) |
|
void | Fsub (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm) |
|
void | Hint (SystemHint code) |
|
void | Hlt (int code) |
|
void | Isb () |
|
void | Ldnp (const CPURegister &rt, const CPURegister &rt2, const MemOperand &src) |
|
void | Ldp (const CPURegister &rt, const CPURegister &rt2, const MemOperand &src) |
|
void | Ldpsw (const Register &rt, const Register &rt2, const MemOperand &src) |
|
void | Ldr (const FPRegister &ft, double imm) |
|
void | Ldr (const FPRegister &ft, float imm) |
|
void | Ldr (const Register &rt, uint64_t imm) |
|
void | Lsl (const Register &rd, const Register &rn, unsigned shift) |
|
void | Lsl (const Register &rd, const Register &rn, const Register &rm) |
|
void | Lsr (const Register &rd, const Register &rn, unsigned shift) |
|
void | Lsr (const Register &rd, const Register &rn, const Register &rm) |
|
void | Madd (const Register &rd, const Register &rn, const Register &rm, const Register &ra) |
|
void | Mneg (const Register &rd, const Register &rn, const Register &rm) |
|
void | Mov (const Register &rd, const Register &rm) |
|
void | Movk (const Register &rd, uint64_t imm, int shift=-1) |
|
void | Mrs (const Register &rt, SystemRegister sysreg) |
|
void | Msr (SystemRegister sysreg, const Register &rt) |
|
void | Msub (const Register &rd, const Register &rn, const Register &rm, const Register &ra) |
|
void | Mul (const Register &rd, const Register &rn, const Register &rm) |
|
void | Nop () |
|
void | Rbit (const Register &rd, const Register &rn) |
|
void | Ret (const Register &xn=lr) |
|
void | Rev (const Register &rd, const Register &rn) |
|
void | Rev16 (const Register &rd, const Register &rn) |
|
void | Rev32 (const Register &rd, const Register &rn) |
|
void | Ror (const Register &rd, const Register &rs, unsigned shift) |
|
void | Ror (const Register &rd, const Register &rn, const Register &rm) |
|
void | Sbfiz (const Register &rd, const Register &rn, unsigned lsb, unsigned width) |
|
void | Sbfx (const Register &rd, const Register &rn, unsigned lsb, unsigned width) |
|
void | Scvtf (const FPRegister &fd, const Register &rn, unsigned fbits=0) |
|
void | Sdiv (const Register &rd, const Register &rn, const Register &rm) |
|
void | Smaddl (const Register &rd, const Register &rn, const Register &rm, const Register &ra) |
|
void | Smsubl (const Register &rd, const Register &rn, const Register &rm, const Register &ra) |
|
void | Smull (const Register &rd, const Register &rn, const Register &rm) |
|
void | Smulh (const Register &rd, const Register &rn, const Register &rm) |
|
void | Stnp (const CPURegister &rt, const CPURegister &rt2, const MemOperand &dst) |
|
void | Stp (const CPURegister &rt, const CPURegister &rt2, const MemOperand &dst) |
|
void | Sxtb (const Register &rd, const Register &rn) |
|
void | Sxth (const Register &rd, const Register &rn) |
|
void | Sxtw (const Register &rd, const Register &rn) |
|
void | Tbnz (const Register &rt, unsigned bit_pos, Label *label) |
|
void | Tbz (const Register &rt, unsigned bit_pos, Label *label) |
|
void | Ubfiz (const Register &rd, const Register &rn, unsigned lsb, unsigned width) |
|
void | Ubfx (const Register &rd, const Register &rn, unsigned lsb, unsigned width) |
|
void | Ucvtf (const FPRegister &fd, const Register &rn, unsigned fbits=0) |
|
void | Udiv (const Register &rd, const Register &rn, const Register &rm) |
|
void | Umaddl (const Register &rd, const Register &rn, const Register &rm, const Register &ra) |
|
void | Umsubl (const Register &rd, const Register &rn, const Register &rm, const Register &ra) |
|
void | Uxtb (const Register &rd, const Register &rn) |
|
void | Uxth (const Register &rd, const Register &rn) |
|
void | Uxtw (const Register &rd, const Register &rn) |
|
void | Abs (const Register &rd, const Register &rm, Label *is_not_representable=NULL, Label *is_representable=NULL) |
|
void | Push (const CPURegister &src0, const CPURegister &src1=NoReg, const CPURegister &src2=NoReg, const CPURegister &src3=NoReg) |
|
void | Push (const CPURegister &src0, const CPURegister &src1, const CPURegister &src2, const CPURegister &src3, const CPURegister &src4, const CPURegister &src5=NoReg, const CPURegister &src6=NoReg, const CPURegister &src7=NoReg) |
|
void | Pop (const CPURegister &dst0, const CPURegister &dst1=NoReg, const CPURegister &dst2=NoReg, const CPURegister &dst3=NoReg) |
|
void | PushCPURegList (CPURegList registers) |
|
void | PopCPURegList (CPURegList registers) |
|
void | PushSizeRegList (RegList registers, unsigned reg_size, CPURegister::RegisterType type=CPURegister::kRegister) |
|
void | PopSizeRegList (RegList registers, unsigned reg_size, CPURegister::RegisterType type=CPURegister::kRegister) |
|
void | PushXRegList (RegList regs) |
|
void | PopXRegList (RegList regs) |
|
void | PushWRegList (RegList regs) |
|
void | PopWRegList (RegList regs) |
|
void | PushDRegList (RegList regs) |
|
void | PopDRegList (RegList regs) |
|
void | PushSRegList (RegList regs) |
|
void | PopSRegList (RegList regs) |
|
void | PushMultipleTimes (CPURegister src, Register count) |
|
void | PushMultipleTimes (CPURegister src, int count) |
|
void | Push (Handle< Object > handle) |
|
void | Push (Smi *smi) |
|
void | push (Register src) |
|
void | pop (Register dst) |
|
void | Poke (const CPURegister &src, const Operand &offset) |
|
void | Peek (const CPURegister &dst, const Operand &offset) |
|
void | PokePair (const CPURegister &src1, const CPURegister &src2, int offset) |
|
void | PeekPair (const CPURegister &dst1, const CPURegister &dst2, int offset) |
|
void | Claim (uint64_t count, uint64_t unit_size=kXRegSize) |
|
void | Claim (const Register &count, uint64_t unit_size=kXRegSize) |
|
void | Drop (uint64_t count, uint64_t unit_size=kXRegSize) |
|
void | Drop (const Register &count, uint64_t unit_size=kXRegSize) |
|
void | ClaimBySMI (const Register &count_smi, uint64_t unit_size=kXRegSize) |
|
void | DropBySMI (const Register &count_smi, uint64_t unit_size=kXRegSize) |
|
void | CompareAndBranch (const Register &lhs, const Operand &rhs, Condition cond, Label *label) |
|
void | TestAndBranchIfAnySet (const Register ®, const uint64_t bit_pattern, Label *label) |
|
void | TestAndBranchIfAllClear (const Register ®, const uint64_t bit_pattern, Label *label) |
|
void | InlineData (uint64_t data) |
|
void | EnableInstrumentation () |
|
void | DisableInstrumentation () |
|
void | AnnotateInstrumentation (const char *marker_name) |
|
void | AssertStackConsistency () |
|
void | PushCalleeSavedRegisters () |
|
void | PopCalleeSavedRegisters () |
|
void | SetStackPointer (const Register &stack_pointer) |
|
const Register & | StackPointer () const |
|
void | AlignAndSetCSPForFrame () |
|
void | BumpSystemStackPointer (const Operand &space) |
|
void | InitializeRootRegister () |
|
void | LoadRoot (Register destination, Heap::RootListIndex index) |
|
void | StoreRoot (Register source, Heap::RootListIndex index) |
|
void | LoadTrueFalseRoots (Register true_root, Register false_root) |
|
void | LoadHeapObject (Register dst, Handle< HeapObject > object) |
|
void | LoadObject (Register result, Handle< Object > object) |
|
void | Move (Register dst, Register src) |
|
void | LoadInstanceDescriptors (Register map, Register descriptors) |
|
void | EnumLengthUntagged (Register dst, Register map) |
|
void | EnumLengthSmi (Register dst, Register map) |
|
void | NumberOfOwnDescriptors (Register dst, Register map) |
|
template<typename Field > |
void | DecodeField (Register reg) |
|
void | SmiTag (Register dst, Register src) |
|
void | SmiTag (Register smi) |
|
void | SmiUntag (Register dst, Register src) |
|
void | SmiUntag (Register smi) |
|
void | SmiUntagToDouble (FPRegister dst, Register src, UntagMode mode=kNotSpeculativeUntag) |
|
void | SmiUntagToFloat (FPRegister dst, Register src, UntagMode mode=kNotSpeculativeUntag) |
|
void | SmiAbs (const Register &smi, Label *slow) |
|
void | JumpIfSmi (Register value, Label *smi_label, Label *not_smi_label=NULL) |
|
void | JumpIfNotSmi (Register value, Label *not_smi_label) |
|
void | JumpIfBothSmi (Register value1, Register value2, Label *both_smi_label, Label *not_smi_label=NULL) |
|
void | JumpIfEitherSmi (Register value1, Register value2, Label *either_smi_label, Label *not_smi_label=NULL) |
|
void | JumpIfEitherNotSmi (Register value1, Register value2, Label *not_smi_label) |
|
void | JumpIfBothNotSmi (Register value1, Register value2, Label *not_smi_label) |
|
void | AssertNotSmi (Register object, BailoutReason reason=kOperandIsASmi) |
|
void | AssertSmi (Register object, BailoutReason reason=kOperandIsNotASmi) |
|
void | AssertName (Register object) |
|
void | AssertUndefinedOrAllocationSite (Register object, Register scratch) |
|
void | AssertString (Register object) |
|
void | JumpForHeapNumber (Register object, Register heap_number_map, Label *on_heap_number, Label *on_not_heap_number=NULL) |
|
void | JumpIfHeapNumber (Register object, Label *on_heap_number, Register heap_number_map=NoReg) |
|
void | JumpIfNotHeapNumber (Register object, Label *on_not_heap_number, Register heap_number_map=NoReg) |
|
void | TestForMinusZero (DoubleRegister input) |
|
void | JumpIfMinusZero (DoubleRegister input, Label *on_negative_zero) |
|
void | LookupNumberStringCache (Register object, Register result, Register scratch1, Register scratch2, Register scratch3, Label *not_found) |
|
void | ClampInt32ToUint8 (Register in_out) |
|
void | ClampInt32ToUint8 (Register output, Register input) |
|
void | ClampDoubleToUint8 (Register output, DoubleRegister input, DoubleRegister dbl_scratch) |
|
void | TryConvertDoubleToInt32 (Register as_int, FPRegister value, FPRegister scratch_d, Label *on_successful_conversion=NULL, Label *on_failed_conversion=NULL) |
|
void | TryConvertDoubleToInt64 (Register as_int, FPRegister value, FPRegister scratch_d, Label *on_successful_conversion=NULL, Label *on_failed_conversion=NULL) |
|
void | CopyFields (Register dst, Register src, CPURegList temps, unsigned count) |
|
void | FillFields (Register dst, Register field_count, Register filler) |
|
void | CopyBytes (Register dst, Register src, Register length, Register scratch, CopyHint hint=kCopyUnknown) |
|
void | JumpIfEitherIsNotSequentialAsciiStrings (Register first, Register second, Register scratch1, Register scratch2, Label *failure, SmiCheckType smi_check=DO_SMI_CHECK) |
|
void | JumpIfInstanceTypeIsNotSequentialAscii (Register type, Register scratch, Label *failure) |
|
void | JumpIfEitherInstanceTypeIsNotSequentialAscii (Register first_object_instance_type, Register second_object_instance_type, Register scratch1, Register scratch2, Label *failure) |
|
void | JumpIfBothInstanceTypesAreNotSequentialAscii (Register first_object_instance_type, Register second_object_instance_type, Register scratch1, Register scratch2, Label *failure) |
|
void | JumpIfNotUniqueName (Register type, Label *not_unique_name) |
|
void | jmp (Label *L) |
|
void | Throw (Register value, Register scratch1, Register scratch2, Register scratch3, Register scratch4) |
|
void | ThrowUncatchable (Register value, Register scratch1, Register scratch2, Register scratch3, Register scratch4) |
|
void | Throw (BailoutReason reason) |
|
void | ThrowIf (Condition cc, BailoutReason reason) |
|
void | ThrowIfSmi (const Register &value, BailoutReason reason) |
|
void | CallStub (CodeStub *stub, TypeFeedbackId ast_id=TypeFeedbackId::None()) |
|
void | TailCallStub (CodeStub *stub) |
|
void | CallRuntime (const Runtime::Function *f, int num_arguments, SaveFPRegsMode save_doubles=kDontSaveFPRegs) |
|
void | CallRuntime (Runtime::FunctionId id, int num_arguments, SaveFPRegsMode save_doubles=kDontSaveFPRegs) |
|
void | CallRuntimeSaveDoubles (Runtime::FunctionId id) |
|
void | TailCallRuntime (Runtime::FunctionId fid, int num_arguments, int result_size) |
|
int | ActivationFrameAlignment () |
|
void | CallCFunction (ExternalReference function, int num_reg_arguments) |
|
void | CallCFunction (ExternalReference function, int num_reg_arguments, int num_double_arguments) |
|
void | CallCFunction (Register function, int num_reg_arguments, int num_double_arguments) |
|
void | CallApiFunctionAndReturn (Register function_address, ExternalReference thunk_ref, int stack_space, int spill_offset, MemOperand return_value_operand, MemOperand *context_restore_operand) |
|
void | JumpToExternalReference (const ExternalReference &builtin) |
|
void | TailCallExternalReference (const ExternalReference &ext, int num_arguments, int result_size) |
|
void | CallExternalReference (const ExternalReference &ext, int num_arguments) |
|
void | InvokeBuiltin (Builtins::JavaScript id, InvokeFlag flag, const CallWrapper &call_wrapper=NullCallWrapper()) |
|
void | GetBuiltinEntry (Register target, Register function, Builtins::JavaScript id) |
|
void | GetBuiltinFunction (Register target, Builtins::JavaScript id) |
|
void | Jump (Register target) |
|
void | Jump (Address target, RelocInfo::Mode rmode) |
|
void | Jump (Handle< Code > code, RelocInfo::Mode rmode) |
|
void | Jump (intptr_t target, RelocInfo::Mode rmode) |
|
void | Call (Register target) |
|
void | Call (Label *target) |
|
void | Call (Address target, RelocInfo::Mode rmode) |
|
void | Call (Handle< Code > code, RelocInfo::Mode rmode=RelocInfo::CODE_TARGET, TypeFeedbackId ast_id=TypeFeedbackId::None()) |
|
void | InvokePrologue (const ParameterCount &expected, const ParameterCount &actual, Handle< Code > code_constant, Register code_reg, Label *done, InvokeFlag flag, bool *definitely_mismatches, const CallWrapper &call_wrapper) |
|
void | InvokeCode (Register code, const ParameterCount &expected, const ParameterCount &actual, InvokeFlag flag, const CallWrapper &call_wrapper) |
|
void | InvokeFunction (Register function, const ParameterCount &actual, InvokeFlag flag, const CallWrapper &call_wrapper) |
|
void | InvokeFunction (Register function, const ParameterCount &expected, const ParameterCount &actual, InvokeFlag flag, const CallWrapper &call_wrapper) |
|
void | InvokeFunction (Handle< JSFunction > function, const ParameterCount &expected, const ParameterCount &actual, InvokeFlag flag, const CallWrapper &call_wrapper) |
|
void | TryConvertDoubleToInt64 (Register result, DoubleRegister input, Label *done) |
|
void | TruncateDoubleToI (Register result, DoubleRegister double_input) |
|
void | TruncateHeapNumberToI (Register result, Register object) |
|
void | TruncateNumberToI (Register object, Register result, Register heap_number_map, Label *not_int32) |
|
void | set_generating_stub (bool value) |
|
bool | generating_stub () const |
|
bool | use_real_aborts () const |
|
void | set_has_frame (bool value) |
|
bool | has_frame () const |
|
bool | AllowThisStubCall (CodeStub *stub) |
|
void | PushTryHandler (StackHandler::Kind kind, int handler_index) |
|
void | PopTryHandler () |
|
void | Allocate (Register object_size, Register result, Register scratch1, Register scratch2, Label *gc_required, AllocationFlags flags) |
|
void | Allocate (int object_size, Register result, Register scratch1, Register scratch2, Label *gc_required, AllocationFlags flags) |
|
void | UndoAllocationInNewSpace (Register object, Register scratch) |
|
void | AllocateTwoByteString (Register result, Register length, Register scratch1, Register scratch2, Register scratch3, Label *gc_required) |
|
void | AllocateAsciiString (Register result, Register length, Register scratch1, Register scratch2, Register scratch3, Label *gc_required) |
|
void | AllocateTwoByteConsString (Register result, Register length, Register scratch1, Register scratch2, Label *gc_required) |
|
void | AllocateAsciiConsString (Register result, Register length, Register scratch1, Register scratch2, Label *gc_required) |
|
void | AllocateTwoByteSlicedString (Register result, Register length, Register scratch1, Register scratch2, Label *gc_required) |
|
void | AllocateAsciiSlicedString (Register result, Register length, Register scratch1, Register scratch2, Label *gc_required) |
|
void | AllocateHeapNumber (Register result, Label *gc_required, Register scratch1, Register scratch2, Register heap_number_map=NoReg) |
|
void | AllocateHeapNumberWithValue (Register result, DoubleRegister value, Label *gc_required, Register scratch1, Register scratch2, Register heap_number_map=NoReg) |
|
void | TryGetFunctionPrototype (Register function, Register result, Register scratch, Label *miss, BoundFunctionAction action=kDontMissOnBoundFunction) |
|
void | CompareObjectType (Register heap_object, Register map, Register type_reg, InstanceType type) |
|
void | JumpIfObjectType (Register object, Register map, Register type_reg, InstanceType type, Label *if_cond_pass, Condition cond=eq) |
|
void | JumpIfNotObjectType (Register object, Register map, Register type_reg, InstanceType type, Label *if_not_object) |
|
void | CompareInstanceType (Register map, Register type_reg, InstanceType type) |
|
void | CompareMap (Register obj, Register scratch, Handle< Map > map) |
|
void | CompareMap (Register obj_map, Handle< Map > map) |
|
void | CheckMap (Register obj, Register scratch, Handle< Map > map, Label *fail, SmiCheckType smi_check_type) |
|
void | CheckMap (Register obj, Register scratch, Heap::RootListIndex index, Label *fail, SmiCheckType smi_check_type) |
|
void | CheckMap (Register obj_map, Handle< Map > map, Label *fail, SmiCheckType smi_check_type) |
|
void | DispatchMap (Register obj, Register scratch, Handle< Map > map, Handle< Code > success, SmiCheckType smi_check_type) |
|
void | TestMapBitfield (Register object, uint64_t mask) |
|
void | LoadElementsKindFromMap (Register result, Register map) |
|
void | CompareRoot (const Register &obj, Heap::RootListIndex index) |
|
void | JumpIfRoot (const Register &obj, Heap::RootListIndex index, Label *if_equal) |
|
void | JumpIfNotRoot (const Register &obj, Heap::RootListIndex index, Label *if_not_equal) |
|
void | IsObjectNameType (Register object, Register type, Label *fail) |
|
void | IsObjectJSObjectType (Register heap_object, Register map, Register scratch, Label *fail) |
|
void | IsInstanceJSObjectType (Register map, Register scratch, Label *fail) |
|
void | IsObjectJSStringType (Register object, Register type, Label *not_string, Label *string=NULL) |
|
void | CompareAndSplit (const Register &lhs, const Operand &rhs, Condition cond, Label *if_true, Label *if_false, Label *fall_through) |
|
void | TestAndSplit (const Register ®, uint64_t bit_pattern, Label *if_all_clear, Label *if_any_set, Label *fall_through) |
|
void | CheckFastElements (Register map, Register scratch, Label *fail) |
|
void | CheckFastObjectElements (Register map, Register scratch, Label *fail) |
|
void | StoreNumberToDoubleElements (Register value_reg, Register key_reg, Register elements_reg, Register scratch1, FPRegister fpscratch1, FPRegister fpscratch2, Label *fail, int elements_offset=0) |
|
void | IndexFromHash (Register hash, Register index) |
|
void | EmitSeqStringSetCharCheck (Register string, Register index, SeqStringSetCharCheckIndexType index_type, Register scratch, uint32_t encoding_mask) |
|
void | CheckAccessGlobalProxy (Register holder_reg, Register scratch1, Register scratch2, Label *miss) |
|
void | GetNumberHash (Register key, Register scratch) |
|
void | LoadFromNumberDictionary (Label *miss, Register elements, Register key, Register result, Register scratch0, Register scratch1, Register scratch2, Register scratch3) |
|
void | EnterFrame (StackFrame::Type type) |
|
void | LeaveFrame (StackFrame::Type type) |
|
void | CheckEnumCache (Register object, Register null_value, Register scratch0, Register scratch1, Register scratch2, Register scratch3, Label *call_runtime) |
|
void | TestJSArrayForAllocationMemento (Register receiver, Register scratch1, Register scratch2, Label *no_memento_found) |
|
void | JumpIfJSArrayHasAllocationMemento (Register receiver, Register scratch1, Register scratch2, Label *memento_found) |
|
void | ExitFramePreserveFPRegs () |
|
void | ExitFrameRestoreFPRegs () |
|
void | Prologue (PrologueFrameMode frame_mode) |
|
void | EnterExitFrame (bool save_doubles, const Register &scratch, int extra_space=0) |
|
void | LeaveExitFrame (bool save_doubles, const Register &scratch, bool restore_context) |
|
void | LoadContext (Register dst, int context_chain_length) |
|
void | TruncatingDiv (Register result, Register dividend, int32_t divisor) |
|
void | SetCounter (StatsCounter *counter, int value, Register scratch1, Register scratch2) |
|
void | IncrementCounter (StatsCounter *counter, int value, Register scratch1, Register scratch2) |
|
void | DecrementCounter (StatsCounter *counter, int value, Register scratch1, Register scratch2) |
|
void | RememberedSetHelper (Register object, Register addr, Register scratch1, SaveFPRegsMode save_fp, RememberedSetFinalAction and_then) |
|
void | PushSafepointRegisters () |
|
void | PopSafepointRegisters () |
|
void | PushSafepointRegistersAndDoubles () |
|
void | PopSafepointRegistersAndDoubles () |
|
void | StoreToSafepointRegisterSlot (Register src, Register dst) |
|
void | LoadFromSafepointRegisterSlot (Register dst, Register src) |
|
void | CheckPageFlagSet (const Register &object, const Register &scratch, int mask, Label *if_any_set) |
|
void | CheckPageFlagClear (const Register &object, const Register &scratch, int mask, Label *if_all_clear) |
|
void | CheckMapDeprecated (Handle< Map > map, Register scratch, Label *if_deprecated) |
|
void | JumpIfNotInNewSpace (Register object, Label *branch) |
|
void | JumpIfInNewSpace (Register object, Label *branch) |
|
void | RecordWriteField (Register object, int offset, Register value, Register scratch, LinkRegisterStatus lr_status, SaveFPRegsMode save_fp, RememberedSetAction remembered_set_action=EMIT_REMEMBERED_SET, SmiCheck smi_check=INLINE_SMI_CHECK) |
|
void | RecordWriteContextSlot (Register context, int offset, Register value, Register scratch, LinkRegisterStatus lr_status, SaveFPRegsMode save_fp, RememberedSetAction remembered_set_action=EMIT_REMEMBERED_SET, SmiCheck smi_check=INLINE_SMI_CHECK) |
|
void | RecordWrite (Register object, Register address, Register value, LinkRegisterStatus lr_status, SaveFPRegsMode save_fp, RememberedSetAction remembered_set_action=EMIT_REMEMBERED_SET, SmiCheck smi_check=INLINE_SMI_CHECK) |
|
void | EnsureNotWhite (Register object, Register scratch1, Register scratch2, Register scratch3, Register scratch4, Label *object_is_white_and_not_data) |
|
void | JumpIfDataObject (Register value, Register scratch, Label *not_data_object) |
|
void | GetMarkBits (Register addr_reg, Register bitmap_reg, Register shift_reg) |
|
void | HasColor (Register object, Register scratch0, Register scratch1, Label *has_color, int first_bit, int second_bit) |
|
void | JumpIfBlack (Register object, Register scratch0, Register scratch1, Label *on_black) |
|
void | GetRelocatedValueLocation (Register ldr_location, Register result) |
|
void | Assert (Condition cond, BailoutReason reason) |
|
void | AssertRegisterIsClear (Register reg, BailoutReason reason) |
|
void | AssertRegisterIsRoot (Register reg, Heap::RootListIndex index, BailoutReason reason=kRegisterDidNotMatchExpectedRoot) |
|
void | AssertFastElements (Register elements) |
|
void | AssertHasValidColor (const Register ®) |
|
void | AssertIsString (const Register &object) |
|
void | Check (Condition cond, BailoutReason reason) |
|
void | CheckRegisterIsClear (Register reg, BailoutReason reason) |
|
void | Abort (BailoutReason reason) |
|
void | LoadTransitionedArrayMapConditional (ElementsKind expected_kind, ElementsKind transitioned_kind, Register map_in_out, Register scratch1, Register scratch2, Label *no_map_match) |
|
void | LoadGlobalFunction (int index, Register function) |
|
void | LoadGlobalFunctionInitialMap (Register function, Register map, Register scratch) |
|
CPURegList * | TmpList () |
|
CPURegList * | FPTmpList () |
|
void | Printf (const char *format, const CPURegister &arg0=NoCPUReg, const CPURegister &arg1=NoCPUReg, const CPURegister &arg2=NoCPUReg, const CPURegister &arg3=NoCPUReg) |
|
void | PrintfNoPreserve (const char *format, const CPURegister &arg0=NoCPUReg, const CPURegister &arg1=NoCPUReg, const CPURegister &arg2=NoCPUReg, const CPURegister &arg3=NoCPUReg) |
|
void | EmitFrameSetupForCodeAgePatching () |
|
void | EmitCodeAgeSequence (Code *stub) |
|
void | JumpIfDictionaryInPrototypeChain (Register object, Register scratch0, Register scratch1, Label *found) |
|
bool | NeedExtraInstructionsOrRegisterBranch (Label *label, ImmBranchType branch_type) |
|
| MacroAssembler (Isolate *isolate, void *buffer, int size) |
|
void | Load (Register dst, const Operand &src, Representation r) |
|
void | Store (Register src, const Operand &dst, Representation r) |
|
void | LoadRoot (Register destination, Heap::RootListIndex index) |
|
void | StoreRoot (Register source, Register scratch, Heap::RootListIndex index) |
|
void | CompareRoot (Register with, Register scratch, Heap::RootListIndex index) |
|
void | CompareRoot (Register with, Heap::RootListIndex index) |
|
void | CompareRoot (const Operand &with, Heap::RootListIndex index) |
|
void | RememberedSetHelper (Register object, Register addr, Register scratch, SaveFPRegsMode save_fp, RememberedSetFinalAction and_then) |
|
void | CheckPageFlag (Register object, Register scratch, int mask, Condition cc, Label *condition_met, Label::Distance condition_met_distance=Label::kFar) |
|
void | CheckPageFlagForMap (Handle< Map > map, int mask, Condition cc, Label *condition_met, Label::Distance condition_met_distance=Label::kFar) |
|
void | CheckMapDeprecated (Handle< Map > map, Register scratch, Label *if_deprecated) |
|
void | JumpIfNotInNewSpace (Register object, Register scratch, Label *branch, Label::Distance distance=Label::kFar) |
|
void | JumpIfInNewSpace (Register object, Register scratch, Label *branch, Label::Distance distance=Label::kFar) |
|
void | HasColor (Register object, Register scratch0, Register scratch1, Label *has_color, Label::Distance has_color_distance, int first_bit, int second_bit) |
|
void | JumpIfBlack (Register object, Register scratch0, Register scratch1, Label *on_black, Label::Distance on_black_distance=Label::kFar) |
|
void | EnsureNotWhite (Register object, Register scratch1, Register scratch2, Label *object_is_white_and_not_data, Label::Distance distance) |
|
void | RecordWriteField (Register object, int offset, Register value, Register scratch, SaveFPRegsMode save_fp, RememberedSetAction remembered_set_action=EMIT_REMEMBERED_SET, SmiCheck smi_check=INLINE_SMI_CHECK) |
|
void | RecordWriteContextSlot (Register context, int offset, Register value, Register scratch, SaveFPRegsMode save_fp, RememberedSetAction remembered_set_action=EMIT_REMEMBERED_SET, SmiCheck smi_check=INLINE_SMI_CHECK) |
|
void | RecordWriteArray (Register array, Register value, Register index, SaveFPRegsMode save_fp, RememberedSetAction remembered_set_action=EMIT_REMEMBERED_SET, SmiCheck smi_check=INLINE_SMI_CHECK) |
|
void | RecordWrite (Register object, Register address, Register value, SaveFPRegsMode save_fp, RememberedSetAction remembered_set_action=EMIT_REMEMBERED_SET, SmiCheck smi_check=INLINE_SMI_CHECK) |
|
void | RecordWriteForMap (Register object, Handle< Map > map, Register scratch1, Register scratch2, SaveFPRegsMode save_fp) |
|
void | Prologue (PrologueFrameMode frame_mode) |
|
void | EnterExitFrame (bool save_doubles) |
|
void | EnterApiExitFrame (int argc) |
|
void | LeaveExitFrame (bool save_doubles) |
|
void | LeaveApiExitFrame (bool restore_context) |
|
void | LoadContext (Register dst, int context_chain_length) |
|
void | LoadTransitionedArrayMapConditional (ElementsKind expected_kind, ElementsKind transitioned_kind, Register map_in_out, Register scratch, Label *no_map_match) |
|
void | LoadGlobalFunction (int index, Register function) |
|
void | LoadGlobalFunctionInitialMap (Register function, Register map) |
|
void | PushSafepointRegisters () |
|
void | PopSafepointRegisters () |
|
void | StoreToSafepointRegisterSlot (Register dst, Register src) |
|
void | StoreToSafepointRegisterSlot (Register dst, Immediate src) |
|
void | LoadFromSafepointRegisterSlot (Register dst, Register src) |
|
void | LoadHeapObject (Register result, Handle< HeapObject > object) |
|
void | CmpHeapObject (Register reg, Handle< HeapObject > object) |
|
void | PushHeapObject (Handle< HeapObject > object) |
|
void | LoadObject (Register result, Handle< Object > object) |
|
void | CmpObject (Register reg, Handle< Object > object) |
|
void | InvokeCode (Register code, const ParameterCount &expected, const ParameterCount &actual, InvokeFlag flag, const CallWrapper &call_wrapper) |
|
void | InvokeCode (const Operand &code, const ParameterCount &expected, const ParameterCount &actual, InvokeFlag flag, const CallWrapper &call_wrapper) |
|
void | InvokeFunction (Register function, const ParameterCount &actual, InvokeFlag flag, const CallWrapper &call_wrapper) |
|
void | InvokeFunction (Register function, const ParameterCount &expected, const ParameterCount &actual, InvokeFlag flag, const CallWrapper &call_wrapper) |
|
void | InvokeFunction (Handle< JSFunction > function, const ParameterCount &expected, const ParameterCount &actual, InvokeFlag flag, const CallWrapper &call_wrapper) |
|
void | InvokeBuiltin (Builtins::JavaScript id, InvokeFlag flag, const CallWrapper &call_wrapper=NullCallWrapper()) |
|
void | GetBuiltinFunction (Register target, Builtins::JavaScript id) |
|
void | GetBuiltinEntry (Register target, Builtins::JavaScript id) |
|
void | Cvtsi2sd (XMMRegister dst, Register src) |
|
void | Cvtsi2sd (XMMRegister dst, const Operand &src) |
|
bool | IsUnsafeImmediate (const Immediate &x) |
|
void | SafeMove (Register dst, const Immediate &x) |
|
void | SafePush (const Immediate &x) |
|
void | CmpObjectType (Register heap_object, InstanceType type, Register map) |
|
void | CmpInstanceType (Register map, InstanceType type) |
|
void | CheckFastElements (Register map, Label *fail, Label::Distance distance=Label::kFar) |
|
void | CheckFastObjectElements (Register map, Label *fail, Label::Distance distance=Label::kFar) |
|
void | CheckFastSmiElements (Register map, Label *fail, Label::Distance distance=Label::kFar) |
|
void | StoreNumberToDoubleElements (Register maybe_number, Register elements, Register key, Register scratch1, XMMRegister scratch2, Label *fail, bool specialize_for_processor, int offset=0) |
|
void | CompareMap (Register obj, Handle< Map > map) |
|
void | CheckMap (Register obj, Handle< Map > map, Label *fail, SmiCheckType smi_check_type) |
|
void | DispatchMap (Register obj, Register unused, Handle< Map > map, Handle< Code > success, SmiCheckType smi_check_type) |
|
Condition | IsObjectStringType (Register heap_object, Register map, Register instance_type) |
|
Condition | IsObjectNameType (Register heap_object, Register map, Register instance_type) |
|
void | IsObjectJSObjectType (Register heap_object, Register map, Register scratch, Label *fail) |
|
void | IsInstanceJSObjectType (Register map, Register scratch, Label *fail) |
|
void | FCmp () |
|
void | ClampUint8 (Register reg) |
|
void | ClampDoubleToUint8 (XMMRegister input_reg, XMMRegister scratch_reg, Register result_reg) |
|
void | SlowTruncateToI (Register result_reg, Register input_reg, int offset=HeapNumber::kValueOffset-kHeapObjectTag) |
|
void | TruncateHeapNumberToI (Register result_reg, Register input_reg) |
|
void | TruncateDoubleToI (Register result_reg, XMMRegister input_reg) |
|
void | TruncateX87TOSToI (Register result_reg) |
|
void | DoubleToI (Register result_reg, XMMRegister input_reg, XMMRegister scratch, MinusZeroMode minus_zero_mode, Label *conversion_failed, Label::Distance dst=Label::kFar) |
|
void | X87TOSToI (Register result_reg, MinusZeroMode minus_zero_mode, Label *conversion_failed, Label::Distance dst=Label::kFar) |
|
void | TaggedToI (Register result_reg, Register input_reg, XMMRegister temp, MinusZeroMode minus_zero_mode, Label *lost_precision) |
|
void | SmiTag (Register reg) |
|
void | SmiUntag (Register reg) |
|
void | SmiUntag (Register reg, Label *is_smi) |
|
void | LoadUint32 (XMMRegister dst, Register src, XMMRegister scratch) |
|
void | LoadUint32NoSSE2 (Register src) |
|
void | JumpIfSmi (Register value, Label *smi_label, Label::Distance distance=Label::kFar) |
|
void | JumpIfSmi (Operand value, Label *smi_label, Label::Distance distance=Label::kFar) |
|
void | JumpIfNotSmi (Register value, Label *not_smi_label, Label::Distance distance=Label::kFar) |
|
void | LoadInstanceDescriptors (Register map, Register descriptors) |
|
void | EnumLength (Register dst, Register map) |
|
void | NumberOfOwnDescriptors (Register dst, Register map) |
|
template<typename Field > |
void | DecodeField (Register reg) |
|
void | LoadPowerOf2 (XMMRegister dst, Register scratch, int power) |
|
void | AssertNumber (Register object) |
|
void | AssertSmi (Register object) |
|
void | AssertNotSmi (Register object) |
|
void | AssertString (Register object) |
|
void | AssertName (Register object) |
|
void | AssertUndefinedOrAllocationSite (Register object) |
|
void | PushTryHandler (StackHandler::Kind kind, int handler_index) |
|
void | PopTryHandler () |
|
void | Throw (Register value) |
|
void | ThrowUncatchable (Register value) |
|
void | Throw (BailoutReason reason) |
|
void | ThrowIf (Condition cc, BailoutReason reason) |
|
void | CheckAccessGlobalProxy (Register holder_reg, Register scratch1, Register scratch2, Label *miss) |
|
void | GetNumberHash (Register r0, Register scratch) |
|
void | LoadFromNumberDictionary (Label *miss, Register elements, Register key, Register r0, Register r1, Register r2, Register result) |
|
void | Allocate (int object_size, Register result, Register result_end, Register scratch, Label *gc_required, AllocationFlags flags) |
|
void | Allocate (int header_size, ScaleFactor element_size, Register element_count, RegisterValueType element_count_type, Register result, Register result_end, Register scratch, Label *gc_required, AllocationFlags flags) |
|
void | Allocate (Register object_size, Register result, Register result_end, Register scratch, Label *gc_required, AllocationFlags flags) |
|
void | UndoAllocationInNewSpace (Register object) |
|
void | AllocateHeapNumber (Register result, Register scratch1, Register scratch2, Label *gc_required) |
|
void | AllocateTwoByteString (Register result, Register length, Register scratch1, Register scratch2, Register scratch3, Label *gc_required) |
|
void | AllocateAsciiString (Register result, Register length, Register scratch1, Register scratch2, Register scratch3, Label *gc_required) |
|
void | AllocateAsciiString (Register result, int length, Register scratch1, Register scratch2, Label *gc_required) |
|
void | AllocateTwoByteConsString (Register result, Register scratch1, Register scratch2, Label *gc_required) |
|
void | AllocateAsciiConsString (Register result, Register scratch1, Register scratch2, Label *gc_required) |
|
void | AllocateTwoByteSlicedString (Register result, Register scratch1, Register scratch2, Label *gc_required) |
|
void | AllocateAsciiSlicedString (Register result, Register scratch1, Register scratch2, Label *gc_required) |
|
void | CopyBytes (Register source, Register destination, Register length, Register scratch) |
|
void | InitializeFieldsWithFiller (Register start_offset, Register end_offset, Register filler) |
|
void | BooleanBitTest (Register object, int field_offset, int bit_index) |
|
void | NegativeZeroTest (Register result, Register op, Label *then_label) |
|
void | NegativeZeroTest (Register result, Register op1, Register op2, Register scratch, Label *then_label) |
|
void | TryGetFunctionPrototype (Register function, Register result, Register scratch, Label *miss, bool miss_on_bound_function=false) |
|
void | IllegalOperation (int num_arguments) |
|
void | IndexFromHash (Register hash, Register index) |
|
void | CallStub (CodeStub *stub, TypeFeedbackId ast_id=TypeFeedbackId::None()) |
|
void | TailCallStub (CodeStub *stub) |
|
void | StubReturn (int argc) |
|
void | CallRuntime (const Runtime::Function *f, int num_arguments, SaveFPRegsMode save_doubles=kDontSaveFPRegs) |
|
void | CallRuntimeSaveDoubles (Runtime::FunctionId id) |
|
void | CallRuntime (Runtime::FunctionId id, int num_arguments, SaveFPRegsMode save_doubles=kDontSaveFPRegs) |
|
void | CallExternalReference (ExternalReference ref, int num_arguments) |
|
void | TailCallExternalReference (const ExternalReference &ext, int num_arguments, int result_size) |
|
void | TailCallRuntime (Runtime::FunctionId fid, int num_arguments, int result_size) |
|
void | PrepareCallCFunction (int num_arguments, Register scratch) |
|
void | CallCFunction (ExternalReference function, int num_arguments) |
|
void | CallCFunction (Register function, int num_arguments) |
|
void | PrepareCallApiFunction (int argc) |
|
void | CallApiFunctionAndReturn (Register function_address, Address thunk_address, Operand thunk_last_arg, int stack_space, Operand return_value_operand, Operand *context_restore_operand) |
|
void | JumpToExternalReference (const ExternalReference &ext) |
|
void | Ret () |
|
void | Ret (int bytes_dropped, Register scratch) |
|
void | Drop (int element_count) |
|
void | Call (Label *target) |
|
void | Push (Register src) |
|
void | Pop (Register dst) |
|
void | CallSelf () |
|
void | Move (Register target, Register source) |
|
void | Move (Register dst, const Immediate &x) |
|
void | Move (const Operand &dst, const Immediate &x) |
|
void | Move (XMMRegister dst, double val) |
|
void | Push (Handle< Object > handle) |
|
void | Push (Smi *smi) |
|
Handle< Object > | CodeObject () |
|
void | VerifyX87StackDepth (uint32_t depth) |
|
void | TruncatingDiv (Register dividend, int32_t divisor) |
|
void | SetCounter (StatsCounter *counter, int value) |
|
void | IncrementCounter (StatsCounter *counter, int value) |
|
void | DecrementCounter (StatsCounter *counter, int value) |
|
void | IncrementCounter (Condition cc, StatsCounter *counter, int value) |
|
void | DecrementCounter (Condition cc, StatsCounter *counter, int value) |
|
void | Assert (Condition cc, BailoutReason reason) |
|
void | AssertFastElements (Register elements) |
|
void | Check (Condition cc, BailoutReason reason) |
|
void | Abort (BailoutReason reason) |
|
void | CheckStackAlignment () |
|
void | set_generating_stub (bool value) |
|
bool | generating_stub () |
|
void | set_has_frame (bool value) |
|
bool | has_frame () |
|
bool | AllowThisStubCall (CodeStub *stub) |
|
void | LookupNumberStringCache (Register object, Register result, Register scratch1, Register scratch2, Label *not_found) |
|
void | JumpIfInstanceTypeIsNotSequentialAscii (Register instance_type, Register scratch, Label *on_not_flat_ascii_string) |
|
void | JumpIfNotBothSequentialAsciiStrings (Register object1, Register object2, Register scratch1, Register scratch2, Label *on_not_flat_ascii_strings) |
|
void | JumpIfNotUniqueName (Register reg, Label *not_unique_name, Label::Distance distance=Label::kFar) |
|
void | JumpIfNotUniqueName (Operand operand, Label *not_unique_name, Label::Distance distance=Label::kFar) |
|
void | EmitSeqStringSetCharCheck (Register string, Register index, Register value, uint32_t encoding_mask) |
|
void | EnterFrame (StackFrame::Type type) |
|
void | LeaveFrame (StackFrame::Type type) |
|
void | CheckEnumCache (Label *call_runtime) |
|
void | TestJSArrayForAllocationMemento (Register receiver_reg, Register scratch_reg, Label *no_memento_found) |
|
void | JumpIfJSArrayHasAllocationMemento (Register receiver_reg, Register scratch_reg, Label *memento_found) |
|
void | JumpIfDictionaryInPrototypeChain (Register object, Register scratch0, Register scratch1, Label *found) |
|
| MacroAssembler (Isolate *isolate, void *buffer, int size) |
|
void | Jump (Register target, COND_ARGS) |
|
void | Jump (intptr_t target, RelocInfo::Mode rmode, COND_ARGS) |
|
void | Jump (Address target, RelocInfo::Mode rmode, COND_ARGS) |
|
void | Jump (Handle< Code > code, RelocInfo::Mode rmode, COND_ARGS) |
|
void | Call (Register target, COND_ARGS) |
|
void | Call (Address target, RelocInfo::Mode rmode, COND_ARGS) |
|
int | CallSize (Handle< Code > code, RelocInfo::Mode rmode=RelocInfo::CODE_TARGET, TypeFeedbackId ast_id=TypeFeedbackId::None(), COND_ARGS) |
|
void | Call (Handle< Code > code, RelocInfo::Mode rmode=RelocInfo::CODE_TARGET, TypeFeedbackId ast_id=TypeFeedbackId::None(), COND_ARGS) |
|
void | Ret (COND_ARGS) |
|
void | Ret (BranchDelaySlot bd, Condition cond=al, Register rs=zero_reg, const Operand &rt=Operand(zero_reg)) |
|
void | Branch (Label *L, Condition cond, Register rs, Heap::RootListIndex index, BranchDelaySlot bdslot=PROTECT) |
|
void | Drop (int count, Condition cond=cc_always, Register reg=no_reg, const Operand &op=Operand(no_reg)) |
|
void | DropAndRet (int drop) |
|
void | DropAndRet (int drop, Condition cond, Register reg, const Operand &op) |
|
void | Swap (Register reg1, Register reg2, Register scratch=no_reg) |
|
void | Call (Label *target) |
|
void | Move (Register dst, Register src) |
|
void | Move (FPURegister dst, FPURegister src) |
|
void | Move (Register dst_low, Register dst_high, FPURegister src) |
|
void | FmoveHigh (Register dst_high, FPURegister src) |
|
void | FmoveLow (Register dst_low, FPURegister src) |
|
void | Move (FPURegister dst, Register src_low, Register src_high) |
|
void | Move (FPURegister dst, double imm) |
|
void | Movz (Register rd, Register rs, Register rt) |
|
void | Movn (Register rd, Register rs, Register rt) |
|
void | Movt (Register rd, Register rs, uint16_t cc=0) |
|
void | Movf (Register rd, Register rs, uint16_t cc=0) |
|
void | Clz (Register rd, Register rs) |
|
void | jmp (Label *L) |
|
void | Load (Register dst, const MemOperand &src, Representation r) |
|
void | Store (Register src, const MemOperand &dst, Representation r) |
|
void | LoadRoot (Register destination, Heap::RootListIndex index) |
|
void | LoadRoot (Register destination, Heap::RootListIndex index, Condition cond, Register src1, const Operand &src2) |
|
void | StoreRoot (Register source, Heap::RootListIndex index) |
|
void | StoreRoot (Register source, Heap::RootListIndex index, Condition cond, Register src1, const Operand &src2) |
|
void | IncrementalMarkingRecordWriteHelper (Register object, Register value, Register address) |
|
void | RememberedSetHelper (Register object, Register addr, Register scratch, SaveFPRegsMode save_fp, RememberedSetFinalAction and_then) |
|
void | CheckPageFlag (Register object, Register scratch, int mask, Condition cc, Label *condition_met) |
|
void | CheckMapDeprecated (Handle< Map > map, Register scratch, Label *if_deprecated) |
|
void | JumpIfNotInNewSpace (Register object, Register scratch, Label *branch) |
|
void | JumpIfInNewSpace (Register object, Register scratch, Label *branch) |
|
void | HasColor (Register object, Register scratch0, Register scratch1, Label *has_color, int first_bit, int second_bit) |
|
void | JumpIfBlack (Register object, Register scratch0, Register scratch1, Label *on_black) |
|
void | EnsureNotWhite (Register object, Register scratch1, Register scratch2, Register scratch3, Label *object_is_white_and_not_data) |
|
void | JumpIfDataObject (Register value, Register scratch, Label *not_data_object) |
|
void | RecordWriteField (Register object, int offset, Register value, Register scratch, RAStatus ra_status, SaveFPRegsMode save_fp, RememberedSetAction remembered_set_action=EMIT_REMEMBERED_SET, SmiCheck smi_check=INLINE_SMI_CHECK) |
|
void | RecordWriteContextSlot (Register context, int offset, Register value, Register scratch, RAStatus ra_status, SaveFPRegsMode save_fp, RememberedSetAction remembered_set_action=EMIT_REMEMBERED_SET, SmiCheck smi_check=INLINE_SMI_CHECK) |
|
void | RecordWrite (Register object, Register address, Register value, RAStatus ra_status, SaveFPRegsMode save_fp, RememberedSetAction remembered_set_action=EMIT_REMEMBERED_SET, SmiCheck smi_check=INLINE_SMI_CHECK) |
|
void | CheckAccessGlobalProxy (Register holder_reg, Register scratch, Label *miss) |
|
void | GetNumberHash (Register reg0, Register scratch) |
|
void | LoadFromNumberDictionary (Label *miss, Register elements, Register key, Register result, Register reg0, Register reg1, Register reg2) |
|
void | MarkCode (NopMarkerTypes type) |
|
void | Allocate (int object_size, Register result, Register scratch1, Register scratch2, Label *gc_required, AllocationFlags flags) |
|
void | Allocate (Register object_size, Register result, Register scratch1, Register scratch2, Label *gc_required, AllocationFlags flags) |
|
void | UndoAllocationInNewSpace (Register object, Register scratch) |
|
void | AllocateTwoByteString (Register result, Register length, Register scratch1, Register scratch2, Register scratch3, Label *gc_required) |
|
void | AllocateAsciiString (Register result, Register length, Register scratch1, Register scratch2, Register scratch3, Label *gc_required) |
|
void | AllocateTwoByteConsString (Register result, Register length, Register scratch1, Register scratch2, Label *gc_required) |
|
void | AllocateAsciiConsString (Register result, Register length, Register scratch1, Register scratch2, Label *gc_required) |
|
void | AllocateTwoByteSlicedString (Register result, Register length, Register scratch1, Register scratch2, Label *gc_required) |
|
void | AllocateAsciiSlicedString (Register result, Register length, Register scratch1, Register scratch2, Label *gc_required) |
|
void | AllocateHeapNumber (Register result, Register scratch1, Register scratch2, Register heap_number_map, Label *gc_required, TaggingMode tagging_mode=TAG_RESULT) |
|
void | AllocateHeapNumberWithValue (Register result, FPURegister value, Register scratch1, Register scratch2, Label *gc_required) |
|
| DEFINE_INSTRUCTION (Addu) |
|
| DEFINE_INSTRUCTION (Subu) |
|
| DEFINE_INSTRUCTION (Mul) |
|
| DEFINE_INSTRUCTION2 (Mult) |
|
| DEFINE_INSTRUCTION2 (Multu) |
|
| DEFINE_INSTRUCTION2 (Div) |
|
| DEFINE_INSTRUCTION2 (Divu) |
|
| DEFINE_INSTRUCTION (And) |
|
| DEFINE_INSTRUCTION (Or) |
|
| DEFINE_INSTRUCTION (Xor) |
|
| DEFINE_INSTRUCTION (Nor) |
|
| DEFINE_INSTRUCTION2 (Neg) |
|
| DEFINE_INSTRUCTION (Slt) |
|
| DEFINE_INSTRUCTION (Sltu) |
|
| DEFINE_INSTRUCTION (Ror) |
|
void | Pref (int32_t hint, const MemOperand &rs) |
|
void | mov (Register rd, Register rt) |
|
void | Ulw (Register rd, const MemOperand &rs) |
|
void | Usw (Register rd, const MemOperand &rs) |
|
void | li (Register rd, Operand j, LiFlags mode=OPTIMIZE_SIZE) |
|
void | li (Register rd, int32_t j, LiFlags mode=OPTIMIZE_SIZE) |
|
void | li (Register dst, Handle< Object > value, LiFlags mode=OPTIMIZE_SIZE) |
|
void | MultiPush (RegList regs) |
|
void | MultiPushReversed (RegList regs) |
|
void | MultiPushFPU (RegList regs) |
|
void | MultiPushReversedFPU (RegList regs) |
|
void | push (Register src) |
|
void | Push (Register src) |
|
void | Push (Handle< Object > handle) |
|
void | Push (Smi *smi) |
|
void | Push (Register src1, Register src2) |
|
void | Push (Register src1, Register src2, Register src3) |
|
void | Push (Register src1, Register src2, Register src3, Register src4) |
|
void | Push (Register src, Condition cond, Register tst1, Register tst2) |
|
void | MultiPop (RegList regs) |
|
void | MultiPopReversed (RegList regs) |
|
void | MultiPopFPU (RegList regs) |
|
void | MultiPopReversedFPU (RegList regs) |
|
void | pop (Register dst) |
|
void | Pop (Register dst) |
|
void | Pop (Register src1, Register src2) |
|
void | Pop (Register src1, Register src2, Register src3) |
|
void | Pop (uint32_t count=1) |
|
void | PushSafepointRegisters () |
|
void | PopSafepointRegisters () |
|
void | PushSafepointRegistersAndDoubles () |
|
void | PopSafepointRegistersAndDoubles () |
|
void | StoreToSafepointRegisterSlot (Register src, Register dst) |
|
void | StoreToSafepointRegistersAndDoublesSlot (Register src, Register dst) |
|
void | LoadFromSafepointRegisterSlot (Register dst, Register src) |
|
void | FlushICache (Register address, unsigned instructions) |
|
void | Ins (Register rt, Register rs, uint16_t pos, uint16_t size) |
|
void | Ext (Register rt, Register rs, uint16_t pos, uint16_t size) |
|
void | Cvt_d_uw (FPURegister fd, FPURegister fs, FPURegister scratch) |
|
void | Cvt_d_uw (FPURegister fd, Register rs, FPURegister scratch) |
|
void | Trunc_uw_d (FPURegister fd, FPURegister fs, FPURegister scratch) |
|
void | Trunc_uw_d (FPURegister fd, Register rs, FPURegister scratch) |
|
void | Trunc_w_d (FPURegister fd, FPURegister fs) |
|
void | Round_w_d (FPURegister fd, FPURegister fs) |
|
void | Floor_w_d (FPURegister fd, FPURegister fs) |
|
void | Ceil_w_d (FPURegister fd, FPURegister fs) |
|
void | BranchF (Label *target, Label *nan, Condition cc, FPURegister cmp1, FPURegister cmp2, BranchDelaySlot bd=PROTECT) |
|
void | BranchF (BranchDelaySlot bd, Label *target, Label *nan, Condition cc, FPURegister cmp1, FPURegister cmp2) |
|
void | EmitFPUTruncate (FPURoundingMode rounding_mode, Register result, DoubleRegister double_input, Register scratch, DoubleRegister double_scratch, Register except_flag, CheckForInexactConversion check_inexact=kDontCheckForInexactConversion) |
|
void | TryInlineTruncateDoubleToI (Register result, DoubleRegister input, Label *done) |
|
void | TruncateDoubleToI (Register result, DoubleRegister double_input) |
|
void | TruncateHeapNumberToI (Register result, Register object) |
|
void | TruncateNumberToI (Register object, Register result, Register heap_number_map, Register scratch, Label *not_int32) |
|
void | LoadNumber (Register object, FPURegister dst, Register heap_number_map, Register scratch, Label *not_number) |
|
void | LoadNumberAsInt32Double (Register object, DoubleRegister double_dst, Register heap_number_map, Register scratch1, Register scratch2, FPURegister double_scratch, Label *not_int32) |
|
void | LoadNumberAsInt32 (Register object, Register dst, Register heap_number_map, Register scratch1, Register scratch2, FPURegister double_scratch0, FPURegister double_scratch1, Label *not_int32) |
|
void | EnterExitFrame (bool save_doubles, int stack_space=0) |
|
void | LeaveExitFrame (bool save_doubles, Register arg_count, bool restore_context, bool do_return=NO_EMIT_RETURN) |
|
void | AssertStackIsAligned () |
|
void | LoadContext (Register dst, int context_chain_length) |
|
void | LoadTransitionedArrayMapConditional (ElementsKind expected_kind, ElementsKind transitioned_kind, Register map_in_out, Register scratch, Label *no_map_match) |
|
void | LoadGlobalFunction (int index, Register function) |
|
void | LoadGlobalFunctionInitialMap (Register function, Register map, Register scratch) |
|
void | InitializeRootRegister () |
|
void | InvokeCode (Register code, const ParameterCount &expected, const ParameterCount &actual, InvokeFlag flag, const CallWrapper &call_wrapper) |
|
void | InvokeFunction (Register function, const ParameterCount &actual, InvokeFlag flag, const CallWrapper &call_wrapper) |
|
void | InvokeFunction (Register function, const ParameterCount &expected, const ParameterCount &actual, InvokeFlag flag, const CallWrapper &call_wrapper) |
|
void | InvokeFunction (Handle< JSFunction > function, const ParameterCount &expected, const ParameterCount &actual, InvokeFlag flag, const CallWrapper &call_wrapper) |
|
void | IsObjectJSObjectType (Register heap_object, Register map, Register scratch, Label *fail) |
|
void | IsInstanceJSObjectType (Register map, Register scratch, Label *fail) |
|
void | IsObjectJSStringType (Register object, Register scratch, Label *fail) |
|
void | IsObjectNameType (Register object, Register scratch, Label *fail) |
|
void | PushTryHandler (StackHandler::Kind kind, int handler_index) |
|
void | PopTryHandler () |
|
void | Throw (Register value) |
|
void | ThrowUncatchable (Register value) |
|
void | Throw (BailoutReason reason) |
|
void | ThrowIf (Condition cc, BailoutReason reason, Register rs, Operand rt) |
|
void | CopyFields (Register dst, Register src, RegList temps, int field_count) |
|
void | CopyBytes (Register src, Register dst, Register length, Register scratch) |
|
void | InitializeFieldsWithFiller (Register start_offset, Register end_offset, Register filler) |
|
void | TryGetFunctionPrototype (Register function, Register result, Register scratch, Label *miss, bool miss_on_bound_function=false) |
|
void | GetObjectType (Register function, Register map, Register type_reg) |
|
void | CheckFastElements (Register map, Register scratch, Label *fail) |
|
void | CheckFastObjectElements (Register map, Register scratch, Label *fail) |
|
void | CheckFastSmiElements (Register map, Register scratch, Label *fail) |
|
void | StoreNumberToDoubleElements (Register value_reg, Register key_reg, Register elements_reg, Register scratch1, Register scratch2, Register scratch3, Label *fail, int elements_offset=0) |
|
void | CompareMapAndBranch (Register obj, Register scratch, Handle< Map > map, Label *early_success, Condition cond, Label *branch_to) |
|
void | CompareMapAndBranch (Register obj_map, Handle< Map > map, Label *early_success, Condition cond, Label *branch_to) |
|
void | CheckMap (Register obj, Register scratch, Handle< Map > map, Label *fail, SmiCheckType smi_check_type) |
|
void | CheckMap (Register obj, Register scratch, Heap::RootListIndex index, Label *fail, SmiCheckType smi_check_type) |
|
void | DispatchMap (Register obj, Register scratch, Handle< Map > map, Handle< Code > success, SmiCheckType smi_check_type) |
|
void | IllegalOperation (int num_arguments) |
|
Condition | IsObjectStringType (Register obj, Register type, Register result) |
|
void | IndexFromHash (Register hash, Register index) |
|
void | GetLeastBitsFromSmi (Register dst, Register src, int num_least_bits) |
|
void | GetLeastBitsFromInt32 (Register dst, Register src, int mun_least_bits) |
|
void | ObjectToDoubleFPURegister (Register object, FPURegister value, Register scratch1, Register scratch2, Register heap_number_map, Label *not_number, ObjectToDoubleFlags flags=NO_OBJECT_TO_DOUBLE_FLAGS) |
|
void | SmiToDoubleFPURegister (Register smi, FPURegister value, Register scratch1) |
|
void | AdduAndCheckForOverflow (Register dst, Register left, Register right, Register overflow_dst, Register scratch=at) |
|
void | SubuAndCheckForOverflow (Register dst, Register left, Register right, Register overflow_dst, Register scratch=at) |
|
void | BranchOnOverflow (Label *label, Register overflow_check, BranchDelaySlot bd=PROTECT) |
|
void | BranchOnNoOverflow (Label *label, Register overflow_check, BranchDelaySlot bd=PROTECT) |
|
void | RetOnOverflow (Register overflow_check, BranchDelaySlot bd=PROTECT) |
|
void | RetOnNoOverflow (Register overflow_check, BranchDelaySlot bd=PROTECT) |
|
void | PrepareCEntryArgs (int num_args) |
|
void | PrepareCEntryFunction (const ExternalReference &ref) |
|
void | CallStub (CodeStub *stub, TypeFeedbackId ast_id=TypeFeedbackId::None(), COND_ARGS) |
|
void | TailCallStub (CodeStub *stub, COND_ARGS) |
|
void | CallJSExitStub (CodeStub *stub) |
|
void | CallRuntime (const Runtime::Function *f, int num_arguments, SaveFPRegsMode save_doubles=kDontSaveFPRegs) |
|
void | CallRuntimeSaveDoubles (Runtime::FunctionId id) |
|
void | CallRuntime (Runtime::FunctionId id, int num_arguments, SaveFPRegsMode save_doubles=kDontSaveFPRegs) |
|
void | CallExternalReference (const ExternalReference &ext, int num_arguments, BranchDelaySlot bd=PROTECT) |
|
void | TailCallExternalReference (const ExternalReference &ext, int num_arguments, int result_size) |
|
void | TailCallRuntime (Runtime::FunctionId fid, int num_arguments, int result_size) |
|
int | CalculateStackPassedWords (int num_reg_arguments, int num_double_arguments) |
|
void | PrepareCallCFunction (int num_reg_arguments, int num_double_registers, Register scratch) |
|
void | PrepareCallCFunction (int num_reg_arguments, Register scratch) |
|
void | CallCFunction (ExternalReference function, int num_arguments) |
|
void | CallCFunction (Register function, int num_arguments) |
|
void | CallCFunction (ExternalReference function, int num_reg_arguments, int num_double_arguments) |
|
void | CallCFunction (Register function, int num_reg_arguments, int num_double_arguments) |
|
void | MovFromFloatResult (DoubleRegister dst) |
|
void | MovFromFloatParameter (DoubleRegister dst) |
|
void | MovToFloatParameter (DoubleRegister src) |
|
void | MovToFloatParameters (DoubleRegister src1, DoubleRegister src2) |
|
void | MovToFloatResult (DoubleRegister src) |
|
void | CallApiFunctionAndReturn (Register function_address, ExternalReference thunk_ref, int stack_space, MemOperand return_value_operand, MemOperand *context_restore_operand) |
|
void | JumpToExternalReference (const ExternalReference &builtin, BranchDelaySlot bd=PROTECT) |
|
void | InvokeBuiltin (Builtins::JavaScript id, InvokeFlag flag, const CallWrapper &call_wrapper=NullCallWrapper()) |
|
void | GetBuiltinEntry (Register target, Builtins::JavaScript id) |
|
void | GetBuiltinFunction (Register target, Builtins::JavaScript id) |
|
Handle< Object > | CodeObject () |
|
void | TruncatingDiv (Register result, Register dividend, int32_t divisor) |
|
void | SetCounter (StatsCounter *counter, int value, Register scratch1, Register scratch2) |
|
void | IncrementCounter (StatsCounter *counter, int value, Register scratch1, Register scratch2) |
|
void | DecrementCounter (StatsCounter *counter, int value, Register scratch1, Register scratch2) |
|
void | Assert (Condition cc, BailoutReason reason, Register rs, Operand rt) |
|
void | AssertFastElements (Register elements) |
|
void | Check (Condition cc, BailoutReason reason, Register rs, Operand rt) |
|
void | Abort (BailoutReason msg) |
|
void | set_generating_stub (bool value) |
|
bool | generating_stub () |
|
void | set_has_frame (bool value) |
|
bool | has_frame () |
|
bool | AllowThisStubCall (CodeStub *stub) |
|
void | JumpIfNotPowerOfTwoOrZero (Register reg, Register scratch, Label *not_power_of_two_or_zero) |
|
void | SmiTag (Register reg) |
|
void | SmiTagCheckOverflow (Register reg, Register overflow) |
|
void | SmiTagCheckOverflow (Register dst, Register src, Register overflow) |
|
void | SmiTag (Register dst, Register src) |
|
void | TrySmiTag (Register reg, Register scratch, Label *not_a_smi) |
|
void | TrySmiTag (Register dst, Register src, Register scratch, Label *not_a_smi) |
|
void | SmiUntag (Register reg) |
|
void | SmiUntag (Register dst, Register src) |
|
void | SmiTst (Register value, Register scratch) |
|
void | NonNegativeSmiTst (Register value, Register scratch) |
|
void | UntagAndJumpIfSmi (Register dst, Register src, Label *smi_case) |
|
void | UntagAndJumpIfNotSmi (Register dst, Register src, Label *non_smi_case) |
|
void | JumpIfSmi (Register value, Label *smi_label, Register scratch=at, BranchDelaySlot bd=PROTECT) |
|
void | JumpIfNotSmi (Register value, Label *not_smi_label, Register scratch=at, BranchDelaySlot bd=PROTECT) |
|
void | JumpIfNotBothSmi (Register reg1, Register reg2, Label *on_not_both_smi) |
|
void | JumpIfEitherSmi (Register reg1, Register reg2, Label *on_either_smi) |
|
void | AssertNotSmi (Register object) |
|
void | AssertSmi (Register object) |
|
void | AssertString (Register object) |
|
void | AssertName (Register object) |
|
void | AssertUndefinedOrAllocationSite (Register object, Register scratch) |
|
void | AssertIsRoot (Register reg, Heap::RootListIndex index) |
|
void | JumpIfNotHeapNumber (Register object, Register heap_number_map, Register scratch, Label *on_not_heap_number) |
|
void | LookupNumberStringCache (Register object, Register result, Register scratch1, Register scratch2, Register scratch3, Label *not_found) |
|
void | JumpIfBothInstanceTypesAreNotSequentialAscii (Register first_object_instance_type, Register second_object_instance_type, Register scratch1, Register scratch2, Label *failure) |
|
void | JumpIfInstanceTypeIsNotSequentialAscii (Register type, Register scratch, Label *failure) |
|
void | JumpIfNotUniqueName (Register reg, Label *not_unique_name) |
|
void | EmitSeqStringSetCharCheck (Register string, Register index, Register value, Register scratch, uint32_t encoding_mask) |
|
void | JumpIfNonSmisNotBothSequentialAsciiStrings (Register first, Register second, Register scratch1, Register scratch2, Label *failure) |
|
void | JumpIfNotBothSequentialAsciiStrings (Register first, Register second, Register scratch1, Register scratch2, Label *failure) |
|
void | ClampUint8 (Register output_reg, Register input_reg) |
|
void | ClampDoubleToUint8 (Register result_reg, DoubleRegister input_reg, DoubleRegister temp_double_reg) |
|
void | LoadInstanceDescriptors (Register map, Register descriptors) |
|
void | EnumLength (Register dst, Register map) |
|
void | NumberOfOwnDescriptors (Register dst, Register map) |
|
template<typename Field > |
void | DecodeField (Register reg) |
|
void | Prologue (PrologueFrameMode frame_mode) |
|
void | EnterFrame (StackFrame::Type type) |
|
void | LeaveFrame (StackFrame::Type type) |
|
void | PatchRelocatedValue (Register li_location, Register scratch, Register new_value) |
|
void | GetRelocatedValue (Register li_location, Register value, Register scratch) |
|
void | CheckEnumCache (Register null_value, Label *call_runtime) |
|
void | TestJSArrayForAllocationMemento (Register receiver_reg, Register scratch_reg, Label *no_memento_found, Condition cond=al, Label *allocation_memento_present=NULL) |
|
void | JumpIfJSArrayHasAllocationMemento (Register receiver_reg, Register scratch_reg, Label *memento_found) |
|
void | JumpIfDictionaryInPrototypeChain (Register object, Register scratch0, Register scratch1, Label *found) |
|
| MacroAssembler (Isolate *isolate, void *buffer, int size) |
|
Operand | ExternalOperand (ExternalReference reference, Register scratch=kScratchRegister) |
|
void | Load (Register destination, ExternalReference source) |
|
void | Store (ExternalReference destination, Register source) |
|
void | LoadAddress (Register destination, ExternalReference source) |
|
int | LoadAddressSize (ExternalReference source) |
|
void | PushAddress (ExternalReference source) |
|
void | LoadRoot (Register destination, Heap::RootListIndex index) |
|
void | StoreRoot (Register source, Heap::RootListIndex index) |
|
void | LoadRootIndexed (Register destination, Register variable_offset, int fixed_offset) |
|
void | CompareRoot (Register with, Heap::RootListIndex index) |
|
void | CompareRoot (const Operand &with, Heap::RootListIndex index) |
|
void | PushRoot (Heap::RootListIndex index) |
|
void | PushCallerSaved (SaveFPRegsMode fp_mode, Register exclusion1=no_reg, Register exclusion2=no_reg, Register exclusion3=no_reg) |
|
void | PopCallerSaved (SaveFPRegsMode fp_mode, Register exclusion1=no_reg, Register exclusion2=no_reg, Register exclusion3=no_reg) |
|
void | RememberedSetHelper (Register object, Register addr, Register scratch, SaveFPRegsMode save_fp, RememberedSetFinalAction and_then) |
|
void | CheckPageFlag (Register object, Register scratch, int mask, Condition cc, Label *condition_met, Label::Distance condition_met_distance=Label::kFar) |
|
void | CheckMapDeprecated (Handle< Map > map, Register scratch, Label *if_deprecated) |
|
void | JumpIfNotInNewSpace (Register object, Register scratch, Label *branch, Label::Distance distance=Label::kFar) |
|
void | JumpIfInNewSpace (Register object, Register scratch, Label *branch, Label::Distance distance=Label::kFar) |
|
void | JumpIfBlack (Register object, Register scratch0, Register scratch1, Label *on_black, Label::Distance on_black_distance=Label::kFar) |
|
void | JumpIfDataObject (Register value, Register scratch, Label *not_data_object, Label::Distance not_data_object_distance) |
|
void | EnsureNotWhite (Register object, Register scratch1, Register scratch2, Label *object_is_white_and_not_data, Label::Distance distance) |
|
void | RecordWriteField (Register object, int offset, Register value, Register scratch, SaveFPRegsMode save_fp, RememberedSetAction remembered_set_action=EMIT_REMEMBERED_SET, SmiCheck smi_check=INLINE_SMI_CHECK) |
|
void | RecordWriteContextSlot (Register context, int offset, Register value, Register scratch, SaveFPRegsMode save_fp, RememberedSetAction remembered_set_action=EMIT_REMEMBERED_SET, SmiCheck smi_check=INLINE_SMI_CHECK) |
|
void | RecordWriteArray (Register array, Register value, Register index, SaveFPRegsMode save_fp, RememberedSetAction remembered_set_action=EMIT_REMEMBERED_SET, SmiCheck smi_check=INLINE_SMI_CHECK) |
|
void | RecordWrite (Register object, Register address, Register value, SaveFPRegsMode save_fp, RememberedSetAction remembered_set_action=EMIT_REMEMBERED_SET, SmiCheck smi_check=INLINE_SMI_CHECK) |
|
void | Prologue (PrologueFrameMode frame_mode) |
|
void | EnterExitFrame (int arg_stack_space=0, bool save_doubles=false) |
|
void | EnterApiExitFrame (int arg_stack_space) |
|
void | LeaveExitFrame (bool save_doubles=false) |
|
void | LeaveApiExitFrame (bool restore_context) |
|
void | PushSafepointRegisters () |
|
void | PopSafepointRegisters () |
|
void | StoreToSafepointRegisterSlot (Register dst, const Immediate &imm) |
|
void | StoreToSafepointRegisterSlot (Register dst, Register src) |
|
void | LoadFromSafepointRegisterSlot (Register dst, Register src) |
|
void | InitializeRootRegister () |
|
void | InvokeCode (Register code, const ParameterCount &expected, const ParameterCount &actual, InvokeFlag flag, const CallWrapper &call_wrapper) |
|
void | InvokeFunction (Register function, const ParameterCount &actual, InvokeFlag flag, const CallWrapper &call_wrapper) |
|
void | InvokeFunction (Register function, const ParameterCount &expected, const ParameterCount &actual, InvokeFlag flag, const CallWrapper &call_wrapper) |
|
void | InvokeFunction (Handle< JSFunction > function, const ParameterCount &expected, const ParameterCount &actual, InvokeFlag flag, const CallWrapper &call_wrapper) |
|
void | InvokeBuiltin (Builtins::JavaScript id, InvokeFlag flag, const CallWrapper &call_wrapper=NullCallWrapper()) |
|
void | GetBuiltinFunction (Register target, Builtins::JavaScript id) |
|
void | GetBuiltinEntry (Register target, Builtins::JavaScript id) |
|
bool | IsUnsafeInt (const int32_t x) |
|
void | SafeMove (Register dst, Smi *src) |
|
void | SafePush (Smi *src) |
|
void | InitializeSmiConstantRegister () |
|
void | Integer32ToSmi (Register dst, Register src) |
|
void | Integer32ToSmiField (const Operand &dst, Register src) |
|
void | Integer64PlusConstantToSmi (Register dst, Register src, int constant) |
|
void | SmiToInteger32 (Register dst, Register src) |
|
void | SmiToInteger32 (Register dst, const Operand &src) |
|
void | SmiToInteger64 (Register dst, Register src) |
|
void | SmiToInteger64 (Register dst, const Operand &src) |
|
void | PositiveSmiTimesPowerOfTwoToInteger64 (Register dst, Register src, int power) |
|
void | PositiveSmiDivPowerOfTwoToInteger32 (Register dst, Register src, int power) |
|
void | SmiOrIfSmis (Register dst, Register src1, Register src2, Label *on_not_smis, Label::Distance near_jump=Label::kFar) |
|
void | SmiCompare (Register smi1, Register smi2) |
|
void | SmiCompare (Register dst, Smi *src) |
|
void | SmiCompare (Register dst, const Operand &src) |
|
void | SmiCompare (const Operand &dst, Register src) |
|
void | SmiCompare (const Operand &dst, Smi *src) |
|
void | SmiCompareInteger32 (const Operand &dst, Register src) |
|
void | SmiTest (Register src) |
|
Condition | CheckSmi (Register src) |
|
Condition | CheckSmi (const Operand &src) |
|
Condition | CheckNonNegativeSmi (Register src) |
|
Condition | CheckBothSmi (Register first, Register second) |
|
Condition | CheckBothNonNegativeSmi (Register first, Register second) |
|
Condition | CheckEitherSmi (Register first, Register second, Register scratch=kScratchRegister) |
|
Condition | CheckIsMinSmi (Register src) |
|
Condition | CheckInteger32ValidSmiValue (Register src) |
|
Condition | CheckUInteger32ValidSmiValue (Register src) |
|
void | CheckSmiToIndicator (Register dst, Register src) |
|
void | CheckSmiToIndicator (Register dst, const Operand &src) |
|
void | JumpIfNotValidSmiValue (Register src, Label *on_invalid, Label::Distance near_jump=Label::kFar) |
|
void | JumpIfUIntNotValidSmiValue (Register src, Label *on_invalid, Label::Distance near_jump=Label::kFar) |
|
void | JumpIfSmi (Register src, Label *on_smi, Label::Distance near_jump=Label::kFar) |
|
void | JumpIfNotSmi (Register src, Label *on_not_smi, Label::Distance near_jump=Label::kFar) |
|
void | JumpUnlessNonNegativeSmi (Register src, Label *on_not_smi, Label::Distance near_jump=Label::kFar) |
|
void | JumpIfSmiEqualsConstant (Register src, Smi *constant, Label *on_equals, Label::Distance near_jump=Label::kFar) |
|
void | JumpIfNotBothSmi (Register src1, Register src2, Label *on_not_both_smi, Label::Distance near_jump=Label::kFar) |
|
void | JumpUnlessBothNonNegativeSmi (Register src1, Register src2, Label *on_not_both_smi, Label::Distance near_jump=Label::kFar) |
|
void | SmiAddConstant (Register dst, Register src, Smi *constant) |
|
void | SmiAddConstant (const Operand &dst, Smi *constant) |
|
void | SmiAddConstant (Register dst, Register src, Smi *constant, SmiOperationExecutionMode mode, Label *bailout_label, Label::Distance near_jump=Label::kFar) |
|
void | SmiSubConstant (Register dst, Register src, Smi *constant) |
|
void | SmiSubConstant (Register dst, Register src, Smi *constant, SmiOperationExecutionMode mode, Label *bailout_label, Label::Distance near_jump=Label::kFar) |
|
void | SmiNeg (Register dst, Register src, Label *on_smi_result, Label::Distance near_jump=Label::kFar) |
|
void | SmiAdd (Register dst, Register src1, Register src2, Label *on_not_smi_result, Label::Distance near_jump=Label::kFar) |
|
void | SmiAdd (Register dst, Register src1, const Operand &src2, Label *on_not_smi_result, Label::Distance near_jump=Label::kFar) |
|
void | SmiAdd (Register dst, Register src1, Register src2) |
|
void | SmiSub (Register dst, Register src1, Register src2, Label *on_not_smi_result, Label::Distance near_jump=Label::kFar) |
|
void | SmiSub (Register dst, Register src1, const Operand &src2, Label *on_not_smi_result, Label::Distance near_jump=Label::kFar) |
|
void | SmiSub (Register dst, Register src1, Register src2) |
|
void | SmiSub (Register dst, Register src1, const Operand &src2) |
|
void | SmiMul (Register dst, Register src1, Register src2, Label *on_not_smi_result, Label::Distance near_jump=Label::kFar) |
|
void | SmiDiv (Register dst, Register src1, Register src2, Label *on_not_smi_result, Label::Distance near_jump=Label::kFar) |
|
void | SmiMod (Register dst, Register src1, Register src2, Label *on_not_smi_result, Label::Distance near_jump=Label::kFar) |
|
void | SmiNot (Register dst, Register src) |
|
void | SmiAnd (Register dst, Register src1, Register src2) |
|
void | SmiOr (Register dst, Register src1, Register src2) |
|
void | SmiXor (Register dst, Register src1, Register src2) |
|
void | SmiAndConstant (Register dst, Register src1, Smi *constant) |
|
void | SmiOrConstant (Register dst, Register src1, Smi *constant) |
|
void | SmiXorConstant (Register dst, Register src1, Smi *constant) |
|
void | SmiShiftLeftConstant (Register dst, Register src, int shift_value) |
|
void | SmiShiftLogicalRightConstant (Register dst, Register src, int shift_value, Label *on_not_smi_result, Label::Distance near_jump=Label::kFar) |
|
void | SmiShiftArithmeticRightConstant (Register dst, Register src, int shift_value) |
|
void | SmiShiftLeft (Register dst, Register src1, Register src2) |
|
void | SmiShiftLogicalRight (Register dst, Register src1, Register src2, Label *on_not_smi_result, Label::Distance near_jump=Label::kFar) |
|
void | SmiShiftArithmeticRight (Register dst, Register src1, Register src2) |
|
void | SelectNonSmi (Register dst, Register src1, Register src2, Label *on_not_smis, Label::Distance near_jump=Label::kFar) |
|
SmiIndex | SmiToIndex (Register dst, Register src, int shift) |
|
SmiIndex | SmiToNegativeIndex (Register dst, Register src, int shift) |
|
void | AddSmiField (Register dst, const Operand &src) |
|
void | Move (Register dst, Smi *source) |
|
void | Move (const Operand &dst, Smi *source) |
|
void | Push (Smi *smi) |
|
void | PushInt64AsTwoSmis (Register src, Register scratch=kScratchRegister) |
|
void | PopInt64AsTwoSmis (Register dst, Register scratch=kScratchRegister) |
|
void | Test (const Operand &dst, Smi *source) |
|
void | LookupNumberStringCache (Register object, Register result, Register scratch1, Register scratch2, Label *not_found) |
|
void | JumpIfNotString (Register object, Register object_map, Label *not_string, Label::Distance near_jump=Label::kFar) |
|
void | JumpIfNotBothSequentialAsciiStrings (Register first_object, Register second_object, Register scratch1, Register scratch2, Label *on_not_both_flat_ascii, Label::Distance near_jump=Label::kFar) |
|
void | JumpIfInstanceTypeIsNotSequentialAscii (Register instance_type, Register scratch, Label *on_not_flat_ascii_string, Label::Distance near_jump=Label::kFar) |
|
void | JumpIfBothInstanceTypesAreNotSequentialAscii (Register first_object_instance_type, Register second_object_instance_type, Register scratch1, Register scratch2, Label *on_fail, Label::Distance near_jump=Label::kFar) |
|
void | EmitSeqStringSetCharCheck (Register string, Register index, Register value, uint32_t encoding_mask) |
|
void | JumpIfNotUniqueName (Register reg, Label *not_unique_name, Label::Distance distance=Label::kFar) |
|
void | JumpIfNotUniqueName (Operand operand, Label *not_unique_name, Label::Distance distance=Label::kFar) |
|
void | Load (Register dst, const Operand &src, Representation r) |
|
void | Store (const Operand &dst, Register src, Representation r) |
|
void | Set (Register dst, int64_t x) |
|
void | Set (const Operand &dst, intptr_t x) |
|
void | Cvtlsi2sd (XMMRegister dst, Register src) |
|
void | Cvtlsi2sd (XMMRegister dst, const Operand &src) |
|
void | Move (Register target, Register source) |
|
void | TestBit (const Operand &dst, int bit_index) |
|
void | Move (Register dst, Handle< Object > source) |
|
void | Move (const Operand &dst, Handle< Object > source) |
|
void | Cmp (Register dst, Handle< Object > source) |
|
void | Cmp (const Operand &dst, Handle< Object > source) |
|
void | Cmp (Register dst, Smi *src) |
|
void | Cmp (const Operand &dst, Smi *src) |
|
void | Push (Handle< Object > source) |
|
void | MoveHeapObject (Register result, Handle< Object > object) |
|
void | LoadGlobalCell (Register dst, Handle< Cell > cell) |
|
void | Drop (int stack_elements) |
|
void | Call (Label *target) |
|
void | Push (Register src) |
|
void | Push (const Operand &src) |
|
void | Push (Immediate value) |
|
void | PushImm32 (int32_t imm32) |
|
void | Pop (Register dst) |
|
void | Pop (const Operand &dst) |
|
void | PushReturnAddressFrom (Register src) |
|
void | PopReturnAddressTo (Register dst) |
|
void | Move (Register dst, ExternalReference ext) |
|
void | Move (Register dst, void *ptr, RelocInfo::Mode rmode) |
|
void | Move (Register dst, Handle< Object > value, RelocInfo::Mode rmode) |
|
void | Jump (Address destination, RelocInfo::Mode rmode) |
|
void | Jump (ExternalReference ext) |
|
void | Jump (const Operand &op) |
|
void | Jump (Handle< Code > code_object, RelocInfo::Mode rmode) |
|
void | Call (Address destination, RelocInfo::Mode rmode) |
|
void | Call (ExternalReference ext) |
|
void | Call (const Operand &op) |
|
void | Call (Handle< Code > code_object, RelocInfo::Mode rmode, TypeFeedbackId ast_id=TypeFeedbackId::None()) |
|
int | CallSize (Address destination) |
|
int | CallSize (ExternalReference ext) |
|
int | CallSize (Handle< Code > code_object) |
|
int | CallSize (Register target) |
|
int | CallSize (const Operand &target) |
|
void | CallSelf () |
|
void | Pushad () |
|
void | Popad () |
|
void | Dropad () |
|
void | CmpObjectType (Register heap_object, InstanceType type, Register map) |
|
void | CmpInstanceType (Register map, InstanceType type) |
|
void | CheckFastElements (Register map, Label *fail, Label::Distance distance=Label::kFar) |
|
void | CheckFastObjectElements (Register map, Label *fail, Label::Distance distance=Label::kFar) |
|
void | CheckFastSmiElements (Register map, Label *fail, Label::Distance distance=Label::kFar) |
|
void | StoreNumberToDoubleElements (Register maybe_number, Register elements, Register index, XMMRegister xmm_scratch, Label *fail, int elements_offset=0) |
|
void | CompareMap (Register obj, Handle< Map > map) |
|
void | CheckMap (Register obj, Handle< Map > map, Label *fail, SmiCheckType smi_check_type) |
|
void | DispatchMap (Register obj, Register unused, Handle< Map > map, Handle< Code > success, SmiCheckType smi_check_type) |
|
Condition | IsObjectStringType (Register heap_object, Register map, Register instance_type) |
|
Condition | IsObjectNameType (Register heap_object, Register map, Register instance_type) |
|
void | FCmp () |
|
void | ClampUint8 (Register reg) |
|
void | ClampDoubleToUint8 (XMMRegister input_reg, XMMRegister temp_xmm_reg, Register result_reg) |
|
void | SlowTruncateToI (Register result_reg, Register input_reg, int offset=HeapNumber::kValueOffset-kHeapObjectTag) |
|
void | TruncateHeapNumberToI (Register result_reg, Register input_reg) |
|
void | TruncateDoubleToI (Register result_reg, XMMRegister input_reg) |
|
void | DoubleToI (Register result_reg, XMMRegister input_reg, XMMRegister scratch, MinusZeroMode minus_zero_mode, Label *conversion_failed, Label::Distance dst=Label::kFar) |
|
void | TaggedToI (Register result_reg, Register input_reg, XMMRegister temp, MinusZeroMode minus_zero_mode, Label *lost_precision, Label::Distance dst=Label::kFar) |
|
void | LoadUint32 (XMMRegister dst, Register src, XMMRegister scratch) |
|
void | LoadInstanceDescriptors (Register map, Register descriptors) |
|
void | EnumLength (Register dst, Register map) |
|
void | NumberOfOwnDescriptors (Register dst, Register map) |
|
template<typename Field > |
void | DecodeField (Register reg) |
|
void | AssertNumber (Register object) |
|
void | AssertNotSmi (Register object) |
|
void | AssertSmi (Register object) |
|
void | AssertSmi (const Operand &object) |
|
void | AssertZeroExtended (Register reg) |
|
void | AssertString (Register object) |
|
void | AssertName (Register object) |
|
void | AssertUndefinedOrAllocationSite (Register object) |
|
void | AssertRootValue (Register src, Heap::RootListIndex root_value_index, BailoutReason reason) |
|
void | PushTryHandler (StackHandler::Kind kind, int handler_index) |
|
void | PopTryHandler () |
|
void | Throw (Register value) |
|
void | ThrowUncatchable (Register value) |
|
void | Throw (BailoutReason reason) |
|
void | ThrowIf (Condition cc, BailoutReason reason) |
|
void | CheckAccessGlobalProxy (Register holder_reg, Register scratch, Label *miss) |
|
void | GetNumberHash (Register r0, Register scratch) |
|
void | LoadFromNumberDictionary (Label *miss, Register elements, Register key, Register r0, Register r1, Register r2, Register result) |
|
void | Allocate (int object_size, Register result, Register result_end, Register scratch, Label *gc_required, AllocationFlags flags) |
|
void | Allocate (int header_size, ScaleFactor element_size, Register element_count, Register result, Register result_end, Register scratch, Label *gc_required, AllocationFlags flags) |
|
void | Allocate (Register object_size, Register result, Register result_end, Register scratch, Label *gc_required, AllocationFlags flags) |
|
void | UndoAllocationInNewSpace (Register object) |
|
void | AllocateHeapNumber (Register result, Register scratch, Label *gc_required) |
|
void | AllocateTwoByteString (Register result, Register length, Register scratch1, Register scratch2, Register scratch3, Label *gc_required) |
|
void | AllocateAsciiString (Register result, Register length, Register scratch1, Register scratch2, Register scratch3, Label *gc_required) |
|
void | AllocateTwoByteConsString (Register result, Register scratch1, Register scratch2, Label *gc_required) |
|
void | AllocateAsciiConsString (Register result, Register scratch1, Register scratch2, Label *gc_required) |
|
void | AllocateTwoByteSlicedString (Register result, Register scratch1, Register scratch2, Label *gc_required) |
|
void | AllocateAsciiSlicedString (Register result, Register scratch1, Register scratch2, Label *gc_required) |
|
void | NegativeZeroTest (Register result, Register op, Label *then_label) |
|
void | NegativeZeroTest (CodeGenerator *cgen, Register result, Register op, JumpTarget *then_target) |
|
void | NegativeZeroTest (Register result, Register op1, Register op2, Register scratch, Label *then_label) |
|
void | TryGetFunctionPrototype (Register function, Register result, Label *miss, bool miss_on_bound_function=false) |
|
void | IllegalOperation (int num_arguments) |
|
void | IndexFromHash (Register hash, Register index) |
|
void | LoadContext (Register dst, int context_chain_length) |
|
void | LoadTransitionedArrayMapConditional (ElementsKind expected_kind, ElementsKind transitioned_kind, Register map_in_out, Register scratch, Label *no_map_match) |
|
void | LoadGlobalFunction (int index, Register function) |
|
void | LoadGlobalFunctionInitialMap (Register function, Register map) |
|
void | CallStub (CodeStub *stub, TypeFeedbackId ast_id=TypeFeedbackId::None()) |
|
void | TailCallStub (CodeStub *stub) |
|
void | StubReturn (int argc) |
|
void | CallRuntime (const Runtime::Function *f, int num_arguments, SaveFPRegsMode save_doubles=kDontSaveFPRegs) |
|
void | CallRuntimeSaveDoubles (Runtime::FunctionId id) |
|
void | CallRuntime (Runtime::FunctionId id, int num_arguments, SaveFPRegsMode save_doubles=kDontSaveFPRegs) |
|
void | CallExternalReference (const ExternalReference &ext, int num_arguments) |
|
void | TailCallExternalReference (const ExternalReference &ext, int num_arguments, int result_size) |
|
void | TailCallRuntime (Runtime::FunctionId fid, int num_arguments, int result_size) |
|
void | JumpToExternalReference (const ExternalReference &ext, int result_size) |
|
void | PrepareCallApiFunction (int arg_stack_space) |
|
void | CallApiFunctionAndReturn (Register function_address, Address thunk_address, Register thunk_last_arg, int stack_space, Operand return_value_operand, Operand *context_restore_operand) |
|
void | PrepareCallCFunction (int num_arguments) |
|
void | CallCFunction (ExternalReference function, int num_arguments) |
|
void | CallCFunction (Register function, int num_arguments) |
|
int | ArgumentStackSlotsForCFunctionCall (int num_arguments) |
|
void | Ret () |
|
void | Ret (int bytes_dropped, Register scratch) |
|
Handle< Object > | CodeObject () |
|
void | CopyBytes (Register destination, Register source, Register length, int min_length=0, Register scratch=kScratchRegister) |
|
void | InitializeFieldsWithFiller (Register start_offset, Register end_offset, Register filler) |
|
void | TruncatingDiv (Register dividend, int32_t divisor) |
|
void | SetCounter (StatsCounter *counter, int value) |
|
void | IncrementCounter (StatsCounter *counter, int value) |
|
void | DecrementCounter (StatsCounter *counter, int value) |
|
void | Assert (Condition cc, BailoutReason reason) |
|
void | AssertFastElements (Register elements) |
|
void | Check (Condition cc, BailoutReason reason) |
|
void | Abort (BailoutReason msg) |
|
void | CheckStackAlignment () |
|
void | set_generating_stub (bool value) |
|
bool | generating_stub () |
|
void | set_has_frame (bool value) |
|
bool | has_frame () |
|
bool | AllowThisStubCall (CodeStub *stub) |
|
void | EnterFrame (StackFrame::Type type) |
|
void | LeaveFrame (StackFrame::Type type) |
|
void | CheckEnumCache (Register null_value, Label *call_runtime) |
|
void | TestJSArrayForAllocationMemento (Register receiver_reg, Register scratch_reg, Label *no_memento_found) |
|
void | JumpIfJSArrayHasAllocationMemento (Register receiver_reg, Register scratch_reg, Label *memento_found) |
|
void | JumpIfDictionaryInPrototypeChain (Register object, Register scratch0, Register scratch1, Label *found) |
|
| Assembler (Isolate *isolate, void *buffer, int buffer_size) |
|
virtual | ~Assembler () |
|
void | GetCode (CodeDesc *desc) |
|
void | bind (Label *L) |
|
int | branch_offset (Label *L, bool jump_elimination_allowed) |
|
| INLINE (static Address target_pointer_address_at(Address pc)) |
|
| INLINE (static Address target_constant_pool_address_at(Address pc, ConstantPoolArray *constant_pool)) |
|
| INLINE (static Address target_address_at(Address pc, ConstantPoolArray *constant_pool)) |
|
| INLINE (static void set_target_address_at(Address pc, ConstantPoolArray *constant_pool, Address target)) |
|
| INLINE (static Address target_address_at(Address pc, Code *code)) |
|
| INLINE (static void set_target_address_at(Address pc, Code *code, Address target)) |
|
| INLINE (static Address target_address_from_return_address(Address pc)) |
|
| INLINE (static Address return_address_from_call_start(Address pc)) |
|
void | Align (int m) |
|
void | CodeTargetAlign () |
|
void | b (int branch_offset, Condition cond=al) |
|
void | bl (int branch_offset, Condition cond=al) |
|
void | blx (int branch_offset) |
|
void | blx (Register target, Condition cond=al) |
|
void | bx (Register target, Condition cond=al) |
|
void | b (Label *L, Condition cond=al) |
|
void | b (Condition cond, Label *L) |
|
void | bl (Label *L, Condition cond=al) |
|
void | bl (Condition cond, Label *L) |
|
void | blx (Label *L) |
|
void | and_ (Register dst, Register src1, const Operand &src2, SBit s=LeaveCC, Condition cond=al) |
|
void | eor (Register dst, Register src1, const Operand &src2, SBit s=LeaveCC, Condition cond=al) |
|
void | sub (Register dst, Register src1, const Operand &src2, SBit s=LeaveCC, Condition cond=al) |
|
void | sub (Register dst, Register src1, Register src2, SBit s=LeaveCC, Condition cond=al) |
|
void | rsb (Register dst, Register src1, const Operand &src2, SBit s=LeaveCC, Condition cond=al) |
|
void | add (Register dst, Register src1, const Operand &src2, SBit s=LeaveCC, Condition cond=al) |
|
void | add (Register dst, Register src1, Register src2, SBit s=LeaveCC, Condition cond=al) |
|
void | adc (Register dst, Register src1, const Operand &src2, SBit s=LeaveCC, Condition cond=al) |
|
void | sbc (Register dst, Register src1, const Operand &src2, SBit s=LeaveCC, Condition cond=al) |
|
void | rsc (Register dst, Register src1, const Operand &src2, SBit s=LeaveCC, Condition cond=al) |
|
void | tst (Register src1, const Operand &src2, Condition cond=al) |
|
void | tst (Register src1, Register src2, Condition cond=al) |
|
void | teq (Register src1, const Operand &src2, Condition cond=al) |
|
void | cmp (Register src1, const Operand &src2, Condition cond=al) |
|
void | cmp (Register src1, Register src2, Condition cond=al) |
|
void | cmp_raw_immediate (Register src1, int raw_immediate, Condition cond=al) |
|
void | cmn (Register src1, const Operand &src2, Condition cond=al) |
|
void | orr (Register dst, Register src1, const Operand &src2, SBit s=LeaveCC, Condition cond=al) |
|
void | orr (Register dst, Register src1, Register src2, SBit s=LeaveCC, Condition cond=al) |
|
void | mov (Register dst, const Operand &src, SBit s=LeaveCC, Condition cond=al) |
|
void | mov (Register dst, Register src, SBit s=LeaveCC, Condition cond=al) |
|
void | mov_label_offset (Register dst, Label *label) |
|
void | movw (Register reg, uint32_t immediate, Condition cond=al) |
|
void | movt (Register reg, uint32_t immediate, Condition cond=al) |
|
void | bic (Register dst, Register src1, const Operand &src2, SBit s=LeaveCC, Condition cond=al) |
|
void | mvn (Register dst, const Operand &src, SBit s=LeaveCC, Condition cond=al) |
|
void | mla (Register dst, Register src1, Register src2, Register srcA, SBit s=LeaveCC, Condition cond=al) |
|
void | mls (Register dst, Register src1, Register src2, Register srcA, Condition cond=al) |
|
void | sdiv (Register dst, Register src1, Register src2, Condition cond=al) |
|
void | mul (Register dst, Register src1, Register src2, SBit s=LeaveCC, Condition cond=al) |
|
void | smlal (Register dstL, Register dstH, Register src1, Register src2, SBit s=LeaveCC, Condition cond=al) |
|
void | smull (Register dstL, Register dstH, Register src1, Register src2, SBit s=LeaveCC, Condition cond=al) |
|
void | umlal (Register dstL, Register dstH, Register src1, Register src2, SBit s=LeaveCC, Condition cond=al) |
|
void | umull (Register dstL, Register dstH, Register src1, Register src2, SBit s=LeaveCC, Condition cond=al) |
|
void | clz (Register dst, Register src, Condition cond=al) |
|
void | usat (Register dst, int satpos, const Operand &src, Condition cond=al) |
|
void | ubfx (Register dst, Register src, int lsb, int width, Condition cond=al) |
|
void | sbfx (Register dst, Register src, int lsb, int width, Condition cond=al) |
|
void | bfc (Register dst, int lsb, int width, Condition cond=al) |
|
void | bfi (Register dst, Register src, int lsb, int width, Condition cond=al) |
|
void | pkhbt (Register dst, Register src1, const Operand &src2, Condition cond=al) |
|
void | pkhtb (Register dst, Register src1, const Operand &src2, Condition cond=al) |
|
void | uxtb (Register dst, const Operand &src, Condition cond=al) |
|
void | uxtab (Register dst, Register src1, const Operand &src2, Condition cond=al) |
|
void | uxtb16 (Register dst, const Operand &src, Condition cond=al) |
|
void | mrs (Register dst, SRegister s, Condition cond=al) |
|
void | msr (SRegisterFieldMask fields, const Operand &src, Condition cond=al) |
|
void | ldr (Register dst, const MemOperand &src, Condition cond=al) |
|
void | str (Register src, const MemOperand &dst, Condition cond=al) |
|
void | ldrb (Register dst, const MemOperand &src, Condition cond=al) |
|
void | strb (Register src, const MemOperand &dst, Condition cond=al) |
|
void | ldrh (Register dst, const MemOperand &src, Condition cond=al) |
|
void | strh (Register src, const MemOperand &dst, Condition cond=al) |
|
void | ldrsb (Register dst, const MemOperand &src, Condition cond=al) |
|
void | ldrsh (Register dst, const MemOperand &src, Condition cond=al) |
|
void | ldrd (Register dst1, Register dst2, const MemOperand &src, Condition cond=al) |
|
void | strd (Register src1, Register src2, const MemOperand &dst, Condition cond=al) |
|
void | pld (const MemOperand &address) |
|
void | ldm (BlockAddrMode am, Register base, RegList dst, Condition cond=al) |
|
void | stm (BlockAddrMode am, Register base, RegList src, Condition cond=al) |
|
void | stop (const char *msg, Condition cond=al, int32_t code=kDefaultStopCode) |
|
void | bkpt (uint32_t imm16) |
|
void | svc (uint32_t imm24, Condition cond=al) |
|
void | cdp (Coprocessor coproc, int opcode_1, CRegister crd, CRegister crn, CRegister crm, int opcode_2, Condition cond=al) |
|
void | cdp2 (Coprocessor coproc, int opcode_1, CRegister crd, CRegister crn, CRegister crm, int opcode_2) |
|
void | mcr (Coprocessor coproc, int opcode_1, Register rd, CRegister crn, CRegister crm, int opcode_2=0, Condition cond=al) |
|
void | mcr2 (Coprocessor coproc, int opcode_1, Register rd, CRegister crn, CRegister crm, int opcode_2=0) |
|
void | mrc (Coprocessor coproc, int opcode_1, Register rd, CRegister crn, CRegister crm, int opcode_2=0, Condition cond=al) |
|
void | mrc2 (Coprocessor coproc, int opcode_1, Register rd, CRegister crn, CRegister crm, int opcode_2=0) |
|
void | ldc (Coprocessor coproc, CRegister crd, const MemOperand &src, LFlag l=Short, Condition cond=al) |
|
void | ldc (Coprocessor coproc, CRegister crd, Register base, int option, LFlag l=Short, Condition cond=al) |
|
void | ldc2 (Coprocessor coproc, CRegister crd, const MemOperand &src, LFlag l=Short) |
|
void | ldc2 (Coprocessor coproc, CRegister crd, Register base, int option, LFlag l=Short) |
|
void | vldr (const DwVfpRegister dst, const Register base, int offset, const Condition cond=al) |
|
void | vldr (const DwVfpRegister dst, const MemOperand &src, const Condition cond=al) |
|
void | vldr (const SwVfpRegister dst, const Register base, int offset, const Condition cond=al) |
|
void | vldr (const SwVfpRegister dst, const MemOperand &src, const Condition cond=al) |
|
void | vstr (const DwVfpRegister src, const Register base, int offset, const Condition cond=al) |
|
void | vstr (const DwVfpRegister src, const MemOperand &dst, const Condition cond=al) |
|
void | vstr (const SwVfpRegister src, const Register base, int offset, const Condition cond=al) |
|
void | vstr (const SwVfpRegister src, const MemOperand &dst, const Condition cond=al) |
|
void | vldm (BlockAddrMode am, Register base, DwVfpRegister first, DwVfpRegister last, Condition cond=al) |
|
void | vstm (BlockAddrMode am, Register base, DwVfpRegister first, DwVfpRegister last, Condition cond=al) |
|
void | vldm (BlockAddrMode am, Register base, SwVfpRegister first, SwVfpRegister last, Condition cond=al) |
|
void | vstm (BlockAddrMode am, Register base, SwVfpRegister first, SwVfpRegister last, Condition cond=al) |
|
void | vmov (const DwVfpRegister dst, double imm, const Register scratch=no_reg) |
|
void | vmov (const SwVfpRegister dst, const SwVfpRegister src, const Condition cond=al) |
|
void | vmov (const DwVfpRegister dst, const DwVfpRegister src, const Condition cond=al) |
|
void | vmov (const DwVfpRegister dst, const VmovIndex index, const Register src, const Condition cond=al) |
|
void | vmov (const Register dst, const VmovIndex index, const DwVfpRegister src, const Condition cond=al) |
|
void | vmov (const DwVfpRegister dst, const Register src1, const Register src2, const Condition cond=al) |
|
void | vmov (const Register dst1, const Register dst2, const DwVfpRegister src, const Condition cond=al) |
|
void | vmov (const SwVfpRegister dst, const Register src, const Condition cond=al) |
|
void | vmov (const Register dst, const SwVfpRegister src, const Condition cond=al) |
|
void | vcvt_f64_s32 (const DwVfpRegister dst, const SwVfpRegister src, VFPConversionMode mode=kDefaultRoundToZero, const Condition cond=al) |
|
void | vcvt_f32_s32 (const SwVfpRegister dst, const SwVfpRegister src, VFPConversionMode mode=kDefaultRoundToZero, const Condition cond=al) |
|
void | vcvt_f64_u32 (const DwVfpRegister dst, const SwVfpRegister src, VFPConversionMode mode=kDefaultRoundToZero, const Condition cond=al) |
|
void | vcvt_s32_f64 (const SwVfpRegister dst, const DwVfpRegister src, VFPConversionMode mode=kDefaultRoundToZero, const Condition cond=al) |
|
void | vcvt_u32_f64 (const SwVfpRegister dst, const DwVfpRegister src, VFPConversionMode mode=kDefaultRoundToZero, const Condition cond=al) |
|
void | vcvt_f64_f32 (const DwVfpRegister dst, const SwVfpRegister src, VFPConversionMode mode=kDefaultRoundToZero, const Condition cond=al) |
|
void | vcvt_f32_f64 (const SwVfpRegister dst, const DwVfpRegister src, VFPConversionMode mode=kDefaultRoundToZero, const Condition cond=al) |
|
void | vcvt_f64_s32 (const DwVfpRegister dst, int fraction_bits, const Condition cond=al) |
|
void | vneg (const DwVfpRegister dst, const DwVfpRegister src, const Condition cond=al) |
|
void | vabs (const DwVfpRegister dst, const DwVfpRegister src, const Condition cond=al) |
|
void | vadd (const DwVfpRegister dst, const DwVfpRegister src1, const DwVfpRegister src2, const Condition cond=al) |
|
void | vsub (const DwVfpRegister dst, const DwVfpRegister src1, const DwVfpRegister src2, const Condition cond=al) |
|
void | vmul (const DwVfpRegister dst, const DwVfpRegister src1, const DwVfpRegister src2, const Condition cond=al) |
|
void | vmla (const DwVfpRegister dst, const DwVfpRegister src1, const DwVfpRegister src2, const Condition cond=al) |
|
void | vmls (const DwVfpRegister dst, const DwVfpRegister src1, const DwVfpRegister src2, const Condition cond=al) |
|
void | vdiv (const DwVfpRegister dst, const DwVfpRegister src1, const DwVfpRegister src2, const Condition cond=al) |
|
void | vcmp (const DwVfpRegister src1, const DwVfpRegister src2, const Condition cond=al) |
|
void | vcmp (const DwVfpRegister src1, const double src2, const Condition cond=al) |
|
void | vmrs (const Register dst, const Condition cond=al) |
|
void | vmsr (const Register dst, const Condition cond=al) |
|
void | vsqrt (const DwVfpRegister dst, const DwVfpRegister src, const Condition cond=al) |
|
void | vld1 (NeonSize size, const NeonListOperand &dst, const NeonMemOperand &src) |
|
void | vst1 (NeonSize size, const NeonListOperand &src, const NeonMemOperand &dst) |
|
void | vmovl (NeonDataType dt, QwNeonRegister dst, DwVfpRegister src) |
|
void | nop (int type=0) |
|
void | push (Register src, Condition cond=al) |
|
void | pop (Register dst, Condition cond=al) |
|
void | pop () |
|
void | jmp (Label *L) |
|
int | SizeOfCodeGeneratedSince (Label *label) |
|
int | InstructionsGeneratedSince (Label *label) |
|
bool | ImmediateFitsAddrMode1Instruction (int32_t imm32) |
|
bool | ImmediateFitsAddrMode2Instruction (int32_t imm32) |
|
void | RecordJSReturn () |
|
void | RecordDebugBreakSlot () |
|
void | SetRecordedAstId (TypeFeedbackId ast_id) |
|
TypeFeedbackId | RecordedAstId () |
|
void | ClearRecordedAstId () |
|
void | RecordComment (const char *msg) |
|
void | RecordConstPool (int size) |
|
void | db (uint8_t data) |
|
void | dd (uint32_t data) |
|
void | emit_code_stub_address (Code *stub) |
|
PositionsRecorder * | positions_recorder () |
|
Instr | instr_at (int pos) |
|
void | instr_at_put (int pos, Instr instr) |
|
void | BlockConstPoolFor (int instructions) |
|
void | CheckConstPool (bool force_emit, bool require_jump) |
|
MaybeObject * | AllocateConstantPool (Heap *heap) |
|
void | PopulateConstantPool (ConstantPoolArray *constant_pool) |
|
bool | can_use_constant_pool () const |
|
void | set_constant_pool_full () |
|
| Assembler (Isolate *arg_isolate, void *buffer, int buffer_size) |
|
virtual | ~Assembler () |
|
virtual void | AbortedCodeGeneration () |
|
void | Reset () |
|
void | GetCode (CodeDesc *desc) |
|
void | Align (int m) |
|
void | Unreachable () |
|
void | bind (Label *label) |
|
void | RecordRelocInfo (RelocInfo::Mode rmode, intptr_t data=0) |
|
uint64_t | SizeOfGeneratedCode () const |
|
uint64_t | SizeOfCodeGeneratedSince (const Label *label) |
|
void | AssertSizeOfCodeGeneratedSince (const Label *label, ptrdiff_t size) |
|
int | InstructionsGeneratedSince (const Label *label) |
|
void | StartBlockConstPool () |
|
void | EndBlockConstPool () |
|
bool | is_const_pool_blocked () const |
|
void | ConstantPoolMarker (uint32_t size) |
|
void | EmitPoolGuard () |
|
void | ConstantPoolGuard () |
|
void | StartBlockVeneerPool () |
|
void | EndBlockVeneerPool () |
|
bool | is_veneer_pool_blocked () const |
|
void | StartBlockPools () |
|
void | EndBlockPools () |
|
PositionsRecorder * | positions_recorder () |
|
void | RecordComment (const char *msg) |
|
int | buffer_space () const |
|
void | RecordJSReturn () |
|
void | RecordDebugBreakSlot () |
|
void | RecordConstPool (int size) |
|
void | br (const Register &xn) |
|
void | blr (const Register &xn) |
|
void | ret (const Register &xn=lr) |
|
void | b (Label *label) |
|
void | b (Label *label, Condition cond) |
|
void | b (int imm26) |
|
void | b (int imm19, Condition cond) |
|
void | bl (Label *label) |
|
void | bl (int imm26) |
|
void | cbz (const Register &rt, Label *label) |
|
void | cbz (const Register &rt, int imm19) |
|
void | cbnz (const Register &rt, Label *label) |
|
void | cbnz (const Register &rt, int imm19) |
|
void | tbz (const Register &rt, unsigned bit_pos, Label *label) |
|
void | tbz (const Register &rt, unsigned bit_pos, int imm14) |
|
void | tbnz (const Register &rt, unsigned bit_pos, Label *label) |
|
void | tbnz (const Register &rt, unsigned bit_pos, int imm14) |
|
void | adr (const Register &rd, Label *label) |
|
void | adr (const Register &rd, int imm21) |
|
void | add (const Register &rd, const Register &rn, const Operand &operand) |
|
void | adds (const Register &rd, const Register &rn, const Operand &operand) |
|
void | cmn (const Register &rn, const Operand &operand) |
|
void | sub (const Register &rd, const Register &rn, const Operand &operand) |
|
void | subs (const Register &rd, const Register &rn, const Operand &operand) |
|
void | cmp (const Register &rn, const Operand &operand) |
|
void | neg (const Register &rd, const Operand &operand) |
|
void | negs (const Register &rd, const Operand &operand) |
|
void | adc (const Register &rd, const Register &rn, const Operand &operand) |
|
void | adcs (const Register &rd, const Register &rn, const Operand &operand) |
|
void | sbc (const Register &rd, const Register &rn, const Operand &operand) |
|
void | sbcs (const Register &rd, const Register &rn, const Operand &operand) |
|
void | ngc (const Register &rd, const Operand &operand) |
|
void | ngcs (const Register &rd, const Operand &operand) |
|
void | and_ (const Register &rd, const Register &rn, const Operand &operand) |
|
void | ands (const Register &rd, const Register &rn, const Operand &operand) |
|
void | tst (const Register &rn, const Operand &operand) |
|
void | bic (const Register &rd, const Register &rn, const Operand &operand) |
|
void | bics (const Register &rd, const Register &rn, const Operand &operand) |
|
void | orr (const Register &rd, const Register &rn, const Operand &operand) |
|
void | orn (const Register &rd, const Register &rn, const Operand &operand) |
|
void | eor (const Register &rd, const Register &rn, const Operand &operand) |
|
void | eon (const Register &rd, const Register &rn, const Operand &operand) |
|
void | lslv (const Register &rd, const Register &rn, const Register &rm) |
|
void | lsrv (const Register &rd, const Register &rn, const Register &rm) |
|
void | asrv (const Register &rd, const Register &rn, const Register &rm) |
|
void | rorv (const Register &rd, const Register &rn, const Register &rm) |
|
void | bfm (const Register &rd, const Register &rn, unsigned immr, unsigned imms) |
|
void | sbfm (const Register &rd, const Register &rn, unsigned immr, unsigned imms) |
|
void | ubfm (const Register &rd, const Register &rn, unsigned immr, unsigned imms) |
|
void | bfi (const Register &rd, const Register &rn, unsigned lsb, unsigned width) |
|
void | bfxil (const Register &rd, const Register &rn, unsigned lsb, unsigned width) |
|
void | asr (const Register &rd, const Register &rn, unsigned shift) |
|
void | sbfiz (const Register &rd, const Register &rn, unsigned lsb, unsigned width) |
|
void | sbfx (const Register &rd, const Register &rn, unsigned lsb, unsigned width) |
|
void | sxtb (const Register &rd, const Register &rn) |
|
void | sxth (const Register &rd, const Register &rn) |
|
void | sxtw (const Register &rd, const Register &rn) |
|
void | lsl (const Register &rd, const Register &rn, unsigned shift) |
|
void | lsr (const Register &rd, const Register &rn, unsigned shift) |
|
void | ubfiz (const Register &rd, const Register &rn, unsigned lsb, unsigned width) |
|
void | ubfx (const Register &rd, const Register &rn, unsigned lsb, unsigned width) |
|
void | uxtb (const Register &rd, const Register &rn) |
|
void | uxth (const Register &rd, const Register &rn) |
|
void | uxtw (const Register &rd, const Register &rn) |
|
void | extr (const Register &rd, const Register &rn, const Register &rm, unsigned lsb) |
|
void | csel (const Register &rd, const Register &rn, const Register &rm, Condition cond) |
|
void | csinc (const Register &rd, const Register &rn, const Register &rm, Condition cond) |
|
void | csinv (const Register &rd, const Register &rn, const Register &rm, Condition cond) |
|
void | csneg (const Register &rd, const Register &rn, const Register &rm, Condition cond) |
|
void | cset (const Register &rd, Condition cond) |
|
void | csetm (const Register &rd, Condition cond) |
|
void | cinc (const Register &rd, const Register &rn, Condition cond) |
|
void | cinv (const Register &rd, const Register &rn, Condition cond) |
|
void | cneg (const Register &rd, const Register &rn, Condition cond) |
|
void | ror (const Register &rd, const Register &rs, unsigned shift) |
|
void | ccmn (const Register &rn, const Operand &operand, StatusFlags nzcv, Condition cond) |
|
void | ccmp (const Register &rn, const Operand &operand, StatusFlags nzcv, Condition cond) |
|
void | mul (const Register &rd, const Register &rn, const Register &rm) |
|
void | madd (const Register &rd, const Register &rn, const Register &rm, const Register &ra) |
|
void | mneg (const Register &rd, const Register &rn, const Register &rm) |
|
void | msub (const Register &rd, const Register &rn, const Register &rm, const Register &ra) |
|
void | smull (const Register &rd, const Register &rn, const Register &rm) |
|
void | smulh (const Register &rd, const Register &rn, const Register &rm) |
|
void | smaddl (const Register &rd, const Register &rn, const Register &rm, const Register &ra) |
|
void | umaddl (const Register &rd, const Register &rn, const Register &rm, const Register &ra) |
|
void | smsubl (const Register &rd, const Register &rn, const Register &rm, const Register &ra) |
|
void | umsubl (const Register &rd, const Register &rn, const Register &rm, const Register &ra) |
|
void | sdiv (const Register &rd, const Register &rn, const Register &rm) |
|
void | udiv (const Register &rd, const Register &rn, const Register &rm) |
|
void | rbit (const Register &rd, const Register &rn) |
|
void | rev16 (const Register &rd, const Register &rn) |
|
void | rev32 (const Register &rd, const Register &rn) |
|
void | rev (const Register &rd, const Register &rn) |
|
void | clz (const Register &rd, const Register &rn) |
|
void | cls (const Register &rd, const Register &rn) |
|
void | LoadLiteral (const CPURegister &rt, int offset_from_pc) |
|
void | ldr (const CPURegister &rt, const MemOperand &src) |
|
void | str (const CPURegister &rt, const MemOperand &dst) |
|
void | ldrsw (const Register &rt, const MemOperand &src) |
|
void | ldrb (const Register &rt, const MemOperand &src) |
|
void | strb (const Register &rt, const MemOperand &dst) |
|
void | ldrsb (const Register &rt, const MemOperand &src) |
|
void | ldrh (const Register &rt, const MemOperand &src) |
|
void | strh (const Register &rt, const MemOperand &dst) |
|
void | ldrsh (const Register &rt, const MemOperand &src) |
|
void | ldp (const CPURegister &rt, const CPURegister &rt2, const MemOperand &src) |
|
void | stp (const CPURegister &rt, const CPURegister &rt2, const MemOperand &dst) |
|
void | ldpsw (const Register &rt, const Register &rt2, const MemOperand &src) |
|
void | ldnp (const CPURegister &rt, const CPURegister &rt2, const MemOperand &src) |
|
void | stnp (const CPURegister &rt, const CPURegister &rt2, const MemOperand &dst) |
|
void | ldr (const Register &rt, uint64_t imm) |
|
void | ldr (const FPRegister &ft, double imm) |
|
void | ldr (const FPRegister &ft, float imm) |
|
void | movk (const Register &rd, uint64_t imm, int shift=-1) |
|
void | movn (const Register &rd, uint64_t imm, int shift=-1) |
|
void | movz (const Register &rd, uint64_t imm, int shift=-1) |
|
void | brk (int code) |
|
void | hlt (int code) |
|
void | mov (const Register &rd, const Register &rn) |
|
void | mvn (const Register &rd, const Operand &operand) |
|
void | mrs (const Register &rt, SystemRegister sysreg) |
|
void | msr (SystemRegister sysreg, const Register &rt) |
|
void | hint (SystemHint code) |
|
void | dmb (BarrierDomain domain, BarrierType type) |
|
void | dsb (BarrierDomain domain, BarrierType type) |
|
void | isb () |
|
void | nop () |
|
void | nop (NopMarkerTypes n) |
|
void | fmov (FPRegister fd, double imm) |
|
void | fmov (FPRegister fd, float imm) |
|
void | fmov (Register rd, FPRegister fn) |
|
void | fmov (FPRegister fd, Register rn) |
|
void | fmov (FPRegister fd, FPRegister fn) |
|
void | fadd (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm) |
|
void | fsub (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm) |
|
void | fmul (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm) |
|
void | fmadd (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm, const FPRegister &fa) |
|
void | fmsub (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm, const FPRegister &fa) |
|
void | fnmadd (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm, const FPRegister &fa) |
|
void | fnmsub (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm, const FPRegister &fa) |
|
void | fdiv (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm) |
|
void | fmax (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm) |
|
void | fmin (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm) |
|
void | fmaxnm (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm) |
|
void | fminnm (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm) |
|
void | fabs (const FPRegister &fd, const FPRegister &fn) |
|
void | fneg (const FPRegister &fd, const FPRegister &fn) |
|
void | fsqrt (const FPRegister &fd, const FPRegister &fn) |
|
void | frinta (const FPRegister &fd, const FPRegister &fn) |
|
void | frintn (const FPRegister &fd, const FPRegister &fn) |
|
void | frintz (const FPRegister &fd, const FPRegister &fn) |
|
void | fcmp (const FPRegister &fn, const FPRegister &fm) |
|
void | fcmp (const FPRegister &fn, double value) |
|
void | fccmp (const FPRegister &fn, const FPRegister &fm, StatusFlags nzcv, Condition cond) |
|
void | fcsel (const FPRegister &fd, const FPRegister &fn, const FPRegister &fm, Condition cond) |
|
void | FPConvertToInt (const Register &rd, const FPRegister &fn, FPIntegerConvertOp op) |
|
void | fcvt (const FPRegister &fd, const FPRegister &fn) |
|
void | fcvtau (const Register &rd, const FPRegister &fn) |
|
void | fcvtas (const Register &rd, const FPRegister &fn) |
|
void | fcvtmu (const Register &rd, const FPRegister &fn) |
|
void | fcvtms (const Register &rd, const FPRegister &fn) |
|
void | fcvtnu (const Register &rd, const FPRegister &fn) |
|
void | fcvtns (const Register &rd, const FPRegister &fn) |
|
void | fcvtzu (const Register &rd, const FPRegister &fn) |
|
void | fcvtzs (const Register &rd, const FPRegister &fn) |
|
void | scvtf (const FPRegister &fd, const Register &rn, unsigned fbits=0) |
|
void | ucvtf (const FPRegister &fd, const Register &rn, unsigned fbits=0) |
|
void | dci (Instr raw_inst) |
|
void | dc8 (uint8_t data) |
|
void | dc32 (uint32_t data) |
|
void | dc64 (uint64_t data) |
|
void | EmitStringData (const char *string) |
|
void | debug (const char *message, uint32_t code, Instr params=BREAK) |
|
void | dd (uint32_t data) |
|
void | db (uint8_t data) |
|
unsigned | num_pending_reloc_info () const |
|
Instruction * | InstructionAt (int offset) const |
|
void | CheckConstPool (bool force_emit, bool require_jump) |
|
MaybeObject * | AllocateConstantPool (Heap *heap) |
|
void | PopulateConstantPool (ConstantPoolArray *constant_pool) |
|
bool | ShouldEmitVeneer (int max_reachable_pc, int margin=kVeneerDistanceMargin) |
|
bool | ShouldEmitVeneers (int margin=kVeneerDistanceMargin) |
|
void | RecordVeneerPool (int location_offset, int size) |
|
void | EmitVeneers (bool force_emit, bool need_protection, int margin=kVeneerDistanceMargin) |
|
void | EmitVeneersGuard () |
|
void | CheckVeneerPool (bool force_emit, bool require_jump, int margin=kVeneerDistanceMargin) |
|
void | LoadRelocated (const CPURegister &rt, const Operand &operand) |
|
| Assembler (Isolate *isolate, void *buffer, int buffer_size) |
|
virtual | ~Assembler () |
|
void | GetCode (CodeDesc *desc) |
|
void | Align (int m) |
|
void | Nop (int bytes=1) |
|
void | CodeTargetAlign () |
|
void | pushad () |
|
void | popad () |
|
void | pushfd () |
|
void | popfd () |
|
void | push (const Immediate &x) |
|
void | push_imm32 (int32_t imm32) |
|
void | push (Register src) |
|
void | push (const Operand &src) |
|
void | pop (Register dst) |
|
void | pop (const Operand &dst) |
|
void | enter (const Immediate &size) |
|
void | leave () |
|
void | mov_b (Register dst, Register src) |
|
void | mov_b (Register dst, const Operand &src) |
|
void | mov_b (Register dst, int8_t imm8) |
|
void | mov_b (const Operand &dst, int8_t imm8) |
|
void | mov_b (const Operand &dst, Register src) |
|
void | mov_w (Register dst, const Operand &src) |
|
void | mov_w (const Operand &dst, Register src) |
|
void | mov_w (const Operand &dst, int16_t imm16) |
|
void | mov (Register dst, int32_t imm32) |
|
void | mov (Register dst, const Immediate &x) |
|
void | mov (Register dst, Handle< Object > handle) |
|
void | mov (Register dst, const Operand &src) |
|
void | mov (Register dst, Register src) |
|
void | mov (const Operand &dst, const Immediate &x) |
|
void | mov (const Operand &dst, Handle< Object > handle) |
|
void | mov (const Operand &dst, Register src) |
|
void | movsx_b (Register dst, Register src) |
|
void | movsx_b (Register dst, const Operand &src) |
|
void | movsx_w (Register dst, Register src) |
|
void | movsx_w (Register dst, const Operand &src) |
|
void | movzx_b (Register dst, Register src) |
|
void | movzx_b (Register dst, const Operand &src) |
|
void | movzx_w (Register dst, Register src) |
|
void | movzx_w (Register dst, const Operand &src) |
|
void | cmov (Condition cc, Register dst, Register src) |
|
void | cmov (Condition cc, Register dst, const Operand &src) |
|
void | cld () |
|
void | rep_movs () |
|
void | rep_stos () |
|
void | stos () |
|
void | xchg (Register dst, Register src) |
|
void | adc (Register dst, int32_t imm32) |
|
void | adc (Register dst, const Operand &src) |
|
void | add (Register dst, Register src) |
|
void | add (Register dst, const Operand &src) |
|
void | add (const Operand &dst, Register src) |
|
void | add (Register dst, const Immediate &imm) |
|
void | add (const Operand &dst, const Immediate &x) |
|
void | and_ (Register dst, int32_t imm32) |
|
void | and_ (Register dst, const Immediate &x) |
|
void | and_ (Register dst, Register src) |
|
void | and_ (Register dst, const Operand &src) |
|
void | and_ (const Operand &dst, Register src) |
|
void | and_ (const Operand &dst, const Immediate &x) |
|
void | cmpb (Register reg, int8_t imm8) |
|
void | cmpb (const Operand &op, int8_t imm8) |
|
void | cmpb (Register reg, const Operand &op) |
|
void | cmpb (const Operand &op, Register reg) |
|
void | cmpb_al (const Operand &op) |
|
void | cmpw_ax (const Operand &op) |
|
void | cmpw (const Operand &op, Immediate imm16) |
|
void | cmp (Register reg, int32_t imm32) |
|
void | cmp (Register reg, Handle< Object > handle) |
|
void | cmp (Register reg0, Register reg1) |
|
void | cmp (Register reg, const Operand &op) |
|
void | cmp (Register reg, const Immediate &imm) |
|
void | cmp (const Operand &op, const Immediate &imm) |
|
void | cmp (const Operand &op, Handle< Object > handle) |
|
void | dec_b (Register dst) |
|
void | dec_b (const Operand &dst) |
|
void | dec (Register dst) |
|
void | dec (const Operand &dst) |
|
void | cdq () |
|
void | idiv (Register src) |
|
void | imul (Register src) |
|
void | imul (Register dst, Register src) |
|
void | imul (Register dst, const Operand &src) |
|
void | imul (Register dst, Register src, int32_t imm32) |
|
void | inc (Register dst) |
|
void | inc (const Operand &dst) |
|
void | lea (Register dst, const Operand &src) |
|
void | mul (Register src) |
|
void | neg (Register dst) |
|
void | not_ (Register dst) |
|
void | or_ (Register dst, int32_t imm32) |
|
void | or_ (Register dst, Register src) |
|
void | or_ (Register dst, const Operand &src) |
|
void | or_ (const Operand &dst, Register src) |
|
void | or_ (Register dst, const Immediate &imm) |
|
void | or_ (const Operand &dst, const Immediate &x) |
|
void | rcl (Register dst, uint8_t imm8) |
|
void | rcr (Register dst, uint8_t imm8) |
|
void | ror (Register dst, uint8_t imm8) |
|
void | ror_cl (Register dst) |
|
void | sar (Register dst, uint8_t imm8) |
|
void | sar_cl (Register dst) |
|
void | sbb (Register dst, const Operand &src) |
|
void | shld (Register dst, Register src) |
|
void | shld (Register dst, const Operand &src) |
|
void | shl (Register dst, uint8_t imm8) |
|
void | shl_cl (Register dst) |
|
void | shrd (Register dst, Register src) |
|
void | shrd (Register dst, const Operand &src) |
|
void | shr (Register dst, uint8_t imm8) |
|
void | shr_cl (Register dst) |
|
void | sub (Register dst, const Immediate &imm) |
|
void | sub (const Operand &dst, const Immediate &x) |
|
void | sub (Register dst, Register src) |
|
void | sub (Register dst, const Operand &src) |
|
void | sub (const Operand &dst, Register src) |
|
void | test (Register reg, const Immediate &imm) |
|
void | test (Register reg0, Register reg1) |
|
void | test (Register reg, const Operand &op) |
|
void | test_b (Register reg, const Operand &op) |
|
void | test (const Operand &op, const Immediate &imm) |
|
void | test_b (Register reg, uint8_t imm8) |
|
void | test_b (const Operand &op, uint8_t imm8) |
|
void | xor_ (Register dst, int32_t imm32) |
|
void | xor_ (Register dst, Register src) |
|
void | xor_ (Register dst, const Operand &src) |
|
void | xor_ (const Operand &dst, Register src) |
|
void | xor_ (Register dst, const Immediate &imm) |
|
void | xor_ (const Operand &dst, const Immediate &x) |
|
void | bt (const Operand &dst, Register src) |
|
void | bts (Register dst, Register src) |
|
void | bts (const Operand &dst, Register src) |
|
void | bsr (Register dst, Register src) |
|
void | bsr (Register dst, const Operand &src) |
|
void | hlt () |
|
void | int3 () |
|
void | nop () |
|
void | ret (int imm16) |
|
void | bind (Label *L) |
|
void | call (Label *L) |
|
void | call (byte *entry, RelocInfo::Mode rmode) |
|
int | CallSize (const Operand &adr) |
|
void | call (Register reg) |
|
void | call (const Operand &adr) |
|
int | CallSize (Handle< Code > code, RelocInfo::Mode mode) |
|
void | call (Handle< Code > code, RelocInfo::Mode rmode, TypeFeedbackId id=TypeFeedbackId::None()) |
|
void | jmp (Label *L, Label::Distance distance=Label::kFar) |
|
void | jmp (byte *entry, RelocInfo::Mode rmode) |
|
void | jmp (Register reg) |
|
void | jmp (const Operand &adr) |
|
void | jmp (Handle< Code > code, RelocInfo::Mode rmode) |
|
void | j (Condition cc, Label *L, Label::Distance distance=Label::kFar) |
|
void | j (Condition cc, byte *entry, RelocInfo::Mode rmode) |
|
void | j (Condition cc, Handle< Code > code) |
|
void | fld (int i) |
|
void | fstp (int i) |
|
void | fld1 () |
|
void | fldz () |
|
void | fldpi () |
|
void | fldln2 () |
|
void | fld_s (const Operand &adr) |
|
void | fld_d (const Operand &adr) |
|
void | fstp_s (const Operand &adr) |
|
void | fst_s (const Operand &adr) |
|
void | fstp_d (const Operand &adr) |
|
void | fst_d (const Operand &adr) |
|
void | fild_s (const Operand &adr) |
|
void | fild_d (const Operand &adr) |
|
void | fist_s (const Operand &adr) |
|
void | fistp_s (const Operand &adr) |
|
void | fistp_d (const Operand &adr) |
|
void | fisttp_s (const Operand &adr) |
|
void | fisttp_d (const Operand &adr) |
|
void | fabs () |
|
void | fchs () |
|
void | fcos () |
|
void | fsin () |
|
void | fptan () |
|
void | fyl2x () |
|
void | f2xm1 () |
|
void | fscale () |
|
void | fninit () |
|
void | fadd (int i) |
|
void | fadd_i (int i) |
|
void | fsub (int i) |
|
void | fsub_i (int i) |
|
void | fmul (int i) |
|
void | fmul_i (int i) |
|
void | fdiv (int i) |
|
void | fdiv_i (int i) |
|
void | fisub_s (const Operand &adr) |
|
void | faddp (int i=1) |
|
void | fsubp (int i=1) |
|
void | fsubrp (int i=1) |
|
void | fmulp (int i=1) |
|
void | fdivp (int i=1) |
|
void | fprem () |
|
void | fprem1 () |
|
void | fxch (int i=1) |
|
void | fincstp () |
|
void | ffree (int i=0) |
|
void | ftst () |
|
void | fucomp (int i) |
|
void | fucompp () |
|
void | fucomi (int i) |
|
void | fucomip () |
|
void | fcompp () |
|
void | fnstsw_ax () |
|
void | fwait () |
|
void | fnclex () |
|
void | frndint () |
|
void | sahf () |
|
void | setcc (Condition cc, Register reg) |
|
void | cpuid () |
|
void | movaps (XMMRegister dst, XMMRegister src) |
|
void | shufps (XMMRegister dst, XMMRegister src, byte imm8) |
|
void | andps (XMMRegister dst, const Operand &src) |
|
void | andps (XMMRegister dst, XMMRegister src) |
|
void | xorps (XMMRegister dst, const Operand &src) |
|
void | xorps (XMMRegister dst, XMMRegister src) |
|
void | orps (XMMRegister dst, const Operand &src) |
|
void | orps (XMMRegister dst, XMMRegister src) |
|
void | addps (XMMRegister dst, const Operand &src) |
|
void | addps (XMMRegister dst, XMMRegister src) |
|
void | subps (XMMRegister dst, const Operand &src) |
|
void | subps (XMMRegister dst, XMMRegister src) |
|
void | mulps (XMMRegister dst, const Operand &src) |
|
void | mulps (XMMRegister dst, XMMRegister src) |
|
void | divps (XMMRegister dst, const Operand &src) |
|
void | divps (XMMRegister dst, XMMRegister src) |
|
void | cvttss2si (Register dst, const Operand &src) |
|
void | cvttss2si (Register dst, XMMRegister src) |
|
void | cvttsd2si (Register dst, const Operand &src) |
|
void | cvtsd2si (Register dst, XMMRegister src) |
|
void | cvtsi2sd (XMMRegister dst, Register src) |
|
void | cvtsi2sd (XMMRegister dst, const Operand &src) |
|
void | cvtss2sd (XMMRegister dst, XMMRegister src) |
|
void | cvtsd2ss (XMMRegister dst, XMMRegister src) |
|
void | addsd (XMMRegister dst, XMMRegister src) |
|
void | addsd (XMMRegister dst, const Operand &src) |
|
void | subsd (XMMRegister dst, XMMRegister src) |
|
void | mulsd (XMMRegister dst, XMMRegister src) |
|
void | mulsd (XMMRegister dst, const Operand &src) |
|
void | divsd (XMMRegister dst, XMMRegister src) |
|
void | xorpd (XMMRegister dst, XMMRegister src) |
|
void | sqrtsd (XMMRegister dst, XMMRegister src) |
|
void | andpd (XMMRegister dst, XMMRegister src) |
|
void | orpd (XMMRegister dst, XMMRegister src) |
|
void | ucomisd (XMMRegister dst, XMMRegister src) |
|
void | ucomisd (XMMRegister dst, const Operand &src) |
|
void | roundsd (XMMRegister dst, XMMRegister src, RoundingMode mode) |
|
void | movmskpd (Register dst, XMMRegister src) |
|
void | movmskps (Register dst, XMMRegister src) |
|
void | cmpltsd (XMMRegister dst, XMMRegister src) |
|
void | pcmpeqd (XMMRegister dst, XMMRegister src) |
|
void | movdqa (XMMRegister dst, const Operand &src) |
|
void | movdqa (const Operand &dst, XMMRegister src) |
|
void | movdqu (XMMRegister dst, const Operand &src) |
|
void | movdqu (const Operand &dst, XMMRegister src) |
|
void | movdq (bool aligned, XMMRegister dst, const Operand &src) |
|
void | movd (XMMRegister dst, Register src) |
|
void | movd (XMMRegister dst, const Operand &src) |
|
void | movd (Register dst, XMMRegister src) |
|
void | movd (const Operand &dst, XMMRegister src) |
|
void | movsd (XMMRegister dst, XMMRegister src) |
|
void | movsd (XMMRegister dst, const Operand &src) |
|
void | movsd (const Operand &dst, XMMRegister src) |
|
void | movss (XMMRegister dst, const Operand &src) |
|
void | movss (const Operand &dst, XMMRegister src) |
|
void | movss (XMMRegister dst, XMMRegister src) |
|
void | extractps (Register dst, XMMRegister src, byte imm8) |
|
void | pand (XMMRegister dst, XMMRegister src) |
|
void | pxor (XMMRegister dst, XMMRegister src) |
|
void | por (XMMRegister dst, XMMRegister src) |
|
void | ptest (XMMRegister dst, XMMRegister src) |
|
void | psllq (XMMRegister reg, int8_t shift) |
|
void | psllq (XMMRegister dst, XMMRegister src) |
|
void | psrlq (XMMRegister reg, int8_t shift) |
|
void | psrlq (XMMRegister dst, XMMRegister src) |
|
void | pshufd (XMMRegister dst, XMMRegister src, uint8_t shuffle) |
|
void | pextrd (Register dst, XMMRegister src, int8_t offset) |
|
void | pextrd (const Operand &dst, XMMRegister src, int8_t offset) |
|
void | pinsrd (XMMRegister dst, Register src, int8_t offset) |
|
void | pinsrd (XMMRegister dst, const Operand &src, int8_t offset) |
|
void | movntdqa (XMMRegister dst, const Operand &src) |
|
void | movntdq (const Operand &dst, XMMRegister src) |
|
void | prefetch (const Operand &src, int level) |
|
void | Print () |
|
int | SizeOfCodeGeneratedSince (Label *label) |
|
void | RecordJSReturn () |
|
void | RecordDebugBreakSlot () |
|
void | RecordComment (const char *msg, bool force=false) |
|
void | db (uint8_t data) |
|
void | dd (uint32_t data) |
|
bool | buffer_overflow () const |
|
int | available_space () const |
|
PositionsRecorder * | positions_recorder () |
|
int | relocation_writer_size () |
|
byte | byte_at (int pos) |
|
void | set_byte_at (int pos, byte value) |
|
MaybeObject * | AllocateConstantPool (Heap *heap) |
|
void | PopulateConstantPool (ConstantPoolArray *constant_pool) |
|
| Assembler (Isolate *isolate, void *buffer, int buffer_size) |
|
virtual | ~Assembler () |
|
void | GetCode (CodeDesc *desc) |
|
void | bind (Label *L) |
|
bool | is_near (Label *L) |
|
int32_t | branch_offset (Label *L, bool jump_elimination_allowed) |
|
int32_t | shifted_branch_offset (Label *L, bool jump_elimination_allowed) |
|
uint32_t | jump_address (Label *L) |
|
void | label_at_put (Label *L, int at_offset) |
|
| INLINE (static Address target_address_at(Address pc, ConstantPoolArray *constant_pool)) |
|
| INLINE (static void set_target_address_at(Address pc, ConstantPoolArray *constant_pool, Address target)) |
|
| INLINE (static Address target_address_at(Address pc, Code *code)) |
|
| INLINE (static void set_target_address_at(Address pc, Code *code, Address target)) |
|
void | Align (int m) |
|
void | CodeTargetAlign () |
|
void | nop (unsigned int type=0) |
|
void | b (int16_t offset) |
|
void | b (Label *L) |
|
void | bal (int16_t offset) |
|
void | bal (Label *L) |
|
void | beq (Register rs, Register rt, int16_t offset) |
|
void | beq (Register rs, Register rt, Label *L) |
|
void | bgez (Register rs, int16_t offset) |
|
void | bgezal (Register rs, int16_t offset) |
|
void | bgtz (Register rs, int16_t offset) |
|
void | blez (Register rs, int16_t offset) |
|
void | bltz (Register rs, int16_t offset) |
|
void | bltzal (Register rs, int16_t offset) |
|
void | bne (Register rs, Register rt, int16_t offset) |
|
void | bne (Register rs, Register rt, Label *L) |
|
void | j (int32_t target) |
|
void | jal (int32_t target) |
|
void | jalr (Register rs, Register rd=ra) |
|
void | jr (Register target) |
|
void | j_or_jr (int32_t target, Register rs) |
|
void | jal_or_jalr (int32_t target, Register rs) |
|
void | addu (Register rd, Register rs, Register rt) |
|
void | subu (Register rd, Register rs, Register rt) |
|
void | mult (Register rs, Register rt) |
|
void | multu (Register rs, Register rt) |
|
void | div (Register rs, Register rt) |
|
void | divu (Register rs, Register rt) |
|
void | mul (Register rd, Register rs, Register rt) |
|
void | addiu (Register rd, Register rs, int32_t j) |
|
void | and_ (Register rd, Register rs, Register rt) |
|
void | or_ (Register rd, Register rs, Register rt) |
|
void | xor_ (Register rd, Register rs, Register rt) |
|
void | nor (Register rd, Register rs, Register rt) |
|
void | andi (Register rd, Register rs, int32_t j) |
|
void | ori (Register rd, Register rs, int32_t j) |
|
void | xori (Register rd, Register rs, int32_t j) |
|
void | lui (Register rd, int32_t j) |
|
void | sll (Register rd, Register rt, uint16_t sa, bool coming_from_nop=false) |
|
void | sllv (Register rd, Register rt, Register rs) |
|
void | srl (Register rd, Register rt, uint16_t sa) |
|
void | srlv (Register rd, Register rt, Register rs) |
|
void | sra (Register rt, Register rd, uint16_t sa) |
|
void | srav (Register rt, Register rd, Register rs) |
|
void | rotr (Register rd, Register rt, uint16_t sa) |
|
void | rotrv (Register rd, Register rt, Register rs) |
|
void | lb (Register rd, const MemOperand &rs) |
|
void | lbu (Register rd, const MemOperand &rs) |
|
void | lh (Register rd, const MemOperand &rs) |
|
void | lhu (Register rd, const MemOperand &rs) |
|
void | lw (Register rd, const MemOperand &rs) |
|
void | lwl (Register rd, const MemOperand &rs) |
|
void | lwr (Register rd, const MemOperand &rs) |
|
void | sb (Register rd, const MemOperand &rs) |
|
void | sh (Register rd, const MemOperand &rs) |
|
void | sw (Register rd, const MemOperand &rs) |
|
void | swl (Register rd, const MemOperand &rs) |
|
void | swr (Register rd, const MemOperand &rs) |
|
void | pref (int32_t hint, const MemOperand &rs) |
|
void | break_ (uint32_t code, bool break_as_stop=false) |
|
void | stop (const char *msg, uint32_t code=kMaxStopCode) |
|
void | tge (Register rs, Register rt, uint16_t code) |
|
void | tgeu (Register rs, Register rt, uint16_t code) |
|
void | tlt (Register rs, Register rt, uint16_t code) |
|
void | tltu (Register rs, Register rt, uint16_t code) |
|
void | teq (Register rs, Register rt, uint16_t code) |
|
void | tne (Register rs, Register rt, uint16_t code) |
|
void | mfhi (Register rd) |
|
void | mflo (Register rd) |
|
void | slt (Register rd, Register rs, Register rt) |
|
void | sltu (Register rd, Register rs, Register rt) |
|
void | slti (Register rd, Register rs, int32_t j) |
|
void | sltiu (Register rd, Register rs, int32_t j) |
|
void | movz (Register rd, Register rs, Register rt) |
|
void | movn (Register rd, Register rs, Register rt) |
|
void | movt (Register rd, Register rs, uint16_t cc=0) |
|
void | movf (Register rd, Register rs, uint16_t cc=0) |
|
void | clz (Register rd, Register rs) |
|
void | ins_ (Register rt, Register rs, uint16_t pos, uint16_t size) |
|
void | ext_ (Register rt, Register rs, uint16_t pos, uint16_t size) |
|
void | lwc1 (FPURegister fd, const MemOperand &src) |
|
void | ldc1 (FPURegister fd, const MemOperand &src) |
|
void | swc1 (FPURegister fs, const MemOperand &dst) |
|
void | sdc1 (FPURegister fs, const MemOperand &dst) |
|
void | mtc1 (Register rt, FPURegister fs) |
|
void | mfc1 (Register rt, FPURegister fs) |
|
void | ctc1 (Register rt, FPUControlRegister fs) |
|
void | cfc1 (Register rt, FPUControlRegister fs) |
|
void | add_d (FPURegister fd, FPURegister fs, FPURegister ft) |
|
void | sub_d (FPURegister fd, FPURegister fs, FPURegister ft) |
|
void | mul_d (FPURegister fd, FPURegister fs, FPURegister ft) |
|
void | madd_d (FPURegister fd, FPURegister fr, FPURegister fs, FPURegister ft) |
|
void | div_d (FPURegister fd, FPURegister fs, FPURegister ft) |
|
void | abs_d (FPURegister fd, FPURegister fs) |
|
void | mov_d (FPURegister fd, FPURegister fs) |
|
void | neg_d (FPURegister fd, FPURegister fs) |
|
void | sqrt_d (FPURegister fd, FPURegister fs) |
|
void | cvt_w_s (FPURegister fd, FPURegister fs) |
|
void | cvt_w_d (FPURegister fd, FPURegister fs) |
|
void | trunc_w_s (FPURegister fd, FPURegister fs) |
|
void | trunc_w_d (FPURegister fd, FPURegister fs) |
|
void | round_w_s (FPURegister fd, FPURegister fs) |
|
void | round_w_d (FPURegister fd, FPURegister fs) |
|
void | floor_w_s (FPURegister fd, FPURegister fs) |
|
void | floor_w_d (FPURegister fd, FPURegister fs) |
|
void | ceil_w_s (FPURegister fd, FPURegister fs) |
|
void | ceil_w_d (FPURegister fd, FPURegister fs) |
|
void | cvt_l_s (FPURegister fd, FPURegister fs) |
|
void | cvt_l_d (FPURegister fd, FPURegister fs) |
|
void | trunc_l_s (FPURegister fd, FPURegister fs) |
|
void | trunc_l_d (FPURegister fd, FPURegister fs) |
|
void | round_l_s (FPURegister fd, FPURegister fs) |
|
void | round_l_d (FPURegister fd, FPURegister fs) |
|
void | floor_l_s (FPURegister fd, FPURegister fs) |
|
void | floor_l_d (FPURegister fd, FPURegister fs) |
|
void | ceil_l_s (FPURegister fd, FPURegister fs) |
|
void | ceil_l_d (FPURegister fd, FPURegister fs) |
|
void | cvt_s_w (FPURegister fd, FPURegister fs) |
|
void | cvt_s_l (FPURegister fd, FPURegister fs) |
|
void | cvt_s_d (FPURegister fd, FPURegister fs) |
|
void | cvt_d_w (FPURegister fd, FPURegister fs) |
|
void | cvt_d_l (FPURegister fd, FPURegister fs) |
|
void | cvt_d_s (FPURegister fd, FPURegister fs) |
|
void | c (FPUCondition cond, SecondaryField fmt, FPURegister ft, FPURegister fs, uint16_t cc=0) |
|
void | bc1f (int16_t offset, uint16_t cc=0) |
|
void | bc1f (Label *L, uint16_t cc=0) |
|
void | bc1t (int16_t offset, uint16_t cc=0) |
|
void | bc1t (Label *L, uint16_t cc=0) |
|
void | fcmp (FPURegister src1, const double src2, FPUCondition cond) |
|
int | SizeOfCodeGeneratedSince (Label *label) |
|
int | InstructionsGeneratedSince (Label *label) |
|
void | RecordJSReturn () |
|
void | RecordDebugBreakSlot () |
|
void | SetRecordedAstId (TypeFeedbackId ast_id) |
|
TypeFeedbackId | RecordedAstId () |
|
void | ClearRecordedAstId () |
|
void | RecordComment (const char *msg) |
|
void | db (uint8_t data) |
|
void | dd (uint32_t data) |
|
void | emit_code_stub_address (Code *stub) |
|
PositionsRecorder * | positions_recorder () |
|
void | BlockTrampolinePoolFor (int instructions) |
|
bool | overflow () const |
|
int | available_space () const |
|
Instr | instr_at (int pos) |
|
void | instr_at_put (int pos, Instr instr) |
|
void | CheckTrampolinePool () |
|
MaybeObject * | AllocateConstantPool (Heap *heap) |
|
void | PopulateConstantPool (ConstantPoolArray *constant_pool) |
|
| Assembler (Isolate *isolate, void *buffer, int buffer_size) |
|
virtual | ~Assembler () |
|
void | GetCode (CodeDesc *desc) |
|
Handle< Object > | code_target_object_handle_at (Address pc) |
|
Address | runtime_entry_at (Address pc) |
|
void | Align (int m) |
|
void | Nop (int bytes=1) |
|
void | CodeTargetAlign () |
|
void | pushfq () |
|
void | popfq () |
|
void | pushq (Immediate value) |
|
void | pushq_imm32 (int32_t imm32) |
|
void | pushq (Register src) |
|
void | pushq (const Operand &src) |
|
void | popq (Register dst) |
|
void | popq (const Operand &dst) |
|
void | enter (Immediate size) |
|
void | leave () |
|
void | movb (Register dst, const Operand &src) |
|
void | movb (Register dst, Immediate imm) |
|
void | movb (const Operand &dst, Register src) |
|
void | movb (const Operand &dst, Immediate imm) |
|
void | movw (Register dst, const Operand &src) |
|
void | movw (const Operand &dst, Register src) |
|
void | movw (const Operand &dst, Immediate imm) |
|
void | movl (const Operand &dst, Label *src) |
|
void | movp (Register dst, void *ptr, RelocInfo::Mode rmode) |
|
void | movq (Register dst, int64_t value) |
|
void | movq (Register dst, uint64_t value) |
|
void | movsxbq (Register dst, const Operand &src) |
|
void | movsxwq (Register dst, const Operand &src) |
|
void | movsxlq (Register dst, Register src) |
|
void | movsxlq (Register dst, const Operand &src) |
|
void | repmovsb () |
|
void | repmovsw () |
|
void | repmovsp () |
|
void | repmovsl () |
|
void | repmovsq () |
|
void | load_rax (void *ptr, RelocInfo::Mode rmode) |
|
void | load_rax (ExternalReference ext) |
|
void | cmovq (Condition cc, Register dst, Register src) |
|
void | cmovq (Condition cc, Register dst, const Operand &src) |
|
void | cmovl (Condition cc, Register dst, Register src) |
|
void | cmovl (Condition cc, Register dst, const Operand &src) |
|
void | cmpb (Register dst, Immediate src) |
|
void | cmpb_al (Immediate src) |
|
void | cmpb (Register dst, Register src) |
|
void | cmpb (Register dst, const Operand &src) |
|
void | cmpb (const Operand &dst, Register src) |
|
void | cmpb (const Operand &dst, Immediate src) |
|
void | cmpw (const Operand &dst, Immediate src) |
|
void | cmpw (Register dst, Immediate src) |
|
void | cmpw (Register dst, const Operand &src) |
|
void | cmpw (Register dst, Register src) |
|
void | cmpw (const Operand &dst, Register src) |
|
void | andb (Register dst, Immediate src) |
|
void | decb (Register dst) |
|
void | decb (const Operand &dst) |
|
void | cqo () |
|
void | cdq () |
|
void | mul (Register src) |
|
void | rcl (Register dst, Immediate imm8) |
|
void | rol (Register dst, Immediate imm8) |
|
void | roll (Register dst, Immediate imm8) |
|
void | rcr (Register dst, Immediate imm8) |
|
void | ror (Register dst, Immediate imm8) |
|
void | rorl (Register dst, Immediate imm8) |
|
void | rorl_cl (Register dst) |
|
void | shld (Register dst, Register src) |
|
void | shrd (Register dst, Register src) |
|
void | sar (Register dst, Immediate shift_amount) |
|
void | sarl (Register dst, Immediate shift_amount) |
|
void | sar_cl (Register dst) |
|
void | sarl_cl (Register dst) |
|
void | shl (Register dst, Immediate shift_amount) |
|
void | shl_cl (Register dst) |
|
void | shll_cl (Register dst) |
|
void | shll (Register dst, Immediate shift_amount) |
|
void | shr (Register dst, Immediate shift_amount) |
|
void | shr_cl (Register dst) |
|
void | shrl_cl (Register dst) |
|
void | shrl (Register dst, Immediate shift_amount) |
|
void | store_rax (void *dst, RelocInfo::Mode mode) |
|
void | store_rax (ExternalReference ref) |
|
void | subb (Register dst, Immediate src) |
|
void | testb (Register dst, Register src) |
|
void | testb (Register reg, Immediate mask) |
|
void | testb (const Operand &op, Immediate mask) |
|
void | testb (const Operand &op, Register reg) |
|
void | bt (const Operand &dst, Register src) |
|
void | bts (const Operand &dst, Register src) |
|
void | bsrl (Register dst, Register src) |
|
void | clc () |
|
void | cld () |
|
void | cpuid () |
|
void | hlt () |
|
void | int3 () |
|
void | nop () |
|
void | ret (int imm16) |
|
void | setcc (Condition cc, Register reg) |
|
void | bind (Label *L) |
|
void | call (Label *L) |
|
void | call (Address entry, RelocInfo::Mode rmode) |
|
void | call (Handle< Code > target, RelocInfo::Mode rmode=RelocInfo::CODE_TARGET, TypeFeedbackId ast_id=TypeFeedbackId::None()) |
|
void | call (Address target) |
|
void | call (Register adr) |
|
void | jmp (Label *L, Label::Distance distance=Label::kFar) |
|
void | jmp (Address entry, RelocInfo::Mode rmode) |
|
void | jmp (Handle< Code > target, RelocInfo::Mode rmode) |
|
void | jmp (Register adr) |
|
void | j (Condition cc, Label *L, Label::Distance distance=Label::kFar) |
|
void | j (Condition cc, Address entry, RelocInfo::Mode rmode) |
|
void | j (Condition cc, Handle< Code > target, RelocInfo::Mode rmode) |
|
void | fld (int i) |
|
void | fld1 () |
|
void | fldz () |
|
void | fldpi () |
|
void | fldln2 () |
|
void | fld_s (const Operand &adr) |
|
void | fld_d (const Operand &adr) |
|
void | fstp_s (const Operand &adr) |
|
void | fstp_d (const Operand &adr) |
|
void | fstp (int index) |
|
void | fild_s (const Operand &adr) |
|
void | fild_d (const Operand &adr) |
|
void | fist_s (const Operand &adr) |
|
void | fistp_s (const Operand &adr) |
|
void | fistp_d (const Operand &adr) |
|
void | fisttp_s (const Operand &adr) |
|
void | fisttp_d (const Operand &adr) |
|
void | fabs () |
|
void | fchs () |
|
void | fadd (int i) |
|
void | fsub (int i) |
|
void | fmul (int i) |
|
void | fdiv (int i) |
|
void | fisub_s (const Operand &adr) |
|
void | faddp (int i=1) |
|
void | fsubp (int i=1) |
|
void | fsubrp (int i=1) |
|
void | fmulp (int i=1) |
|
void | fdivp (int i=1) |
|
void | fprem () |
|
void | fprem1 () |
|
void | fxch (int i=1) |
|
void | fincstp () |
|
void | ffree (int i=0) |
|
void | ftst () |
|
void | fucomp (int i) |
|
void | fucompp () |
|
void | fucomi (int i) |
|
void | fucomip () |
|
void | fcompp () |
|
void | fnstsw_ax () |
|
void | fwait () |
|
void | fnclex () |
|
void | fsin () |
|
void | fcos () |
|
void | fptan () |
|
void | fyl2x () |
|
void | f2xm1 () |
|
void | fscale () |
|
void | fninit () |
|
void | frndint () |
|
void | sahf () |
|
void | movaps (XMMRegister dst, XMMRegister src) |
|
void | movss (XMMRegister dst, const Operand &src) |
|
void | movss (const Operand &dst, XMMRegister src) |
|
void | shufps (XMMRegister dst, XMMRegister src, byte imm8) |
|
void | cvttss2si (Register dst, const Operand &src) |
|
void | cvttss2si (Register dst, XMMRegister src) |
|
void | cvtlsi2ss (XMMRegister dst, Register src) |
|
void | andps (XMMRegister dst, XMMRegister src) |
|
void | andps (XMMRegister dst, const Operand &src) |
|
void | orps (XMMRegister dst, XMMRegister src) |
|
void | orps (XMMRegister dst, const Operand &src) |
|
void | xorps (XMMRegister dst, XMMRegister src) |
|
void | xorps (XMMRegister dst, const Operand &src) |
|
void | addps (XMMRegister dst, XMMRegister src) |
|
void | addps (XMMRegister dst, const Operand &src) |
|
void | subps (XMMRegister dst, XMMRegister src) |
|
void | subps (XMMRegister dst, const Operand &src) |
|
void | mulps (XMMRegister dst, XMMRegister src) |
|
void | mulps (XMMRegister dst, const Operand &src) |
|
void | divps (XMMRegister dst, XMMRegister src) |
|
void | divps (XMMRegister dst, const Operand &src) |
|
void | movmskps (Register dst, XMMRegister src) |
|
void | movd (XMMRegister dst, Register src) |
|
void | movd (Register dst, XMMRegister src) |
|
void | movq (XMMRegister dst, Register src) |
|
void | movq (Register dst, XMMRegister src) |
|
void | movq (XMMRegister dst, XMMRegister src) |
|
void | movsd (XMMRegister dst, XMMRegister src) |
|
void | movsd (const Operand &dst, XMMRegister src) |
|
void | movsd (XMMRegister dst, const Operand &src) |
|
void | movdqa (const Operand &dst, XMMRegister src) |
|
void | movdqa (XMMRegister dst, const Operand &src) |
|
void | movdqu (const Operand &dst, XMMRegister src) |
|
void | movdqu (XMMRegister dst, const Operand &src) |
|
void | movapd (XMMRegister dst, XMMRegister src) |
|
void | psllq (XMMRegister reg, byte imm8) |
|
void | cvttsd2si (Register dst, const Operand &src) |
|
void | cvttsd2si (Register dst, XMMRegister src) |
|
void | cvttsd2siq (Register dst, XMMRegister src) |
|
void | cvtlsi2sd (XMMRegister dst, const Operand &src) |
|
void | cvtlsi2sd (XMMRegister dst, Register src) |
|
void | cvtqsi2sd (XMMRegister dst, const Operand &src) |
|
void | cvtqsi2sd (XMMRegister dst, Register src) |
|
void | cvtss2sd (XMMRegister dst, XMMRegister src) |
|
void | cvtss2sd (XMMRegister dst, const Operand &src) |
|
void | cvtsd2ss (XMMRegister dst, XMMRegister src) |
|
void | cvtsd2si (Register dst, XMMRegister src) |
|
void | cvtsd2siq (Register dst, XMMRegister src) |
|
void | addsd (XMMRegister dst, XMMRegister src) |
|
void | addsd (XMMRegister dst, const Operand &src) |
|
void | subsd (XMMRegister dst, XMMRegister src) |
|
void | mulsd (XMMRegister dst, XMMRegister src) |
|
void | mulsd (XMMRegister dst, const Operand &src) |
|
void | divsd (XMMRegister dst, XMMRegister src) |
|
void | andpd (XMMRegister dst, XMMRegister src) |
|
void | orpd (XMMRegister dst, XMMRegister src) |
|
void | xorpd (XMMRegister dst, XMMRegister src) |
|
void | sqrtsd (XMMRegister dst, XMMRegister src) |
|
void | ucomisd (XMMRegister dst, XMMRegister src) |
|
void | ucomisd (XMMRegister dst, const Operand &src) |
|
void | cmpltsd (XMMRegister dst, XMMRegister src) |
|
void | movmskpd (Register dst, XMMRegister src) |
|
void | extractps (Register dst, XMMRegister src, byte imm8) |
|
void | roundsd (XMMRegister dst, XMMRegister src, RoundingMode mode) |
|
void | Print () |
|
int | SizeOfCodeGeneratedSince (Label *label) |
|
void | RecordJSReturn () |
|
void | RecordDebugBreakSlot () |
|
void | RecordComment (const char *msg, bool force=false) |
|
MaybeObject * | AllocateConstantPool (Heap *heap) |
|
void | PopulateConstantPool (ConstantPoolArray *constant_pool) |
|
void | db (uint8_t data) |
|
void | dd (uint32_t data) |
|
PositionsRecorder * | positions_recorder () |
|
bool | buffer_overflow () const |
|
int | available_space () const |
|
byte | byte_at (int pos) |
|
void | set_byte_at (int pos, byte value) |
|
| AssemblerBase (Isolate *isolate, void *buffer, int buffer_size) |
|
virtual | ~AssemblerBase () |
|
Isolate * | isolate () const |
|
int | jit_cookie () const |
|
bool | emit_debug_code () const |
|
void | set_emit_debug_code (bool value) |
|
bool | predictable_code_size () const |
|
void | set_predictable_code_size (bool value) |
|
uint64_t | enabled_cpu_features () const |
|
void | set_enabled_cpu_features (uint64_t features) |
|
bool | IsEnabled (CpuFeature f) |
|
int | pc_offset () const |
|
void * | operator new (size_t size) |
|
void | operator delete (void *p) |
|