pa.c (store_reg): Do not call add_high_const generator directly.

* pa.c (store_reg): Do not call add_high_const generator directly.
        (load_reg, set_reg_plus_d): Likewise.
        * pa.md (add_high_const): No longer a named pattern.

From-SVN: r28327
This commit is contained in:
Jeffrey A Law 1999-07-28 22:34:57 +00:00 committed by Jeff Law
parent 2a0a6f69ea
commit fc82f2f1dd
3 changed files with 17 additions and 13 deletions

View File

@ -1,5 +1,9 @@
Wed Jul 28 13:18:35 1999 Jeffrey A Law (law@cygnus.com)
* pa.c (store_reg): Do not call add_high_const generator directly.
(load_reg, set_reg_plus_d): Likewise.
* pa.md (add_high_const): No longer a named pattern.
* pa.c (legitimize_address): Consistently use Pmode rather than
SImode. Do not call gen_pic2_highpart directly anymore.
* pa.md (pic2_highpart): No longer a named pattern.

View File

@ -2453,7 +2453,7 @@ remove_useless_addtr_insns (insns, check_notes)
*/
/* Emit RTL to store REG at the memory location specified by BASE+DISP.
Handle case where DISP > 8k by using the add_high_const pattern.
Handle case where DISP > 8k by using the add_high_const patterns.
Note in DISP > 8k case, we will leave the high part of the address
in %r1. There is code in expand_hppa_{prologue,epilogue} that knows this.*/
@ -2471,9 +2471,9 @@ store_reg (reg, disp, base)
}
else
{
emit_insn (gen_add_high_const (gen_rtx_REG (Pmode, 1),
gen_rtx_REG (Pmode, base),
GEN_INT (disp)));
emit_move_insn (gen_rtx_REG (Pmode, 1),
gen_rtx_PLUS (Pmode, gen_rtx_REG (Pmode, base),
gen_rtx_HIGH (Pmode, GEN_INT (disp))));
emit_move_insn (gen_rtx_MEM (word_mode,
gen_rtx_LO_SUM (Pmode,
gen_rtx_REG (Pmode, 1),
@ -2483,7 +2483,7 @@ store_reg (reg, disp, base)
}
/* Emit RTL to load REG from the memory location specified by BASE+DISP.
Handle case where DISP > 8k by using the add_high_const pattern.
Handle case where DISP > 8k by using the add_high_const patterns.
Note in DISP > 8k case, we will leave the high part of the address
in %r1. There is code in expand_hppa_{prologue,epilogue} that knows this.*/
@ -2501,9 +2501,9 @@ load_reg (reg, disp, base)
}
else
{
emit_insn (gen_add_high_const (gen_rtx_REG (Pmode, 1),
gen_rtx_REG (Pmode, base),
GEN_INT (disp)));
emit_move_insn (gen_rtx_REG (Pmode, 1),
gen_rtx_PLUS (Pmode, gen_rtx_REG (Pmode, base),
gen_rtx_HIGH (Pmode, GEN_INT (disp))));
emit_move_insn (gen_rtx_REG (word_mode, reg),
gen_rtx_MEM (word_mode,
gen_rtx_LO_SUM (Pmode,
@ -2513,7 +2513,7 @@ load_reg (reg, disp, base)
}
/* Emit RTL to set REG to the value specified by BASE+DISP.
Handle case where DISP > 8k by using the add_high_const pattern.
Handle case where DISP > 8k by using the add_high_const patterns.
Note in DISP > 8k case, we will leave the high part of the address
in %r1. There is code in expand_hppa_{prologue,epilogue} that knows this.*/
@ -2530,9 +2530,9 @@ set_reg_plus_d(reg, base, disp)
}
else
{
emit_insn (gen_add_high_const (gen_rtx_REG (Pmode, 1),
gen_rtx_REG (Pmode, base),
GEN_INT (disp)));
emit_move_insn (gen_rtx_REG (Pmode, 1),
gen_rtx_PLUS (Pmode, gen_rtx_REG (Pmode, base),
gen_rtx_HIGH (Pmode, GEN_INT (disp))));
emit_move_insn (gen_rtx_REG (Pmode, reg),
gen_rtx_LO_SUM (Pmode,
gen_rtx_REG (Pmode, 1),

View File

@ -1668,7 +1668,7 @@
;; Because of the additional %r1 pressure, we probably do not
;; want to use this in general code, so make it available
;; only after reload.
(define_insn "add_high_const"
(define_insn ""
[(set (match_operand:SI 0 "register_operand" "=!a,*r")
(plus:SI (match_operand:SI 1 "register_operand" "r,r")
(high:SI (match_operand 2 "const_int_operand" ""))))]