Lines Matching refs:Register

17 const Register kReturnRegister0 = {Register::kCode_eax};
18 const Register kReturnRegister1 = {Register::kCode_edx};
19 const Register kReturnRegister2 = {Register::kCode_edi};
20 const Register kJSFunctionRegister = {Register::kCode_edi};
21 const Register kContextRegister = {Register::kCode_esi};
22 const Register kAllocateSizeRegister = {Register::kCode_edx};
23 const Register kInterpreterAccumulatorRegister = {Register::kCode_eax};
24 const Register kInterpreterBytecodeOffsetRegister = {Register::kCode_ecx};
25 const Register kInterpreterBytecodeArrayRegister = {Register::kCode_edi};
26 const Register kInterpreterDispatchTableRegister = {Register::kCode_esi};
27 const Register kJavaScriptCallArgCountRegister = {Register::kCode_eax};
28 const Register kJavaScriptCallNewTargetRegister = {Register::kCode_edx};
29 const Register kRuntimeCallFunctionRegister = {Register::kCode_ebx};
30 const Register kRuntimeCallArgCountRegister = {Register::kCode_eax};
48 bool AreAliased(Register reg1, Register reg2, Register reg3 = no_reg,
49 Register reg4 = no_reg, Register reg5 = no_reg,
50 Register reg6 = no_reg, Register reg7 = no_reg,
51 Register reg8 = no_reg);
60 void Load(Register dst, const Operand& src, Representation r);
61 void Store(Register src, const Operand& dst, Representation r);
64 void Set(Register dst, int32_t x) {
74 void LoadRoot(Register destination, Heap::RootListIndex index);
75 void StoreRoot(Register source, Register scratch, Heap::RootListIndex index);
76 void CompareRoot(Register with, Register scratch, Heap::RootListIndex index);
79 void CompareRoot(Register with, Heap::RootListIndex index);
84 void JumpIfRoot(Register with, Heap::RootListIndex index, Label* if_equal,
97 void JumpIfNotRoot(Register with, Heap::RootListIndex index,
113 void PushCallerSaved(SaveFPRegsMode fp_mode, Register exclusion1 = no_reg,
114 Register exclusion2 = no_reg,
115 Register exclusion3 = no_reg);
116 void PopCallerSaved(SaveFPRegsMode fp_mode, Register exclusion1 = no_reg,
117 Register exclusion2 = no_reg,
118 Register exclusion3 = no_reg);
127 void RememberedSetHelper(Register object, // Used for debug code.
128 Register addr, Register scratch,
132 void CheckPageFlag(Register object, Register scratch, int mask, Condition cc,
142 void JumpIfNotInNewSpace(Register object, Register scratch, Label* branch,
149 void JumpIfInNewSpace(Register object, Register scratch, Label* branch,
155 void HasColor(Register object, Register scratch0, Register scratch1,
159 void JumpIfBlack(Register object, Register scratch0, Register scratch1,
165 void JumpIfWhite(Register value, Register scratch1, Register scratch2,
174 Register object, int offset, Register value, Register scratch,
184 Register context, int offset, Register value, Register scratch,
202 Register array, Register value, Register index, SaveFPRegsMode save_fp,
214 Register object, Register address, Register value, SaveFPRegsMode save_fp,
222 void RecordWriteCodeEntryField(Register js_function, Register code_entry,
223 Register scratch);
228 void RecordWriteForMap(Register object, Handle<Map> map, Register scratch1,
229 Register scratch2, SaveFPRegsMode save_fp);
256 void LoadContext(Register dst, int context_chain_length);
259 void LoadGlobalProxy(Register dst);
262 void LoadGlobalFunction(int index, Register function);
266 void LoadGlobalFunctionInitialMap(Register function, Register map);
273 void StoreToSafepointRegisterSlot(Register dst, Register src);
274 void StoreToSafepointRegisterSlot(Register dst, Immediate src);
275 void LoadFromSafepointRegisterSlot(Register dst, Register src);
280 void LoadHeapObject(Register result, Handle<HeapObject> object);
281 void CmpHeapObject(Register reg, Handle<HeapObject> object);
284 void LoadObject(Register result, Handle<Object> object) {
293 void CmpObject(Register reg, Handle<Object> object) {
303 void CmpWeakValue(Register value, Handle<WeakCell> cell, Register scratch);
305 void GetWeakValue(Register value, Handle<WeakCell> cell);
309 void LoadWeakValue(Register value, Handle<WeakCell> cell, Label* miss);
324 Register caller_args_count_reg, Register scratch0,
325 Register scratch1, ReturnAddressState ra_state,
330 void InvokeFunctionCode(Register function, Register new_target,
336 void CheckDebugHook(Register fun, Register new_target,
342 void InvokeFunction(Register function, Register new_target,
346 void InvokeFunction(Register function, const ParameterCount& expected,
359 void Cvtsi2sd(XMMRegister dst, Register src) { Cvtsi2sd(dst, Operand(src)); }
362 void Cvtui2ss(XMMRegister dst, Register src, Register tmp);
364 void ShlPair(Register high, Register low, uint8_t imm8);
365 void ShlPair_cl(Register high, Register low);
366 void ShrPair(Register high, Register low, uint8_t imm8);
367 void ShrPair_cl(Register high, Register src);
368 void SarPair(Register high, Register low, uint8_t imm8);
369 void SarPair_cl(Register high, Register low);
373 void SafeMove(Register dst, const Immediate& x);
378 void CmpObjectType(Register heap_object, InstanceType type, Register map);
381 void CmpInstanceType(Register map, InstanceType type);
384 void CompareMap(Register obj, Handle<Map> map);
390 void CheckMap(Register obj, Handle<Map> map, Label* fail,
396 void DispatchWeakMap(Register obj, Register scratch1, Register scratch2,
405 Condition IsObjectStringType(Register heap_object, Register map,
406 Register instance_type);
413 Condition IsObjectNameType(Register heap_object, Register map,
414 Register instance_type);
420 void ClampUint8(Register reg);
423 Register result_reg);
425 void SlowTruncateToI(Register result_reg, Register input_reg,
428 void TruncateHeapNumberToI(Register result_reg, Register input_reg);
429 void TruncateDoubleToI(Register result_reg, XMMRegister input_reg);
431 void DoubleToI(Register result_reg, XMMRegister input_reg,
437 void SmiTag(Register reg) {
442 void SmiUntag(Register reg) {
447 void SmiUntag(Register reg, Label* is_smi) {
454 void LoadUint32(XMMRegister dst, Register src) {
460 inline void JumpIfSmi(Register value, Label* smi_label,
472 inline void JumpIfNotSmi(Register value, Label* not_smi_label,
484 inline void JumpIfNotValidSmiValue(Register value, Register scratch,
494 Register value, Label* on_invalid,
500 void LoadInstanceDescriptors(Register map, Register descriptors);
501 void EnumLength(Register dst, Register map);
502 void NumberOfOwnDescriptors(Register dst, Register map);
503 void LoadAccessor(Register dst, Register holder, int accessor_index,
507 void DecodeField(Register reg) {
517 void DecodeFieldToSmi(Register reg) {
530 void LoadPowerOf2(XMMRegister dst, Register scratch, int power);
533 void AssertNumber(Register object);
534 void AssertNotNumber(Register object);
537 void AssertSmi(Register object);
540 void AssertNotSmi(Register object);
543 void AssertString(Register object);
546 void AssertName(Register object);
549 void AssertFunction(Register object);
553 void AssertBoundFunction(Register object);
557 void AssertGeneratorObject(Register object);
560 void AssertReceiver(Register object);
564 void AssertUndefinedOrAllocationSite(Register object);
578 void GetNumberHash(Register r0, Register scratch);
593 void Allocate(int object_size, Register result, Register result_end,
594 Register scratch, Label* gc_required, AllocationFlags flags);
597 Register element_count, RegisterValueType element_count_type,
598 Register result, Register result_end, Register scratch,
601 void Allocate(Register object_size, Register result, Register result_end,
602 Register scratch, Label* gc_required, AllocationFlags flags);
607 void FastAllocate(int object_size, Register result, Register result_end,
609 void FastAllocate(Register object_size, Register result, Register result_end,
616 void AllocateHeapNumber(Register result, Register scratch1, Register scratch2,
621 void AllocateJSValue(Register result, Register constructor, Register value,
622 Register scratch, Label* gc_required);
627 void InitializeFieldsWithFiller(Register current_address,
628 Register end_address, Register filler);
634 void BooleanBitTest(Register object, int field_offset, int bit_index);
637 void NegativeZeroTest(Register result, Register op, Label* then_label);
640 // Register scratch is destroyed, and it must be different from op2.
641 void NegativeZeroTest(Register result, Register op1, Register op2,
642 Register scratch, Label* then_label);
646 void GetMapConstructor(Register result, Register map, Register temp);
694 void PrepareCallCFunction(int num_arguments, Register scratch);
702 void CallCFunction(Register function, int num_arguments);
715 void Ret(int bytes_dropped, Register scratch);
723 Register reg, typename Descriptor::ParameterIndices parameter_index,
745 void Push(Register src) { push(src); }
748 void Pop(Register dst) { pop(dst); }
750 void PushReturnAddressFrom(Register src) { push(src); }
751 void PopReturnAddressTo(Register dst) { pop(dst); }
754 void Pextrd(Register dst, XMMRegister src, int8_t imm8);
755 void Pinsrd(XMMRegister dst, Register src, int8_t imm8) {
760 void Lzcnt(Register dst, Register src) { Lzcnt(dst, Operand(src)); }
761 void Lzcnt(Register dst, const Operand& src);
763 void Tzcnt(Register dst, Register src) { Tzcnt(dst, Operand(src)); }
764 void Tzcnt(Register dst, const Operand& src);
766 void Popcnt(Register dst, Register src) { Popcnt(dst, Operand(src)); }
767 void Popcnt(Register dst, const Operand& src);
770 void Move(Register target, Register source);
773 void Move(Register dst, const Immediate& x);
782 void Move(Register dst, Handle<Object> handle) { LoadObject(dst, handle); }
783 void Move(Register dst, Smi* source) { Move(dst, Immediate(source)); }
796 void TruncatingDiv(Register dividend, int32_t divisor);
814 void AssertFastElements(Register elements);
838 Register object1, Register object2, Register scratch1, Register scratch2,
842 void JumpIfNotUniqueNameInstanceType(Register reg, Label* not_unique_name,
850 void EmitSeqStringSetCharCheck(Register string, Register index,
851 Register value, uint32_t encoding_mask);
853 static int SafepointRegisterStackIndex(Register reg) {
858 void EmitLoadFeedbackVector(Register vector);
865 void EnterBuiltinFrame(Register context, Register target, Register argc);
866 void LeaveBuiltinFrame(Register context, Register target, Register argc);
878 void TestJSArrayForAllocationMemento(Register receiver_reg,
879 Register scratch_reg,
901 void LoadAllocationTopHelper(Register result, Register scratch,
904 void UpdateAllocationTopHelper(Register result_end, Register scratch,
908 void InNewSpace(Register object, Register scratch, Condition cc,
916 inline void GetMarkBits(Register addr_reg, Register bitmap_reg,
917 Register mask_reg);
920 Operand SafepointRegisterSlot(Register reg);
951 inline Operand FieldOperand(Register object, int offset) {
956 inline Operand FieldOperand(Register object, Register index, ScaleFactor scale,
961 inline Operand FixedArrayElementOperand(Register array, Register index_as_smi,
967 inline Operand ContextOperand(Register context, int index) {
971 inline Operand ContextOperand(Register context, Register index) {