There was no reason for these to be bit-fields, they just need to be unique.
[oota-llvm.git] / include / llvm / CodeGen / ValueTypes.h
1 //===- CodeGen/ValueTypes.h - Low-Level Target independ. types --*- C++ -*-===//
2 //
3 // This file defines the set of low-level target independent types which various
4 // values in the code generator are.  This allows the target specific behavior
5 // of instructions to be described to target independent passes.
6 //
7 //===----------------------------------------------------------------------===//
8
9 #ifndef LLVM_CODEGEN_VALUETYPES_H
10 #define LLVM_CODEGEN_VALUETYPES_H
11
12 /// MVT namespace - This namespace defines the ValueType enum, which contains
13 /// the various low-level value types.
14 ///
15 namespace MVT {  // MVT = Machine Value Types
16   enum ValueType {
17     // If you change this numbering, you must change the values in Target.td as
18     // well!
19     Other          =   0,   // This is a non-standard value
20     i1             =   1,   // This is a 1 bit integer value
21     i8             =   2,   // This is an 8 bit integer value
22     i16            =   3,   // This is a 16 bit integer value
23     i32            =   4,   // This is a 32 bit integer value
24     i64            =   5,   // This is a 64 bit integer value
25     i128           =   6,   // This is a 128 bit integer value
26
27     f32             =  7,   // This is a 32 bit floating point value
28     f64             =  8,   // This is a 64 bit floating point value
29     f80             =  9,   // This is a 80 bit floating point value
30     f128            = 10,   // This is a 128 bit floating point value
31
32     isVoid          = 11,   // This has no value
33   };
34 };
35
36 #endif
37