OSDN Git Service

* config/s390/s390.c (s390_expand_cmpstr): Disable CLC loop.
authoruweigand <uweigand@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 23 Apr 2003 17:13:11 +0000 (17:13 +0000)
committeruweigand <uweigand@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 23 Apr 2003 17:13:11 +0000 (17:13 +0000)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@66002 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/s390/s390.c

index 22312ac..c263b16 100644 (file)
@@ -1,3 +1,7 @@
+2003-04-23  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * config/s390/s390.c (s390_expand_cmpstr): Disable CLC loop.
+
 2003-04-23  Richard Earnshaw  <rearnsha@arm.com>
 
        * arm.h (TARGET_OPTIONS): Add value field.
index 38c630d..2a49381 100644 (file)
@@ -2963,7 +2963,7 @@ s390_expand_cmpstr (target, op0, op1, len)
         emit_move_insn (target, const0_rtx);
     }
 
-  else if (TARGET_MVCLE)
+  else /* if (TARGET_MVCLE) */
     {
       enum machine_mode double_mode = TARGET_64BIT ? TImode : DImode;
       enum machine_mode single_mode = TARGET_64BIT ? DImode : SImode;
@@ -2982,6 +2982,9 @@ s390_expand_cmpstr (target, op0, op1, len)
       emit_insn ((*gen_result) (target));
     }
 
+#if 0
+  /* Deactivate for now as profile code cannot cope with
+     CC being live across basic block boundaries.  */
   else
     {
       rtx addr0, addr1, count, blocks, temp;
@@ -3047,6 +3050,7 @@ s390_expand_cmpstr (target, op0, op1, len)
 
       emit_insn ((*gen_result) (target));
     }
+#endif
 }
 
 /* This is called from dwarf2out.c via ASM_OUTPUT_DWARF_DTPREL.