Home | History | Annotate | Download | only in mips

Lines Matching defs:__

113 #define __ ACCESS_MASM(masm_)
129 __ jmp(&entry_label_); // We'll write the entry code later.
132 __ bind(&internal_failure_label_);
133 __ li(v0, Operand(FAILURE));
134 __ Ret();
135 __ bind(&start_label_); // And then continue from here.
160 __ Addu(current_input_offset(),
170 __ lw(a0, register_location(reg));
171 __ Addu(a0, a0, Operand(by));
172 __ sw(a0, register_location(reg));
181 __ Addu(a0, a0, code_pointer());
182 __ Jump(a0);
187 __ bind(label);
204 __ lw(a0, MemOperand(frame_pointer(), kAtStart));
208 __ lw(a1, MemOperand(frame_pointer(), kInputStart));
209 __ Addu(a0, end_of_input_address(), Operand(current_input_offset()));
211 __ bind(&not_at_start);
217 __ lw(a0, MemOperand(frame_pointer(), kAtStart));
220 __ lw(a1, MemOperand(frame_pointer(), kInputStart));
221 __ Addu(a0, end_of_input_address(), Operand(current_input_offset()));
246 __ Addu(a0, end_of_input_address(), Operand(current_input_offset()));
249 __ Addu(a0, a0, Operand(byte_offset));
256 __ lbu(a1, MemOperand(a0, 0));
257 __ addiu(a0, a0, char_size());
261 __ lhu(a1, MemOperand(a0, 0));
262 __ addiu(a0, a0, char_size());
269 __ li(a2, Operand(match_high_byte));
272 __ Addu(a3, a2, Operand(match_char & 0xff));
282 __ lw(a0, MemOperand(backtrack_stackpointer(), 0));
283 __ Branch(&backtrack_non_equal, ne, current_input_offset(), Operand(a0));
284 __ Addu(backtrack_stackpointer(),
287 __ bind(&backtrack_non_equal);
296 __ lw(a0, register_location(start_reg)); // Index of start of capture.
297 __ lw(a1, register_location(start_reg + 1)); // Index of end of capture.
298 __ Subu(a1, a1, a0); // Length of capture.
302 __ Branch(&fallthrough, eq, a1, Operand(zero_reg));
304 __ Addu(t5, a1, current_input_offset());
315 __ Addu(a0, a0, Operand(end_of_input_address()));
316 __ Addu(a2, end_of_input_address(), Operand(current_input_offset()));
317 __ Addu(a1, a0, Operand(a1));
324 __ bind(&loop);
325 __ lbu(a3, MemOperand(a0, 0));
326 __ addiu(a0, a0, char_size());
327 __ lbu(t0, MemOperand(a2, 0));
328 __ addiu(a2, a2, char_size());
330 __ Branch(&loop_check, eq, t0, Operand(a3));
333 __ Or(a3, a3, Operand(0x20)); // Convert capture character to lower-case.
334 __ Or(t0, t0, Operand(0x20)); // Also convert input character.
335 __ Branch(&fail, ne, t0, Operand(a3));
336 __ Subu(a3, a3, Operand('a'));
337 __ Branch(&fail, hi, a3, Operand('z' - 'a')); // Is a3 a lowercase letter?
339 __ bind(&loop_check);
340 __ Branch(&loop, lt, a0, Operand(a1));
341 __ jmp(&success);
343 __ bind(&fail);
346 __ bind(&success);
348 __ Subu(current_input_offset(), a2, end_of_input_address());
354 __ MultiPush(regexp_registers_to_retain);
357 __ PrepareCallCFunction(argument_count, a2);
370 __ Addu(a0, a0, Operand(end_of_input_address()));
372 __ mov(a2, a1);
374 __ mov(s3, a1);
376 __ Addu(a1, current_input_offset(), Operand(end_of_input_address()));
378 __ li(a3, Operand(ExternalReference::isolate_address()));
384 __ CallCFunction(function, argument_count);
388 __ MultiPop(regexp_registers_to_retain);
389 __ li(code_pointer(), Operand(masm_->CodeObject()), CONSTANT_SIZE);
390 __ lw(end_of_input_address(), MemOperand(frame_pointer(), kInputEnd));
395 __ Addu(current_input_offset(), current_input_offset(), Operand(s3));
398 __ bind(&fallthrough);
409 __ lw(a0, register_location(start_reg));
410 __ lw(a1, register_location(start_reg + 1));
411 __ Subu(a1, a1, a0); // Length to check.
413 __ Branch(&fallthrough, eq, a1, Operand(zero_reg));
415 __ Addu(t5, a1, current_input_offset());
420 __ Addu(a0, a0, Operand(end_of_input_address()));
421 __ Addu(a2, end_of_input_address(), Operand(current_input_offset()));
422 __ Addu(a1, a1, Operand(a0));
425 __ bind(&loop);
427 __ lbu(a3, MemOperand(a0, 0));
428 __ addiu(a0, a0, char_size());
429 __ lbu(t0, MemOperand(a2, 0));
430 __ addiu(a2, a2, char_size());
433 __ lhu(a3, MemOperand(a0, 0));
434 __ addiu(a0, a0, char_size());
435 __ lhu(t0, MemOperand(a2, 0));
436 __ addiu(a2, a2, char_size());
439 __ Branch(&loop, lt, a0, Operand(a1));
442 __ Subu(current_input_offset(), a2, end_of_input_address());
443 __ bind(&fallthrough);
463 __ And(a0, current_character(), Operand(mask));
471 __ And(a0, current_character(), Operand(mask));
495 __ Branch(&success, eq, current_character(), Operand(' '));
497 __ Subu(a0, current_character(), Operand('\t'));
499 __ bind(&success);
508 __ Subu(a0, current_character(), Operand('\t'));
515 __ Subu(a0, current_character(), Operand('0'));
520 __ Subu(a0, current_character(), Operand('0'));
525 __ Xor(a0, current_character(), Operand(0x01));
527 __ Subu(a0, a0, Operand(0x0b));
533 __ Subu(a0, a0, Operand(0x2028 - 0x0b));
540 __ Xor(a0, current_character(), Operand(0x01));
542 __ Subu(a0, a0, Operand(0x0b));
551 __ Subu(a0, a0, Operand(0x2028 - 0x0b));
553 __ bind(&done);
563 __ li(a0, Operand(map));
564 __ Addu(a0, a0, current_character());
565 __ lbu(a0, MemOperand(a0, 0));
573 __ Branch(&done, hi, current_character(), Operand('z'));
576 __ li(a0, Operand(map));
577 __ Addu(a0, a0, current_character());
578 __ lbu(a0, MemOperand(a0, 0));
581 __ bind(&done);
596 __ li(v0, Operand(FAILURE));
597 __ jmp(&exit_label_);
606 __ bind_to(&entry_label_, internal_failure_label_.pos());
612 __ bind(&entry_label_);
627 __ MultiPush(argument_registers | registers_to_retain | ra.bit());
630 __ Addu(frame_pointer(), sp, Operand(4 * kPointerSize));
631 __ push(a0); // Make room for "position - 1" constant (value irrelevant).
632 __ push(a0); // Make room for "at start" constant (value irrelevant).
640 __ li(a0, Operand(stack_limit));
641 __ lw(a0, MemOperand(a0));
642 __ Subu(a0, sp, a0);
644 __ Branch(&stack_limit_hit, le, a0, Operand(zero_reg));
647 __ Branch(&stack_ok, hs, a0, Operand(num_registers_ * kPointerSize));
650 __ li(v0, Operand(EXCEPTION));
651 __ jmp(&exit_label_);
653 __ bind(&stack_limit_hit);
656 __ Branch(&exit_label_, ne, v0, Operand(zero_reg));
658 __ bind(&stack_ok);
660 __ Subu(sp, sp, Operand(num_registers_ * kPointerSize));
662 __ lw(end_of_input_address(), MemOperand(frame_pointer(), kInputEnd));
664 __ lw(a0, MemOperand(frame_pointer(), kInputStart));
666 __ Subu(current_input_offset(), a0, end_of_input_address());
669 __ lw(a1, MemOperand(frame_pointer(), kStartIndex));
670 __ Subu(a0, current_input_offset(), Operand(char_size()));
671 __ sll(t5, a1, (mode_ == UC16) ? 1 : 0);
672 __ Subu(a0, a0, t5);
675 __ sw(a0, MemOperand(frame_pointer(), kInputStartMinusOne));
679 __ mov(t5, a1);
680 __ li(a1, Operand(1));
681 __ Movn(a1, zero_reg, t5);
682 __ sw(a1, MemOperand(frame_pointer(), kAtStart));
688 __ Addu(a1, frame_pointer(), Operand(kRegisterZero));
689 __ li(a2, Operand(num_saved_registers_));
691 __ bind(&init_loop);
692 __ sw(a0, MemOperand(a1));
693 __ Addu(a1, a1, Operand(-kPointerSize));
694 __ Subu(a2, a2, Operand(1));
695 __ Branch(&init_loop, ne, a2, Operand(zero_reg));
699 __ lw(backtrack_stackpointer(), MemOperand(frame_pointer(), kStackHighEnd));
701 __ li(code_pointer(), Operand(masm_->CodeObject()), CONSTANT_SIZE);
704 __ lw(a0, MemOperand(frame_pointer(), kAtStart));
705 __ Branch(&at_start, ne, a0, Operand(zero_reg));
707 __ jmp(&start_label_);
708 __ bind(&at_start);
709 __ li(current_character(), Operand('\n'));
710 __ jmp(&start_label_);
716 __ bind(&success_label_);
719 __ lw(a1, MemOperand(frame_pointer(), kInputStart));
720 __ lw(a0, MemOperand(frame_pointer(), kRegisterOutput));
721 __ lw(a2, MemOperand(frame_pointer(), kStartIndex));
722 __ Subu(a1, end_of_input_address(), a1);
725 __ srl(a1, a1, 1);
728 __ Addu(a1, a1, Operand(a2));
736 __ lw(a2, register_location(i));
737 __ lw(a3, register_location(i + 1));
739 __ sra(a2, a2, 1);
740 __ Addu(a2, a2, a1);
741 __ sra(a3, a3, 1);
742 __ Addu(a3, a3, a1);
744 __ Addu(a2, a1, Operand(a2));
745 __ Addu(a3, a1, Operand(a3));
747 __ sw(a2, MemOperand(a0));
748 __ Addu(a0, a0, kPointerSize);
749 __ sw(a3, MemOperand(a0));
750 __ Addu(a0, a0, kPointerSize);
753 __ li(v0, Operand(SUCCESS));
756 __ bind(&exit_label_);
758 __ mov(sp, frame_pointer());
760 __ MultiPop(registers_to_retain | ra.bit());
761 __ Ret();
765 __ bind(&backtrack_label_);
777 __ MultiPush(regexp_registers_to_retain);
779 __ MultiPop(regexp_registers_to_retain);
782 __ Branch(&exit_label_, ne, v0, Operand(zero_reg));
785 __ lw(end_of_input_address(), MemOperand(frame_pointer(), kInputEnd));
786 __ li(code_pointer(), Operand(masm_->CodeObject()), CONSTANT_SIZE);
797 __ MultiPush(regexp_registers);
801 __ PrepareCallCFunction(num_arguments, a0);
802 __ mov(a0, backtrack_stackpointer());
803 __ Addu(a1, frame_pointer(), Operand(kStackHighEnd));
804 __ li(a2, Operand(ExternalReference::isolate_address()));
807 __ CallCFunction(grow_stack, num_arguments);
809 __ MultiPop(regexp_registers);
812 __ Branch(&exit_with_exception, eq, v0, Operand(zero_reg));
814 __ mov(backtrack_stackpointer(), v0);
816 __ li(code_pointer(), Operand(masm_->CodeObject()), CONSTANT_SIZE);
817 __ lw(end_of_input_address(), MemOperand(frame_pointer(), kInputEnd));
823 __ bind(&exit_with_exception);
825 __ li(v0, Operand(EXCEPTION));
826 __ jmp(&exit_label_);
845 __ jmp(to);
853 __ lw(a0, register_location(reg));
861 __ lw(a0, register_location(reg));
868 __ lw(a0, register_location(reg));
899 __ sw(a0, register_location(register_index));
906 __ li(a0, Operand(target + Code::kHeaderSize - kHeapObjectTag));
909 __ Branch(&after_constant);
912 __ emit(0);
914 __ bind(&after_constant);
916 __ lw(a0, MemOperand(code_pointer(), cp_offset));
918 __ Addu(a0, code_pointer(), cp_offset);
919 __ lw(a0, MemOperand(a0, 0));
934 __ lw(a0, register_location(register_index));
941 __ lw(current_input_offset(), register_location(reg));
946 __ lw(backtrack_stackpointer(), register_location(reg));
947 __ lw(a0, MemOperand(frame_pointer(), kStackHighEnd));
948 __ Addu(backtrack_stackpointer(), backtrack_stackpointer(), Operand(a0));
954 __ Branch(&after_position,
958 __ li(current_input_offset(), -by * char_size());
963 __ bind(&after_position);
969 __ li(a0, Operand(to));
970 __ sw(a0, register_location(register_index));
975 __ jmp(&success_label_);
982 __ sw(current_input_offset(), register_location(reg));
984 __ Addu(a0, current_input_offset(), Operand(cp_offset * char_size()));
985 __ sw(a0, register_location(reg));
992 __ lw(a0, MemOperand(frame_pointer(), kInputStartMinusOne));
994 __ sw(a0, register_location(reg));
1000 __ lw(a1, MemOperand(frame_pointer(), kStackHighEnd));
1001 __ Subu(a0, backtrack_stackpointer(), a1);
1002 __ sw(a0, register_location(reg));
1010 __ PrepareCallCFunction(num_arguments, scratch);
1011 __ mov(a2, frame_pointer());
1013 __ li(a1, Operand(masm_->CodeObject()), CONSTANT_SIZE);
1154 __ jmp(to);
1158 __ Branch(&backtrack_label_, condition, rs, rt);
1161 __ Branch(to, condition, rs, rt);
1167 __ BranchAndLink(to, cond, rs, rt);
1172 __ pop(ra);
1173 __ Addu(t5, ra, Operand(masm_->CodeObject()));
1174 __ Jump(t5);
1179 __ bind(name);
1180 __ Subu(ra, ra, Operand(masm_->CodeObject()));
1181 __ push(ra);
1187 __ Addu(backtrack_stackpointer(),
1190 __ sw(source, MemOperand(backtrack_stackpointer()));
1196 __ lw(target, MemOperand(backtrack_stackpointer()));
1197 __ Addu(backtrack_stackpointer(), backtrack_stackpointer(), kPointerSize);
1205 __ li(a0, Operand(stack_limit));
1206 __ lw(a0, MemOperand(a0));
1215 __ li(a0, Operand(stack_limit));
1216 __ lw(a0, MemOperand(a0));
1226 __ li(code_pointer(), Operand(function));
1228 __ CallStub(&stub);
1230 __ lw(sp, MemOperand(sp, 16));
1232 __ li(code_pointer(), Operand(masm_->CodeObject()), CONSTANT_SIZE);
1240 __ Addu(a0, current_input_offset(), Operand(cp_offset * char_size()));
1246 __ Addu(t5, end_of_input_address(), Operand(offset));
1248 __ lbu(current_character(), MemOperand(t5, 0));
1251 __ lhu(current_character(), MemOperand(t5, 0));
1261 __ Subu(sp, sp, Operand(stack_alignment + kCArgsSlotsSize));
1263 __ Addu(a0, sp, return_address_offset);
1264 __ sw(ra, MemOperand(a0, 0));
1265 __ mov(t9, t1);
1266 __ Call(t9);
1267 __ lw(ra, MemOperand(sp, return_address_offset));
1268 __ Addu(sp, sp, Operand(stack_alignment + kCArgsSlotsSize));
1269 __ Jump(ra);
1273 #undef __