Lines Matching refs:orig

301 gen_pic_offset (rtx orig, rtx pic_base)
304 return orig;
306 return gen_rtx_CONST (Pmode, gen_rtx_MINUS (Pmode, orig, pic_base));
502 machopic_indirect_data_reference (rtx orig, rtx reg)
504 rtx ptr_ref = orig;
507 return orig;
509 if (GET_CODE (orig) == SYMBOL_REF)
511 int defined = machopic_data_defined_p (orig);
518 emit_insn (gen_macho_high (hi_reg, orig));
519 emit_insn (gen_macho_low (reg, hi_reg, orig));
530 rtx offset = gen_pic_offset (orig, pic_base);
544 orig = reg;
555 orig = gen_rtx_PLUS (Pmode, pic_offset_table_rtx, reg);
558 return orig;
563 machopic_indirection_name (orig, /*stub_p=*/false)));
565 SYMBOL_REF_DATA (ptr_ref) = SYMBOL_REF_DATA (orig);
572 else if (GET_CODE (orig) == CONST)
577 if (GET_CODE (XEXP (orig, 0)) == PLUS)
579 base = machopic_indirect_data_reference (XEXP (XEXP (orig, 0), 0),
581 orig = machopic_indirect_data_reference (XEXP (XEXP (orig, 0), 1),
585 return orig;
587 if (MACHOPIC_PURE && GET_CODE (orig) == CONST_INT)
588 result = plus_constant (base, INTVAL (orig));
590 result = gen_rtx_PLUS (Pmode, base, orig);
608 else if (GET_CODE (orig) == MEM)
609 XEXP (ptr_ref, 0) = machopic_indirect_data_reference (XEXP (orig, 0), reg);
614 else if (GET_CODE (orig) == PLUS
615 && GET_CODE (XEXP (orig, 0)) == REG
616 && REGNO (XEXP (orig, 0)) == PIC_OFFSET_TABLE_REGNUM
620 && GET_CODE (XEXP (orig, 1)) == CONST
624 emit_move_insn (reg, XEXP (orig, 0));
659 machopic_legitimize_pic_address (rtx orig, enum machine_mode mode, rtx reg)
661 rtx pic_ref = orig;
664 return orig;
667 if (GET_CODE (orig) == LABEL_REF
668 || (GET_CODE (orig) == SYMBOL_REF
674 orig = machopic_indirect_data_reference (orig, reg);
676 if (GET_CODE (orig) == PLUS
677 && GET_CODE (XEXP (orig, 0)) == REG)
680 return force_reg (mode, orig);
682 emit_move_insn (reg, orig);
692 if (GET_CODE (orig) == MEM)
702 && (GET_CODE (XEXP (orig, 0)) == SYMBOL_REF
703 || GET_CODE (XEXP (orig, 0)) == LABEL_REF))
707 rtx asym = XEXP (orig, 0);
711 mem = gen_const_mem (GET_MODE (orig),
721 if (GET_CODE (XEXP (orig, 0)) == SYMBOL_REF
722 || GET_CODE (XEXP (orig, 0)) == LABEL_REF)
724 rtx offset = gen_pic_offset (XEXP (orig, 0), pic_base);
739 mem = gen_const_mem (GET_MODE (orig),
781 gen_pic_offset (XEXP (orig, 0),
787 pic_ref = gen_const_mem (GET_MODE (orig), reg);
794 if (GET_CODE (orig) == SYMBOL_REF
795 || GET_CODE (orig) == LABEL_REF)
797 rtx offset = gen_pic_offset (orig, pic_base);
832 if (REG_P (orig)
833 || GET_CODE (orig) == SUBREG)
835 return orig;
853 gen_pic_offset (orig, pic_base));
876 else if (GET_CODE (orig) == SYMBOL_REF)
877 return orig;
879 else if (GET_CODE (orig) == PLUS
880 && (GET_CODE (XEXP (orig, 0)) == MEM
881 || GET_CODE (XEXP (orig, 0)) == SYMBOL_REF
882 || GET_CODE (XEXP (orig, 0)) == LABEL_REF)
883 && XEXP (orig, 0) != pic_offset_table_rtx
884 && GET_CODE (XEXP (orig, 1)) != REG)
888 int is_complex = (GET_CODE (XEXP (orig, 0)) == MEM);
890 base = machopic_legitimize_pic_address (XEXP (orig, 0), Pmode, reg);
891 orig = machopic_legitimize_pic_address (XEXP (orig, 1),
893 if (GET_CODE (orig) == CONST_INT)
895 pic_ref = plus_constant (base, INTVAL (orig));
899 pic_ref = gen_rtx_PLUS (Pmode, base, orig);
909 else if (GET_CODE (orig) == CONST)
911 return machopic_legitimize_pic_address (XEXP (orig, 0), Pmode, reg);
914 else if (GET_CODE (orig) == MEM
915 && GET_CODE (XEXP (orig, 0)) == SYMBOL_REF)
917 rtx addr = machopic_legitimize_pic_address (XEXP (orig, 0), Pmode, reg);
918 addr = replace_equiv_address (orig, addr);