Lines Matching refs:scratch
84 Register scratch,
89 mov(scratch, Immediate(index));
90 mov(Operand::StaticArray(scratch, times_pointer_size, roots_array_start),
96 Register scratch,
100 mov(scratch, Immediate(index));
101 cmp(with, Operand::StaticArray(scratch,
124 Register scratch,
129 if (scratch.is(object)) {
130 and_(scratch, Immediate(~Page::kPageAlignmentMask));
132 mov(scratch, Immediate(~Page::kPageAlignmentMask));
133 and_(scratch, object);
141 test_b(Operand(scratch, MemoryChunk::kFlagsOffset),
150 Register scratch,
156 JumpIfNotInNewSpace(object, scratch, &ok, Label::kNear);
163 mov(scratch, Operand::StaticVariable(store_buffer));
165 mov(Operand(scratch, 0), addr);
167 add(scratch, Immediate(kPointerSize));
169 mov(Operand::StaticVariable(store_buffer), scratch);
172 test(scratch, Immediate(StoreBuffer::kStoreBufferOverflowBit));
254 XMMRegister scratch,
258 ASSERT(!input_reg.is(scratch));
260 Cvtsi2sd(scratch, Operand(result_reg));
261 ucomisd(scratch, input_reg);
335 // Input is clobbered. Restore number from double scratch.
583 value, // Used as scratch.
590 value, // Used as scratch.
818 Register scratch,
821 IsInstanceJSObjectType(map, scratch, fail);
826 Register scratch,
828 movzx_b(scratch, FieldOperand(map, Map::kInstanceTypeOffset));
829 sub(scratch, Immediate(FIRST_NONCALLABLE_SPEC_OBJECT_TYPE));
830 cmp(scratch,
1287 void MacroAssembler::GetNumberHash(Register r0, Register scratch) {
1292 mov(scratch, Immediate(Heap::kHashSeedRootIndex));
1293 mov(scratch,
1294 Operand::StaticArray(scratch, times_pointer_size, roots_array_start));
1295 SmiUntag(scratch);
1296 xor_(r0, scratch);
1303 mov(scratch, r0);
1305 shl(scratch, 15);
1306 add(r0, scratch);
1308 mov(scratch, r0);
1309 shr(scratch, 12);
1310 xor_(r0, scratch);
1314 mov(scratch, r0);
1315 shr(scratch, 4);
1316 xor_(r0, scratch);
1320 mov(scratch, r0);
1321 shr(scratch, 16);
1322 xor_(r0, scratch);
1340 // Scratch registers:
1402 Register scratch,
1409 // No use of scratch if allocation top is provided.
1410 ASSERT(scratch.is(no_reg));
1419 // Move address of new object to result. Use scratch register if available.
1420 if (scratch.is(no_reg)) {
1423 mov(scratch, Immediate(allocation_top));
1424 mov(result, Operand(scratch, 0));
1430 Register scratch,
1440 // Update new top. Use scratch if available.
1441 if (scratch.is(no_reg)) {
1444 mov(Operand(scratch, 0), result_end);
1452 Register scratch,
1464 if (scratch.is_valid()) {
1465 mov(scratch, Immediate(0x7291));
1474 LoadAllocationTopHelper(result, scratch, flags);
1508 UpdateAllocationTopHelper(top_reg, scratch, flags);
1531 Register scratch,
1540 if (scratch.is_valid()) {
1541 mov(scratch, Immediate(0x7291));
1551 LoadAllocationTopHelper(result, scratch, flags);
1599 UpdateAllocationTopHelper(result_end, scratch, flags);
1606 Register scratch,
1615 if (scratch.is_valid()) {
1616 mov(scratch, Immediate(0x7291));
1626 LoadAllocationTopHelper(result, scratch, flags);
1665 UpdateAllocationTopHelper(result_end, scratch, flags);
1850 // long or aligned copies. The contents of scratch and length are destroyed.
1860 Register scratch) {
1871 mov(scratch, Operand(source, length, times_1, -4));
1872 mov(Operand(destination, length, times_1, -4), scratch);
1881 mov(scratch, ecx);
1884 and_(scratch, Immediate(0x3));
1885 add(destination, scratch);
1889 mov(scratch, Operand(source, 8));
1890 mov(Operand(destination, 8), scratch);
1892 mov(scratch, Operand(source, 4));
1893 mov(Operand(destination, 4), scratch);
1895 mov(scratch, Operand(source, 0));
1896 mov(Operand(destination, 0), scratch);
1905 mov_b(scratch, Operand(source, 0));
1906 mov_b(Operand(destination, 0), scratch);
1958 Register scratch,
1963 mov(scratch, op1);
1964 or_(scratch, op2);
1972 Register scratch,
1984 mov(scratch,
1986 BooleanBitTest(scratch
1993 movzx_b(scratch, FieldOperand(result, Map::kBitFieldOffset));
1994 test(scratch, Immediate(1 << Map::kHasNonInstancePrototype));
2009 CmpObjectType(result, MAP_TYPE, scratch);
2493 Register scratch,
2496 mov(scratch, Operand(esi, Context::SlotOffset(Context::GLOBAL_OBJECT_INDEX)));
2497 mov(scratch, FieldOperand(scratch, GlobalObject::kNativeContextOffset));
2500 mov(scratch, Operand(scratch,
2505 cmp(map_in_out, FieldOperand(scratch, offset));
2511 mov(map_in_out, FieldOperand(scratch, offset));
2612 void MacroAssembler::Ret(int bytes_dropped, Register scratch) {
2616 pop(scratch);
2618 push(scratch);
2821 Register scratch,
2825 mov(scratch, Immediate(power + HeapNumber::kExponentBias));
2826 movd(dst, scratch);
2839 Register scratch = scratch2;
2858 mov(scratch, object);
2859 SmiUntag(scratch);
2866 mov(scratch, FieldOperand(object, HeapNumber::kValueOffset));
2867 xor_(scratch, FieldOperand(object, HeapNumber::kValueOffset + 4));
2868 // Object is heap number and hash is now in scratch. Calculate cache index.
2869 and_(scratch, mask);
2870 Register index = scratch;
2885 // Object is smi and hash is now in scratch. Calculate cache index.
2886 and_(scratch, mask);
2908 Register scratch,
2910 if (!scratch.is(instance_type)) {
2911 mov(scratch, instance_type);
2913 and_(scratch,
2915 cmp(scratch, kStringTag | kSeqStringTag | kOneByteStringTag);
3001 void MacroAssembler::PrepareCallCFunction(int num_arguments, Register scratch) {
3006 mov(scratch, esp);
3010 mov(Operand(esp, num_arguments * kPointerSize), scratch);
3076 Register scratch,
3082 if (scratch.is(object)) {
3083 and_(scratch, Immediate(~Page::kPageAlignmentMask));
3085 mov(scratch, Immediate(~Page::kPageAlignmentMask));
3086 and_(scratch, object);
3089 test_b(Operand(scratch, MemoryChunk::kFlagsOffset),
3092 test(Operand(scratch, MemoryChunk::kFlagsOffset), Immediate(mask));
3121 Register scratch,
3124 mov(scratch, map);
3125 mov(scratch, FieldOperand(scratch, Map::kBitField3Offset));
3126 and_(scratch, Immediate(Map::Deprecated::kMask));
3381 // scratch contained elements pointer.