Document the use of getValueType() more accurately, specifically explain
authorReid Spencer <rspencer@reidspencer.com>
Mon, 5 Mar 2007 23:06:32 +0000 (23:06 +0000)
committerReid Spencer <rspencer@reidspencer.com>
Mon, 5 Mar 2007 23:06:32 +0000 (23:06 +0000)
that the instruction opcode is added to the InstructionVal value and the
consequences of that.

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

include/llvm/Value.h

index ddfcbb69796ff83947941228f0fba2d65c4938dd..3be3c5e7be5cd41970ce16fafa3608b15eb6feb6 100644 (file)
@@ -181,10 +181,12 @@ public:
   /// getValueType - Return an ID for the concrete type of this object.  This is
   /// used to implement the classof checks.  This should not be used for any
   /// other purpose, as the values may change as LLVM evolves.  Also, note that
-  /// starting with the InstructionVal value, the value stored is actually the
-  /// Instruction opcode, so there are more than just these values possible here
-  /// (and Instruction must be last).
-  ///
+  /// for instructions, the Instruction's opcode is added to InstructionVal. So
+  /// this means three things:
+  /// # there is no value with code InstructionVal (no opcode==0).
+  /// # there are more possible values for the value type than in ValueTy enum.
+  /// # the InstructionVal enumerator must be the highest valued enumerator in
+  ///   the ValueTy enum.
   unsigned getValueType() const {
     return SubclassID;
   }