1 //===- CodeGen/ValueTypes.h - Low-Level Target independ. types --*- C++ -*-===//
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.
7 //===----------------------------------------------------------------------===//
9 #ifndef LLVM_CODEGEN_VALUETYPES_H
10 #define LLVM_CODEGEN_VALUETYPES_H
12 /// MVT namespace - This namespace defines the ValueType enum, which contains
13 /// the various low-level value types.
15 namespace MVT { // MRF = Machine Register Flags
17 Other = 0 << 0, // This is a non-standard value
18 i1 = 1 << 0, // This is a 1 bit integer value
19 i8 = 1 << 1, // This is an 8 bit integer value
20 i16 = 1 << 2, // This is a 16 bit integer value
21 i32 = 1 << 3, // This is a 32 bit integer value
22 i64 = 1 << 4, // This is a 64 bit integer value
23 i128 = 1 << 5, // This is a 128 bit integer value
25 f32 = 1 << 6, // This is a 32 bit floating point value
26 f64 = 1 << 7, // This is a 64 bit floating point value
27 f80 = 1 << 8, // This is a 80 bit floating point value
28 f128 = 1 << 9, // This is a 128 bit floating point value