LLVM  13.0.0git
Classes | Namespaces | Functions
LowLevelTypeImpl.h File Reference
#include "llvm/ADT/DenseMapInfo.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/MachineValueType.h"
#include <cassert>
Include dependency graph for LowLevelTypeImpl.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  llvm::LLT
 
struct  llvm::DenseMapInfo< LLT >
 

Namespaces

 llvm
 

Functions

raw_ostream & llvm::operator<< (raw_ostream &OS, const LLT &Ty)
 

Detailed Description

Implement a low-level type suitable for MachineInstr level instruction selection.

For a type attached to a MachineInstr, we only care about 2 details: total size and the number of vector lanes (if any). Accordingly, there are 4 possible valid type-kinds:

Other information required for correct selection is expected to be carried by the opcode, or non-type flags. For example the distinction between G_ADD and G_FADD for int/float or fast-math flags.

Definition in file LowLevelTypeImpl.h.