Lines Matching refs:str
308 skip_whitespace (char *str) in skip_whitespace() argument
310 while (*str == ' ' || *str == '\t') in skip_whitespace()
311 str++; in skip_whitespace()
312 return str; in skip_whitespace()
316 find_whitespace (char *str) in find_whitespace() argument
318 while (*str != ' ' && *str != '\t' && *str != 0) in find_whitespace()
319 str++; in find_whitespace()
320 return str; in find_whitespace()
324 parse_reg (char *str, struct pdp11_code *operand) in parse_reg() argument
326 str = skip_whitespace (str); in parse_reg()
327 if (TOLOWER (*str) == 'r') in parse_reg()
329 str++; in parse_reg()
330 switch (*str) in parse_reg()
334 operand->code = *str - '0'; in parse_reg()
335 str++; in parse_reg()
339 return str - 1; in parse_reg()
342 else if (strncmp (str, "sp", 2) == 0 in parse_reg()
343 || strncmp (str, "SP", 2) == 0) in parse_reg()
346 str += 2; in parse_reg()
348 else if (strncmp (str, "pc", 2) == 0 in parse_reg()
349 || strncmp (str, "PC", 2) == 0) in parse_reg()
352 str += 2; in parse_reg()
357 return str; in parse_reg()
360 return str; in parse_reg()
364 parse_ac5 (char *str, struct pdp11_code *operand) in parse_ac5() argument
366 str = skip_whitespace (str); in parse_ac5()
367 if (strncmp (str, "fr", 2) == 0 in parse_ac5()
368 || strncmp (str, "FR", 2) == 0 in parse_ac5()
369 || strncmp (str, "ac", 2) == 0 in parse_ac5()
370 || strncmp (str, "AC", 2) == 0) in parse_ac5()
372 str += 2; in parse_ac5()
373 switch (*str) in parse_ac5()
377 operand->code = *str - '0'; in parse_ac5()
378 str++; in parse_ac5()
382 return str - 2; in parse_ac5()
388 return str; in parse_ac5()
391 return str; in parse_ac5()
395 parse_ac (char *str, struct pdp11_code *operand) in parse_ac() argument
397 str = parse_ac5 (str, operand); in parse_ac()
401 return str - 3; in parse_ac()
404 return str; in parse_ac()
408 parse_expression (char *str, struct pdp11_code *operand) in parse_expression() argument
414 input_line_pointer = str; in parse_expression()
420 return str; in parse_expression()
423 str = input_line_pointer; in parse_expression()
428 return str; in parse_expression()
432 parse_op_no_deferred (char *str, struct pdp11_code *operand) in parse_op_no_deferred() argument
436 str = skip_whitespace (str); in parse_op_no_deferred()
438 switch (*str) in parse_op_no_deferred()
441 str = parse_reg (str + 1, operand); in parse_op_no_deferred()
443 return str; in parse_op_no_deferred()
444 str = skip_whitespace (str); in parse_op_no_deferred()
445 if (*str != ')') in parse_op_no_deferred()
448 return str; in parse_op_no_deferred()
450 str++; in parse_op_no_deferred()
451 if (*str == '+') in parse_op_no_deferred()
454 str++; in parse_op_no_deferred()
465 str = parse_expression (str + 1, operand); in parse_op_no_deferred()
467 return str; in parse_op_no_deferred()
503 if (strncmp (str, "-(", 2) == 0) /* -(rn) */ in parse_op_no_deferred()
505 str = parse_reg (str + 2, operand); in parse_op_no_deferred()
507 return str; in parse_op_no_deferred()
508 str = skip_whitespace (str); in parse_op_no_deferred()
509 if (*str != ')') in parse_op_no_deferred()
512 return str; in parse_op_no_deferred()
515 str++; in parse_op_no_deferred()
519 str = parse_expression (str, operand); in parse_op_no_deferred()
521 return str; in parse_op_no_deferred()
523 str = skip_whitespace (str); in parse_op_no_deferred()
525 if (*str != '(') in parse_op_no_deferred()
536 str++; in parse_op_no_deferred()
537 str = parse_reg (str, operand); in parse_op_no_deferred()
539 return str; in parse_op_no_deferred()
541 str = skip_whitespace (str); in parse_op_no_deferred()
543 if (*str != ')') in parse_op_no_deferred()
546 return str; in parse_op_no_deferred()
549 str++; in parse_op_no_deferred()
575 return str; in parse_op_no_deferred()
579 parse_op_noreg (char *str, struct pdp11_code *operand) in parse_op_noreg() argument
581 str = skip_whitespace (str); in parse_op_noreg()
584 if (*str == '@' || *str == '*') in parse_op_noreg()
586 str = parse_op_no_deferred (str + 1, operand); in parse_op_noreg()
588 return str; in parse_op_noreg()
592 str = parse_op_no_deferred (str, operand); in parse_op_noreg()
594 return str; in parse_op_noreg()
598 parse_op (char *str, struct pdp11_code *operand) in parse_op() argument
600 str = skip_whitespace (str); in parse_op()
602 str = parse_reg (str, operand); in parse_op()
604 return str; in parse_op()
607 parse_ac5 (str, operand); in parse_op()
611 return str; in parse_op()
614 return parse_op_noreg (str, operand); in parse_op()
618 parse_fop (char *str, struct pdp11_code *operand) in parse_fop() argument
620 str = skip_whitespace (str); in parse_fop()
622 str = parse_ac5 (str, operand); in parse_fop()
624 return str; in parse_fop()
627 parse_reg (str, operand); in parse_fop()
631 return str; in parse_fop()
634 return parse_op_noreg (str, operand); in parse_fop()
638 parse_separator (char *str, int *error) in parse_separator() argument
640 str = skip_whitespace (str); in parse_separator()
641 *error = (*str != ','); in parse_separator()
643 str++; in parse_separator()
644 return str; in parse_separator()
655 char *str; in md_assemble() local
659 str = skip_whitespace (instruction_string); in md_assemble()
660 p = find_whitespace (str); in md_assemble()
661 if (p - str == 0) in md_assemble()
669 op = (struct pdp11_opcode *)hash_find (insn_hash, str); in md_assemble()
673 as_bad (_("Unknown instruction '%s'"), str); in md_assemble()
693 str = p; in md_assemble()
699 str = skip_whitespace (str); in md_assemble()
700 if (*str == 0) in md_assemble()
701 str = ""; in md_assemble()
707 str = skip_whitespace (str); in md_assemble()
708 if (*str == '#' || *str == '$') in md_assemble()
709 str++; in md_assemble()
710 str = parse_expression (str, &op1); in md_assemble()
748 new_pointer = parse_expression (str, &op1); in md_assemble()
762 str = new_pointer; in md_assemble()
769 str = parse_reg (str, &op1); in md_assemble()
776 str = parse_op (str, &op1); in md_assemble()
785 str = parse_fop (str, &op1); in md_assemble()
794 str = parse_reg (str, &op2); in md_assemble()
798 str = parse_separator (str, &error); in md_assemble()
804 str = parse_op (str, &op1); in md_assemble()
813 str = parse_op (str, &op1); in md_assemble()
819 str = parse_separator (str, &error); in md_assemble()
825 str = parse_reg (str, &op2); in md_assemble()
832 str = parse_ac (str, &op2); in md_assemble()
836 str = parse_separator (str, &error); in md_assemble()
842 str = parse_fop (str, &op1); in md_assemble()
851 str = parse_fop (str, &op1); in md_assemble()
857 str = parse_separator (str, &error); in md_assemble()
863 str = parse_ac (str, &op2); in md_assemble()
870 str = parse_ac (str, &op2); in md_assemble()
874 str = parse_separator (str, &error); in md_assemble()
880 str = parse_op (str, &op1); in md_assemble()
889 str = parse_op (str, &op1); in md_assemble()
895 str = parse_separator (str, &error); in md_assemble()
901 str = parse_ac (str, &op2); in md_assemble()
908 str = parse_op (str, &op1); in md_assemble()
914 str = parse_separator (str, &error); in md_assemble()
920 str = parse_op (str, &op2); in md_assemble()
931 str = parse_reg (str, &op2); in md_assemble()
935 str = parse_separator (str, &error); in md_assemble()
941 new_pointer = parse_expression (str, &op1); in md_assemble()
955 str = new_pointer; in md_assemble()
971 str = skip_whitespace (str); in md_assemble()
972 if (*str) in md_assemble()