LLVM 19.0.0git
Classes | Namespaces | Functions
LowLevelType.h File Reference

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

#include "llvm/ADT/DenseMapInfo.h"
#include "llvm/CodeGenTypes/MachineValueType.h"
#include "llvm/Support/Debug.h"
#include <cassert>

Go to the source code of this file.

Classes

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

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
 

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 LowLevelType.h.