[GlobalISel] Add Selected MachineFunction property.
authorAhmed Bougacha <ahmed.bougacha@gmail.com>
Tue, 2 Aug 2016 16:49:19 +0000 (16:49 +0000)
committerAhmed Bougacha <ahmed.bougacha@gmail.com>
Tue, 2 Aug 2016 16:49:19 +0000 (16:49 +0000)
commitb109d51865e5aeae8ca2e9b1e62f56d80a5b3ad1
treec5156fc28e8d5fa0a92a719adfe239e026e568a0
parentc43aa5a5b62b21c1d38cd3d2ece7d0d5124d5180
[GlobalISel] Add Selected MachineFunction property.

Selected: the InstructionSelect pass ran and all pre-isel generic
instructions have been eliminated; i.e., all instructions are now
target-specific or non-pre-isel generic instructions (e.g., COPY).

Since only pre-isel generic instructions can have generic virtual register
operands, this also means that all generic virtual registers have been
constrained to virtual registers (assigned to register classes) and that
all sizes attached to them have been eliminated.

This lets us enforce certain invariants across passes.
This property is GlobalISel-specific, but is always available.

llvm-svn: 277482
llvm/include/llvm/CodeGen/MIRYamlMapping.h
llvm/include/llvm/CodeGen/MachineFunction.h
llvm/lib/CodeGen/MIRParser/MIRParser.cpp
llvm/lib/CodeGen/MIRPrinter.cpp
llvm/lib/CodeGen/MachineFunction.cpp
llvm/test/CodeGen/MIR/Generic/global-isel-properties.mir