• Home
  • Raw
  • Download

Lines Matching refs:__

114 #define __ ACCESS_MASM(masm_)  macro
129 __ jmp(&entry_label_); // We'll write the entry code later. in RegExpMacroAssemblerARM()
131 __ bind(&start_label_); // And then continue from here. in RegExpMacroAssemblerARM()
155 __ add(current_input_offset(), in AdvanceCurrentPosition()
165 __ ldr(r0, register_location(reg)); in AdvanceRegister()
166 __ add(r0, r0, Operand(by)); in AdvanceRegister()
167 __ str(r0, register_location(reg)); in AdvanceRegister()
176 __ add(pc, r0, Operand(code_pointer())); in Backtrack()
181 __ bind(label); in Bind()
186 __ cmp(current_character(), Operand(c)); in CheckCharacter()
192 __ cmp(current_character(), Operand(limit)); in CheckCharacterGT()
200 __ ldr(r0, MemOperand(frame_pointer(), kAtStart)); in CheckAtStart()
201 __ cmp(r0, Operand(0, RelocInfo::NONE)); in CheckAtStart()
205 __ ldr(r1, MemOperand(frame_pointer(), kInputStart)); in CheckAtStart()
206 __ add(r0, end_of_input_address(), Operand(current_input_offset())); in CheckAtStart()
207 __ cmp(r0, r1); in CheckAtStart()
209 __ bind(&not_at_start); in CheckAtStart()
215 __ ldr(r0, MemOperand(frame_pointer(), kAtStart)); in CheckNotAtStart()
216 __ cmp(r0, Operand(0, RelocInfo::NONE)); in CheckNotAtStart()
219 __ ldr(r1, MemOperand(frame_pointer(), kInputStart)); in CheckNotAtStart()
220 __ add(r0, end_of_input_address(), Operand(current_input_offset())); in CheckNotAtStart()
221 __ cmp(r0, r1); in CheckNotAtStart()
227 __ cmp(current_character(), Operand(limit)); in CheckCharacterLT()
247 __ add(r0, end_of_input_address(), Operand(current_input_offset())); in CheckCharacters()
250 __ add(r0, r0, Operand(byte_offset)); in CheckCharacters()
257 __ ldrb(r1, MemOperand(r0, char_size(), PostIndex)); in CheckCharacters()
259 __ cmp(r1, Operand(str[i])); in CheckCharacters()
261 __ ldrh(r1, MemOperand(r0, char_size(), PostIndex)); in CheckCharacters()
265 __ cmp(r1, Operand(str[i])); in CheckCharacters()
268 __ mov(r2, Operand(match_high_byte)); in CheckCharacters()
271 __ add(r3, r2, Operand(match_char & 0xff)); in CheckCharacters()
272 __ cmp(r1, r3); in CheckCharacters()
281 __ ldr(r0, MemOperand(backtrack_stackpointer(), 0)); in CheckGreedyLoop()
282 __ cmp(current_input_offset(), r0); in CheckGreedyLoop()
283 __ add(backtrack_stackpointer(), in CheckGreedyLoop()
293 __ ldr(r0, register_location(start_reg)); // Index of start of capture in CheckNotBackReferenceIgnoreCase()
294 __ ldr(r1, register_location(start_reg + 1)); // Index of end of capture in CheckNotBackReferenceIgnoreCase()
295 __ sub(r1, r1, r0, SetCC); // Length of capture. in CheckNotBackReferenceIgnoreCase()
299 __ b(eq, &fallthrough); in CheckNotBackReferenceIgnoreCase()
302 __ cmn(r1, Operand(current_input_offset())); in CheckNotBackReferenceIgnoreCase()
312 __ add(r0, r0, Operand(end_of_input_address())); in CheckNotBackReferenceIgnoreCase()
313 __ add(r2, end_of_input_address(), Operand(current_input_offset())); in CheckNotBackReferenceIgnoreCase()
314 __ add(r1, r0, Operand(r1)); in CheckNotBackReferenceIgnoreCase()
321 __ bind(&loop); in CheckNotBackReferenceIgnoreCase()
322 __ ldrb(r3, MemOperand(r0, char_size(), PostIndex)); in CheckNotBackReferenceIgnoreCase()
323 __ ldrb(r4, MemOperand(r2, char_size(), PostIndex)); in CheckNotBackReferenceIgnoreCase()
324 __ cmp(r4, r3); in CheckNotBackReferenceIgnoreCase()
325 __ b(eq, &loop_check); in CheckNotBackReferenceIgnoreCase()
328 __ orr(r3, r3, Operand(0x20)); // Convert capture character to lower-case. in CheckNotBackReferenceIgnoreCase()
329 __ orr(r4, r4, Operand(0x20)); // Also convert input character. in CheckNotBackReferenceIgnoreCase()
330 __ cmp(r4, r3); in CheckNotBackReferenceIgnoreCase()
331 __ b(ne, &fail); in CheckNotBackReferenceIgnoreCase()
332 __ sub(r3, r3, Operand('a')); in CheckNotBackReferenceIgnoreCase()
333 __ cmp(r3, Operand('z' - 'a')); // Is r3 a lowercase letter? in CheckNotBackReferenceIgnoreCase()
334 __ b(hi, &fail); in CheckNotBackReferenceIgnoreCase()
337 __ bind(&loop_check); in CheckNotBackReferenceIgnoreCase()
338 __ cmp(r0, r1); in CheckNotBackReferenceIgnoreCase()
339 __ b(lt, &loop); in CheckNotBackReferenceIgnoreCase()
340 __ jmp(&success); in CheckNotBackReferenceIgnoreCase()
342 __ bind(&fail); in CheckNotBackReferenceIgnoreCase()
345 __ bind(&success); in CheckNotBackReferenceIgnoreCase()
347 __ sub(current_input_offset(), r2, end_of_input_address()); in CheckNotBackReferenceIgnoreCase()
351 __ PrepareCallCFunction(argument_count, r2); in CheckNotBackReferenceIgnoreCase()
364 __ add(r0, r0, Operand(end_of_input_address())); in CheckNotBackReferenceIgnoreCase()
366 __ mov(r2, Operand(r1)); in CheckNotBackReferenceIgnoreCase()
368 __ mov(r4, Operand(r1)); in CheckNotBackReferenceIgnoreCase()
370 __ add(r1, current_input_offset(), Operand(end_of_input_address())); in CheckNotBackReferenceIgnoreCase()
372 __ mov(r3, Operand(ExternalReference::isolate_address())); in CheckNotBackReferenceIgnoreCase()
378 __ CallCFunction(function, argument_count); in CheckNotBackReferenceIgnoreCase()
382 __ cmp(r0, Operand(0, RelocInfo::NONE)); in CheckNotBackReferenceIgnoreCase()
385 __ add(current_input_offset(), current_input_offset(), Operand(r4)); in CheckNotBackReferenceIgnoreCase()
388 __ bind(&fallthrough); in CheckNotBackReferenceIgnoreCase()
399 __ ldr(r0, register_location(start_reg)); in CheckNotBackReference()
400 __ ldr(r1, register_location(start_reg + 1)); in CheckNotBackReference()
401 __ sub(r1, r1, r0, SetCC); // Length to check. in CheckNotBackReference()
403 __ b(eq, &fallthrough); in CheckNotBackReference()
406 __ cmn(r1, Operand(current_input_offset())); in CheckNotBackReference()
410 __ add(r0, r0, Operand(end_of_input_address())); in CheckNotBackReference()
411 __ add(r2, end_of_input_address(), Operand(current_input_offset())); in CheckNotBackReference()
412 __ add(r1, r1, Operand(r0)); in CheckNotBackReference()
415 __ bind(&loop); in CheckNotBackReference()
417 __ ldrb(r3, MemOperand(r0, char_size(), PostIndex)); in CheckNotBackReference()
418 __ ldrb(r4, MemOperand(r2, char_size(), PostIndex)); in CheckNotBackReference()
421 __ ldrh(r3, MemOperand(r0, char_size(), PostIndex)); in CheckNotBackReference()
422 __ ldrh(r4, MemOperand(r2, char_size(), PostIndex)); in CheckNotBackReference()
424 __ cmp(r3, r4); in CheckNotBackReference()
426 __ cmp(r0, r1); in CheckNotBackReference()
427 __ b(lt, &loop); in CheckNotBackReference()
430 __ sub(current_input_offset(), r2, end_of_input_address()); in CheckNotBackReference()
431 __ bind(&fallthrough); in CheckNotBackReference()
438 __ ldr(r0, register_location(reg1)); in CheckNotRegistersEqual()
439 __ ldr(r1, register_location(reg2)); in CheckNotRegistersEqual()
440 __ cmp(r0, r1); in CheckNotRegistersEqual()
447 __ cmp(current_character(), Operand(c)); in CheckNotCharacter()
455 __ and_(r0, current_character(), Operand(mask)); in CheckCharacterAfterAnd()
456 __ cmp(r0, Operand(c)); in CheckCharacterAfterAnd()
464 __ and_(r0, current_character(), Operand(mask)); in CheckNotCharacterAfterAnd()
465 __ cmp(r0, Operand(c)); in CheckNotCharacterAfterAnd()
476 __ sub(r0, current_character(), Operand(minus)); in CheckNotCharacterAfterMinusAnd()
477 __ and_(r0, r0, Operand(mask)); in CheckNotCharacterAfterMinusAnd()
478 __ cmp(r0, Operand(c)); in CheckNotCharacterAfterMinusAnd()
493 __ cmp(current_character(), Operand(' ')); in CheckSpecialCharacterClass()
494 __ b(eq, &success); in CheckSpecialCharacterClass()
496 __ sub(r0, current_character(), Operand('\t')); in CheckSpecialCharacterClass()
497 __ cmp(r0, Operand('\r' - '\t')); in CheckSpecialCharacterClass()
499 __ bind(&success); in CheckSpecialCharacterClass()
507 __ cmp(current_character(), Operand(' ')); in CheckSpecialCharacterClass()
509 __ sub(r0, current_character(), Operand('\t')); in CheckSpecialCharacterClass()
510 __ cmp(r0, Operand('\r' - '\t')); in CheckSpecialCharacterClass()
517 __ sub(r0, current_character(), Operand('0')); in CheckSpecialCharacterClass()
518 __ cmp(current_character(), Operand('9' - '0')); in CheckSpecialCharacterClass()
523 __ sub(r0, current_character(), Operand('0')); in CheckSpecialCharacterClass()
524 __ cmp(r0, Operand('9' - '0')); in CheckSpecialCharacterClass()
529 __ eor(r0, current_character(), Operand(0x01)); in CheckSpecialCharacterClass()
531 __ sub(r0, r0, Operand(0x0b)); in CheckSpecialCharacterClass()
532 __ cmp(r0, Operand(0x0c - 0x0b)); in CheckSpecialCharacterClass()
538 __ sub(r0, r0, Operand(0x2028 - 0x0b)); in CheckSpecialCharacterClass()
539 __ cmp(r0, Operand(1)); in CheckSpecialCharacterClass()
546 __ eor(r0, current_character(), Operand(0x01)); in CheckSpecialCharacterClass()
548 __ sub(r0, r0, Operand(0x0b)); in CheckSpecialCharacterClass()
549 __ cmp(r0, Operand(0x0c - 0x0b)); in CheckSpecialCharacterClass()
554 __ b(ls, &done); in CheckSpecialCharacterClass()
558 __ sub(r0, r0, Operand(0x2028 - 0x0b)); in CheckSpecialCharacterClass()
559 __ cmp(r0, Operand(1)); in CheckSpecialCharacterClass()
561 __ bind(&done); in CheckSpecialCharacterClass()
568 __ cmp(current_character(), Operand('z')); in CheckSpecialCharacterClass()
572 __ mov(r0, Operand(map)); in CheckSpecialCharacterClass()
573 __ ldrb(r0, MemOperand(r0, current_character())); in CheckSpecialCharacterClass()
574 __ cmp(r0, Operand(0)); in CheckSpecialCharacterClass()
582 __ cmp(current_character(), Operand('z')); in CheckSpecialCharacterClass()
583 __ b(hi, &done); in CheckSpecialCharacterClass()
586 __ mov(r0, Operand(map)); in CheckSpecialCharacterClass()
587 __ ldrb(r0, MemOperand(r0, current_character())); in CheckSpecialCharacterClass()
588 __ cmp(r0, Operand(0)); in CheckSpecialCharacterClass()
591 __ bind(&done); in CheckSpecialCharacterClass()
606 __ mov(r0, Operand(FAILURE)); in Fail()
607 __ jmp(&exit_label_); in Fail()
616 __ bind(&entry_label_); in GetCode()
631 __ stm(db_w, sp, argument_registers | registers_to_retain | lr.bit()); in GetCode()
634 __ add(frame_pointer(), sp, Operand(4 * kPointerSize)); in GetCode()
635 __ push(r0); // Make room for "position - 1" constant (value is irrelevant). in GetCode()
636 __ push(r0); // Make room for "at start" constant (value is irrelevant). in GetCode()
643 __ mov(r0, Operand(stack_limit)); in GetCode()
644 __ ldr(r0, MemOperand(r0)); in GetCode()
645 __ sub(r0, sp, r0, SetCC); in GetCode()
647 __ b(ls, &stack_limit_hit); in GetCode()
650 __ cmp(r0, Operand(num_registers_ * kPointerSize)); in GetCode()
651 __ b(hs, &stack_ok); in GetCode()
654 __ mov(r0, Operand(EXCEPTION)); in GetCode()
655 __ jmp(&exit_label_); in GetCode()
657 __ bind(&stack_limit_hit); in GetCode()
659 __ cmp(r0, Operand(0, RelocInfo::NONE)); in GetCode()
661 __ b(ne, &exit_label_); in GetCode()
663 __ bind(&stack_ok); in GetCode()
666 __ sub(sp, sp, Operand(num_registers_ * kPointerSize)); in GetCode()
668 __ ldr(end_of_input_address(), MemOperand(frame_pointer(), kInputEnd)); in GetCode()
670 __ ldr(r0, MemOperand(frame_pointer(), kInputStart)); in GetCode()
672 __ sub(current_input_offset(), r0, end_of_input_address()); in GetCode()
675 __ ldr(r1, MemOperand(frame_pointer(), kStartIndex)); in GetCode()
676 __ sub(r0, current_input_offset(), Operand(char_size())); in GetCode()
677 __ sub(r0, r0, Operand(r1, LSL, (mode_ == UC16) ? 1 : 0)); in GetCode()
680 __ str(r0, MemOperand(frame_pointer(), kInputStartMinusOne)); in GetCode()
684 __ cmp(r1, Operand(0)); in GetCode()
685 __ mov(r1, Operand(1), LeaveCC, eq); in GetCode()
686 __ mov(r1, Operand(0, RelocInfo::NONE), LeaveCC, ne); in GetCode()
687 __ str(r1, MemOperand(frame_pointer(), kAtStart)); in GetCode()
693 __ add(r1, frame_pointer(), Operand(kRegisterZero)); in GetCode()
694 __ mov(r2, Operand(num_saved_registers_)); in GetCode()
696 __ bind(&init_loop); in GetCode()
697 __ str(r0, MemOperand(r1, kPointerSize, NegPostIndex)); in GetCode()
698 __ sub(r2, r2, Operand(1), SetCC); in GetCode()
699 __ b(ne, &init_loop); in GetCode()
703 __ ldr(backtrack_stackpointer(), MemOperand(frame_pointer(), kStackHighEnd)); in GetCode()
705 __ mov(code_pointer(), Operand(masm_->CodeObject())); in GetCode()
708 __ ldr(r0, MemOperand(frame_pointer(), kAtStart)); in GetCode()
709 __ cmp(r0, Operand(0, RelocInfo::NONE)); in GetCode()
710 __ b(ne, &at_start); in GetCode()
712 __ jmp(&start_label_); in GetCode()
713 __ bind(&at_start); in GetCode()
714 __ mov(current_character(), Operand('\n')); in GetCode()
715 __ jmp(&start_label_); in GetCode()
721 __ bind(&success_label_); in GetCode()
724 __ ldr(r1, MemOperand(frame_pointer(), kInputStart)); in GetCode()
725 __ ldr(r0, MemOperand(frame_pointer(), kRegisterOutput)); in GetCode()
726 __ ldr(r2, MemOperand(frame_pointer(), kStartIndex)); in GetCode()
727 __ sub(r1, end_of_input_address(), r1); in GetCode()
730 __ mov(r1, Operand(r1, LSR, 1)); in GetCode()
733 __ add(r1, r1, Operand(r2)); in GetCode()
741 __ ldr(r2, register_location(i)); in GetCode()
742 __ ldr(r3, register_location(i + 1)); in GetCode()
744 __ add(r2, r1, Operand(r2, ASR, 1)); in GetCode()
745 __ add(r3, r1, Operand(r3, ASR, 1)); in GetCode()
747 __ add(r2, r1, Operand(r2)); in GetCode()
748 __ add(r3, r1, Operand(r3)); in GetCode()
750 __ str(r2, MemOperand(r0, kPointerSize, PostIndex)); in GetCode()
751 __ str(r3, MemOperand(r0, kPointerSize, PostIndex)); in GetCode()
754 __ mov(r0, Operand(SUCCESS)); in GetCode()
757 __ bind(&exit_label_); in GetCode()
759 __ mov(sp, frame_pointer()); in GetCode()
761 __ ldm(ia_w, sp, registers_to_retain | pc.bit()); in GetCode()
765 __ bind(&backtrack_label_); in GetCode()
776 __ cmp(r0, Operand(0, RelocInfo::NONE)); in GetCode()
779 __ b(ne, &exit_label_); in GetCode()
782 __ ldr(end_of_input_address(), MemOperand(frame_pointer(), kInputEnd)); in GetCode()
794 __ PrepareCallCFunction(num_arguments, r0); in GetCode()
795 __ mov(r0, backtrack_stackpointer()); in GetCode()
796 __ add(r1, frame_pointer(), Operand(kStackHighEnd)); in GetCode()
797 __ mov(r2, Operand(ExternalReference::isolate_address())); in GetCode()
800 __ CallCFunction(grow_stack, num_arguments); in GetCode()
803 __ cmp(r0, Operand(0, RelocInfo::NONE)); in GetCode()
804 __ b(eq, &exit_with_exception); in GetCode()
806 __ mov(backtrack_stackpointer(), r0); in GetCode()
813 __ bind(&exit_with_exception); in GetCode()
815 __ mov(r0, Operand(EXCEPTION)); in GetCode()
816 __ jmp(&exit_label_); in GetCode()
837 __ ldr(r0, register_location(reg)); in IfRegisterGE()
838 __ cmp(r0, Operand(comparand)); in IfRegisterGE()
846 __ ldr(r0, register_location(reg)); in IfRegisterLT()
847 __ cmp(r0, Operand(comparand)); in IfRegisterLT()
854 __ ldr(r0, register_location(reg)); in IfRegisterEqPos()
855 __ cmp(r0, Operand(current_input_offset())); in IfRegisterEqPos()
886 __ str(r0, register_location(register_index)); in PopRegister()
899 __ mov(r0, Operand(target + Code::kHeaderSize - kHeapObjectTag)); in PushBacktrack()
912 __ ldr(r0, MemOperand(pc, pc_offset_of_constant)); in PushBacktrack()
917 __ mov(r0, Operand(pc_offset_of_constant + Assembler::kInstrSize)); in PushBacktrack()
918 __ ldr(r0, MemOperand(pc, r0)); in PushBacktrack()
933 __ ldr(r0, register_location(register_index)); in PushRegister()
940 __ ldr(current_input_offset(), register_location(reg)); in ReadCurrentPositionFromRegister()
945 __ ldr(backtrack_stackpointer(), register_location(reg)); in ReadStackPointerFromRegister()
946 __ ldr(r0, MemOperand(frame_pointer(), kStackHighEnd)); in ReadStackPointerFromRegister()
947 __ add(backtrack_stackpointer(), backtrack_stackpointer(), Operand(r0)); in ReadStackPointerFromRegister()
953 __ cmp(current_input_offset(), Operand(-by * char_size())); in SetCurrentPositionFromEnd()
954 __ b(ge, &after_position); in SetCurrentPositionFromEnd()
955 __ mov(current_input_offset(), Operand(-by * char_size())); in SetCurrentPositionFromEnd()
960 __ bind(&after_position); in SetCurrentPositionFromEnd()
966 __ mov(r0, Operand(to)); in SetRegister()
967 __ str(r0, register_location(register_index)); in SetRegister()
972 __ jmp(&success_label_); in Succeed()
979 __ str(current_input_offset(), register_location(reg)); in WriteCurrentPositionToRegister()
981 __ add(r0, current_input_offset(), Operand(cp_offset * char_size())); in WriteCurrentPositionToRegister()
982 __ str(r0, register_location(reg)); in WriteCurrentPositionToRegister()
989 __ ldr(r0, MemOperand(frame_pointer(), kInputStartMinusOne)); in ClearRegisters()
991 __ str(r0, register_location(reg)); in ClearRegisters()
997 __ ldr(r1, MemOperand(frame_pointer(), kStackHighEnd)); in WriteStackPointerToRegister()
998 __ sub(r0, backtrack_stackpointer(), r1); in WriteStackPointerToRegister()
999 __ str(r0, register_location(reg)); in WriteStackPointerToRegister()
1007 __ PrepareCallCFunction(num_arguments, scratch); in CallCheckStackGuardState()
1009 __ mov(r2, frame_pointer()); in CallCheckStackGuardState()
1011 __ mov(r1, Operand(masm_->CodeObject())); in CallCheckStackGuardState()
1137 __ cmp(current_input_offset(), Operand(-cp_offset * char_size())); in CheckPosition()
1149 __ jmp(to); in BranchOrBacktrack()
1153 __ b(condition, &backtrack_label_); in BranchOrBacktrack()
1156 __ b(condition, to); in BranchOrBacktrack()
1161 __ bl(to, cond); in SafeCall()
1166 __ pop(lr); in SafeReturn()
1167 __ add(pc, lr, Operand(masm_->CodeObject())); in SafeReturn()
1172 __ bind(name); in SafeCallTarget()
1173 __ sub(lr, lr, Operand(masm_->CodeObject())); in SafeCallTarget()
1174 __ push(lr); in SafeCallTarget()
1180 __ str(source, in Push()
1187 __ ldr(target, in Pop()
1196 __ mov(r0, Operand(stack_limit)); in CheckPreemption()
1197 __ ldr(r0, MemOperand(r0)); in CheckPreemption()
1198 __ cmp(sp, r0); in CheckPreemption()
1206 __ mov(r0, Operand(stack_limit)); in CheckStackLimit()
1207 __ ldr(r0, MemOperand(r0)); in CheckStackLimit()
1208 __ cmp(backtrack_stackpointer(), Operand(r0)); in CheckStackLimit()
1214 __ CheckConstPool(false, false); in EmitBacktrackConstantPool()
1218 __ emit(0); in EmitBacktrackConstantPool()
1235 __ jmp(&new_pool_skip); in GetBacktrackConstantPoolEntry()
1237 __ bind(&new_pool_skip); in GetBacktrackConstantPoolEntry()
1250 __ mov(code_pointer(), Operand(function)); in CallCFunctionUsingStub()
1252 __ CallStub(&stub); in CallCFunctionUsingStub()
1254 __ ldr(sp, MemOperand(sp, 0)); in CallCFunctionUsingStub()
1256 __ mov(code_pointer(), Operand(masm_->CodeObject())); in CallCFunctionUsingStub()
1264 __ add(r0, current_input_offset(), Operand(cp_offset * char_size())); in LoadCurrentCharacterUnchecked()
1277 __ ldr(current_character(), MemOperand(end_of_input_address(), offset)); in LoadCurrentCharacterUnchecked()
1279 __ ldrh(current_character(), MemOperand(end_of_input_address(), offset)); in LoadCurrentCharacterUnchecked()
1282 __ ldrb(current_character(), MemOperand(end_of_input_address(), offset)); in LoadCurrentCharacterUnchecked()
1287 __ ldr(current_character(), MemOperand(end_of_input_address(), offset)); in LoadCurrentCharacterUnchecked()
1290 __ ldrh(current_character(), MemOperand(end_of_input_address(), offset)); in LoadCurrentCharacterUnchecked()
1301 __ str(lr, MemOperand(sp, stack_alignment, NegPreIndex)); in Generate()
1302 __ mov(r0, sp); in Generate()
1303 __ Call(r5); in Generate()
1304 __ ldr(pc, MemOperand(sp, stack_alignment, PostIndex)); in Generate()
1307 #undef __