]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
* pa.c (hppa_profile_hook): Use force_reg to get the address
authorlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 7 May 2002 17:03:37 +0000 (17:03 +0000)
committerlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 7 May 2002 17:03:37 +0000 (17:03 +0000)
of the profile hook into an appropriate pseudo register.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@53260 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/pa/pa.c

index 2671b48b4cca5f8392e6e1baca233f6c5832d9ec..6852c2d16ba940159ba8a674082ffbb333a7bb1e 100644 (file)
@@ -1,3 +1,8 @@
+Tue May  7 10:06:22 2002  Jeffrey A Law  (law@redhat.com)
+
+       * pa.c (hppa_profile_hook): Use force_reg to get the address
+       of the profile hook into an appropriate pseudo register.
+
 2002-05-07  Mark Mitchell  <mark@codesourcery.com>
 
        * config/rs6000/sysv4.h (SUBTARGET_SWITCHES): Add -mwindiss.
index f5852b9c07417b7621cd86491dc655ec5c6004c0..cbb8d876d481baff402ea01d380cbebb535b518d 100644 (file)
@@ -3729,24 +3729,7 @@ hppa_profile_hook (label_no)
     ASM_GENERATE_INTERNAL_LABEL (count_label_name, "LP", label_no);
     count_label_rtx = gen_rtx_SYMBOL_REF (Pmode, ggc_strdup (count_label_name));
 
-    if (flag_pic)
-      {
-       rtx tmpreg;
-
-       current_function_uses_pic_offset_table = 1;
-       tmpreg = gen_rtx_REG (Pmode, 1);
-       emit_move_insn (tmpreg,
-                       gen_rtx_PLUS (Pmode, pic_offset_table_rtx,
-                                     gen_rtx_HIGH (Pmode, count_label_rtx)));
-       addr = gen_rtx_MEM (Pmode,
-                           gen_rtx_LO_SUM (Pmode, tmpreg, count_label_rtx));
-      }
-    else
-      {
-       rtx tmpreg = gen_rtx_REG (Pmode, 1);
-       emit_move_insn (tmpreg, gen_rtx_HIGH (Pmode, count_label_rtx));
-       addr = gen_rtx_LO_SUM (Pmode, tmpreg, count_label_rtx);
-      }
+    addr = force_reg (Pmode, count_label_rtx);
     r24 = gen_rtx_REG (Pmode, 24);
     emit_move_insn (r24, addr);