[llvm-commits] CVS: llvm/tools/llvm-upgrade/ParserInternals.h UpgradeParser.y

Reid Spencer reid at x10sys.com
Tue Dec 5 22:25:37 PST 2006



Changes in directory llvm/tools/llvm-upgrade:

ParserInternals.h updated: 1.8 -> 1.9
UpgradeParser.y updated: 1.18 -> 1.19
---
Log message:

Fix upgrade of setcc with bool operands.


---
Diffs of the changes:  (+6 -2)

 ParserInternals.h |    4 ++++
 UpgradeParser.y   |    4 ++--
 2 files changed, 6 insertions(+), 2 deletions(-)


Index: llvm/tools/llvm-upgrade/ParserInternals.h
diff -u llvm/tools/llvm-upgrade/ParserInternals.h:1.8 llvm/tools/llvm-upgrade/ParserInternals.h:1.9
--- llvm/tools/llvm-upgrade/ParserInternals.h:1.8	Tue Dec  5 13:18:29 2006
+++ llvm/tools/llvm-upgrade/ParserInternals.h	Wed Dec  6 00:25:22 2006
@@ -78,6 +78,10 @@
            oldTy == UIntTy || oldTy == ULongTy;
   }
 
+  bool isBool() const {
+    return oldTy == BoolTy;
+  }
+
   bool isSignless() const { return !isSigned() && !isUnsigned(); }
   bool isInteger() const { return isSigned() || isUnsigned(); }
   bool isIntegral() const { return oldTy == BoolTy || isInteger(); }


Index: llvm/tools/llvm-upgrade/UpgradeParser.y
diff -u llvm/tools/llvm-upgrade/UpgradeParser.y:1.18 llvm/tools/llvm-upgrade/UpgradeParser.y:1.19
--- llvm/tools/llvm-upgrade/UpgradeParser.y:1.18	Tue Dec  5 13:18:29 2006
+++ llvm/tools/llvm-upgrade/UpgradeParser.y	Wed Dec  6 00:25:22 2006
@@ -23,7 +23,7 @@
 #define YYERROR_VERBOSE 1
 #define YYINCLUDED_STDLIB_H
 #define YYDEBUG 1
-#define UPGRADE_SETCOND_OPS 0
+#define UPGRADE_SETCOND_OPS 1
 
 int yylex();                       // declaration" of xxx warnings.
 int yyparse();
@@ -255,7 +255,7 @@
       result.erase(5,1);
     else if (TI.isSigned())
       result[5] = 's';
-    else if (TI.isUnsigned() || TI.isPointer())
+    else if (TI.isUnsigned() || TI.isPointer() || TI.isBool())
       result[5] = 'u';
     else
       yyerror("Invalid integral type for setcc");






More information about the llvm-commits mailing list