mirror of
https://github.com/RPCS3/llvm.git
synced 2024-12-14 15:39:06 +00:00
[GISel]:Skip legalizing Intermediate inst(with generic types)
During legalization, targets can create Pseudo Instructions with generic types. We shouldn't try to legalize them. Reviewed by Quentin, dsanders https://reviews.llvm.org/D32575 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@302199 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
195a2d9be0
commit
7d7f10bcdd
@ -176,8 +176,13 @@ bool Legalizer::runOnMachineFunction(MachineFunction &MF) {
|
||||
unsigned NumNewInsns = 0;
|
||||
SmallVector<MachineInstr *, 4> WorkList;
|
||||
Helper.MIRBuilder.recordInsertions([&](MachineInstr *MI) {
|
||||
++NumNewInsns;
|
||||
WorkList.push_back(MI);
|
||||
// Only legalize pre-isel generic instructions.
|
||||
// Legalization process could generate Target specific pseudo
|
||||
// instructions with generic types. Don't record them
|
||||
if (isPreISelGenericOpcode(MI->getOpcode())) {
|
||||
++NumNewInsns;
|
||||
WorkList.push_back(MI);
|
||||
}
|
||||
});
|
||||
WorkList.push_back(&*MI);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user