It turns out there are only 3 non-first-class type kinds left now, so
authorDan Gohman <gohman@apple.com>
Fri, 23 May 2008 22:47:52 +0000 (22:47 +0000)
committerDan Gohman <gohman@apple.com>
Fri, 23 May 2008 22:47:52 +0000 (22:47 +0000)
it's simpler for isFirstClassType to use a negative test.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51511 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Type.h

index 743a0189db1a4db0df313575a6b4a677fa998d2d..b029212de492e488ca5554ee84bb7bd34383e2a0 100644 (file)
@@ -216,8 +216,9 @@ public:
   /// is a valid type for a Value.
   ///
   inline bool isFirstClassType() const {
-    return isSingleValueType() ||
-           ID == StructTyID || ID == ArrayTyID;
+    // There are more first-class kinds than non-first-class kinds, so a
+    // negative test is simpler than a positive one.
+    return ID != FunctionTyID && ID != VoidTyID && ID != OpaqueTyID;
   }
 
   /// isSingleValueType - Return true if the type is a valid type for a