* config/bfin/bfin.c (legitimize_pic_address): Lose dead code
authorbernds <bernds@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 15 Nov 2006 12:27:32 +0000 (12:27 +0000)
committerbernds <bernds@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 15 Nov 2006 12:27:32 +0000 (12:27 +0000)
that tests for CONSTANT_POOL_ADDRESS_P.

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

gcc/ChangeLog
gcc/config/bfin/bfin.c

index 8e7537e..25b1813 100644 (file)
@@ -2,6 +2,9 @@
 
        * tree-ssa-loop-ivopts.c (determine_iv_costs): Fix formatting.
 
+       * config/bfin/bfin.c (legitimize_pic_address): Lose dead code
+       that tests for CONSTANT_POOL_ADDRESS_P.
+
 2006-11-15  Jakub Jelinek  <jakub@redhat.com>
 
        PR tree-optimization/29581
index fd056a2..299fc56 100644 (file)
@@ -145,36 +145,27 @@ legitimize_pic_address (rtx orig, rtx reg, rtx picreg)
 
   if (GET_CODE (addr) == SYMBOL_REF || GET_CODE (addr) == LABEL_REF)
     {
-      if (GET_CODE (addr) == SYMBOL_REF && CONSTANT_POOL_ADDRESS_P (addr))
-       reg = new = orig;
+      int unspec;
+      rtx tmp;
+
+      if (TARGET_ID_SHARED_LIBRARY)
+       unspec = UNSPEC_MOVE_PIC;
+      else if (GET_CODE (addr) == SYMBOL_REF
+              && SYMBOL_REF_FUNCTION_P (addr))
+       unspec = UNSPEC_FUNCDESC_GOT17M4;
       else
-       {
-         int unspec;
-         rtx tmp;
-
-         if (TARGET_ID_SHARED_LIBRARY)
-           unspec = UNSPEC_MOVE_PIC;
-         else if (GET_CODE (addr) == SYMBOL_REF
-                  && SYMBOL_REF_FUNCTION_P (addr))
-           {
-             unspec = UNSPEC_FUNCDESC_GOT17M4;
-           }
-         else
-           {
-             unspec = UNSPEC_MOVE_FDPIC;
-           }
+       unspec = UNSPEC_MOVE_FDPIC;
 
-         if (reg == 0)
-           {
-             gcc_assert (!no_new_pseudos);
-             reg = gen_reg_rtx (Pmode);
-           }
+      if (reg == 0)
+       {
+         gcc_assert (!no_new_pseudos);
+         reg = gen_reg_rtx (Pmode);
+       }
 
-         tmp = gen_rtx_UNSPEC (Pmode, gen_rtvec (1, addr), unspec);
-         new = gen_const_mem (Pmode, gen_rtx_PLUS (Pmode, picreg, tmp));
+      tmp = gen_rtx_UNSPEC (Pmode, gen_rtvec (1, addr), unspec);
+      new = gen_const_mem (Pmode, gen_rtx_PLUS (Pmode, picreg, tmp));
 
-         emit_move_insn (reg, new);
-       }
+      emit_move_insn (reg, new);
       if (picreg == pic_offset_table_rtx)
        current_function_uses_pic_offset_table = 1;
       return reg;