diff options
author | Petar Avramovic <Petar.Avramovic@rt-rk.com> | 2019-02-14 11:39:53 +0000 |
---|---|---|
committer | Petar Avramovic <Petar.Avramovic@rt-rk.com> | 2019-02-14 11:39:53 +0000 |
commit | 5d9b8eed85e5530ce961bbe94709d83d773e46dc (patch) | |
tree | b32d138075a2a10da5ca7633117793547888d00a /llvm/lib/CodeGen | |
parent | 24383cd7bbe2716a1805cdbab908ff592a811cd7 (diff) | |
download | bcm5719-llvm-5d9b8eed85e5530ce961bbe94709d83d773e46dc.tar.gz bcm5719-llvm-5d9b8eed85e5530ce961bbe94709d83d773e46dc.zip |
[MIPS GlobalISel] Select branch instructions
Select G_BR and G_BRCOND for MIPS32.
Unconditional branch G_BR does not have register operand,
for that reason we only add tests.
Since conditional branch G_BRCOND compares register to zero on MIPS32,
explicit extension must be performed on i1 condition in order to set
high bits to appropriate value.
Differential Revision: https://reviews.llvm.org/D58182
llvm-svn: 354022
Diffstat (limited to 'llvm/lib/CodeGen')
-rw-r--r-- | llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp b/llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp index b3170b039e7..298a91671f3 100644 --- a/llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp +++ b/llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp @@ -1176,7 +1176,7 @@ LegalizerHelper::widenScalar(MachineInstr &MI, unsigned TypeIdx, LLT WideTy) { } case TargetOpcode::G_BRCOND: Observer.changingInstr(MI); - widenScalarSrc(MI, WideTy, 0, TargetOpcode::G_ANYEXT); + widenScalarSrc(MI, WideTy, 0, MIRBuilder.getBoolExtOp(false, false)); Observer.changedInstr(MI); return Legalized; |