From cb048097c9db34307ad57d5dc22a7cacf30ac421 Mon Sep 17 00:00:00 2001
From: John Criswell <criswell@uiuc.edu>
Date: Tue, 5 Aug 2003 21:38:28 +0000
Subject: [PATCH] Reverted back to using OR for cmp/mv operations for lex/yacc
 output. The shell AND/OR operators short-circuit on command success/failure,
 which is the inverse of exit status (i.e. 0 means success, non-zero means
 failure).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7616 91177308-0d34-0410-b5e6-96231b3b80d8
---
 Makefile.common | 6 +++---
 Makefile.rules  | 6 +++---
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/Makefile.common b/Makefile.common
index 0eb4b885fc4..3c1d0c85770 100644
--- a/Makefile.common
+++ b/Makefile.common
@@ -773,7 +773,7 @@ YACC_OUTPUT = $(addprefix $(YACC_FILES:%.y=%), .h .cpp .output)
           $(SED) 's/void \*yy_flex_realloc/inline void *yy_flex_realloc/' | \
           $(SED) 's/#define YY_BUF_SIZE 16384/#define YY_BUF_SIZE (16384*64)/' \
               > $@.tmp
-	$(VERB) cmp $@ $@.tmp > /dev/null && ${MV} -f $@.tmp $@
+	$(VERB) cmp $@ $@.tmp > /dev/null || ${MV} -f $@.tmp $@
 	@# remove the output of flex if it didn't get moved over...
 	@rm -f $@.tmp
 
@@ -783,8 +783,8 @@ YACC_OUTPUT = $(addprefix $(YACC_FILES:%.y=%), .h .cpp .output)
 %.cpp %.h : %.y
 	@echo Bison\'ing $<...
 	$(VERB) $(BISON) -v -d -p $(<:%Parser.y=%) $*.y
-	$(VERB) cmp $*.tab.c $*.cpp > /dev/null && ${MV} -f $*.tab.c $*.cpp
-	$(VERB) cmp $*.tab.h $*.h > /dev/null && ${MV} -f $*.tab.h $*.h
+	$(VERB) cmp $*.tab.c $*.cpp > /dev/null || ${MV} -f $*.tab.c $*.cpp
+	$(VERB) cmp $*.tab.h $*.h > /dev/null || ${MV} -f $*.tab.h $*.h
 	@# If the files were not updated, don't leave them lying around...
 	@rm -f $*.tab.c $*.tab.h
 
diff --git a/Makefile.rules b/Makefile.rules
index 0eb4b885fc4..3c1d0c85770 100644
--- a/Makefile.rules
+++ b/Makefile.rules
@@ -773,7 +773,7 @@ YACC_OUTPUT = $(addprefix $(YACC_FILES:%.y=%), .h .cpp .output)
           $(SED) 's/void \*yy_flex_realloc/inline void *yy_flex_realloc/' | \
           $(SED) 's/#define YY_BUF_SIZE 16384/#define YY_BUF_SIZE (16384*64)/' \
               > $@.tmp
-	$(VERB) cmp $@ $@.tmp > /dev/null && ${MV} -f $@.tmp $@
+	$(VERB) cmp $@ $@.tmp > /dev/null || ${MV} -f $@.tmp $@
 	@# remove the output of flex if it didn't get moved over...
 	@rm -f $@.tmp
 
@@ -783,8 +783,8 @@ YACC_OUTPUT = $(addprefix $(YACC_FILES:%.y=%), .h .cpp .output)
 %.cpp %.h : %.y
 	@echo Bison\'ing $<...
 	$(VERB) $(BISON) -v -d -p $(<:%Parser.y=%) $*.y
-	$(VERB) cmp $*.tab.c $*.cpp > /dev/null && ${MV} -f $*.tab.c $*.cpp
-	$(VERB) cmp $*.tab.h $*.h > /dev/null && ${MV} -f $*.tab.h $*.h
+	$(VERB) cmp $*.tab.c $*.cpp > /dev/null || ${MV} -f $*.tab.c $*.cpp
+	$(VERB) cmp $*.tab.h $*.h > /dev/null || ${MV} -f $*.tab.h $*.h
 	@# If the files were not updated, don't leave them lying around...
 	@rm -f $*.tab.c $*.tab.h