OSDN Git Service

[mips] Extend LONG_BRANCH_LUi/ADDiu with extra parameter
authorAleksandar Beserminji <Aleksandar.Beserminji@mips.com>
Tue, 12 Jun 2018 10:23:49 +0000 (10:23 +0000)
committerAleksandar Beserminji <Aleksandar.Beserminji@mips.com>
Tue, 12 Jun 2018 10:23:49 +0000 (10:23 +0000)
commite0a1795624651d3e73078007fb2822d990799625
tree414e357949a7bc78e72d8d8c1e9ab94c5f2de9bc
parentf808d850c7c974f5f1e84e366ec9ceb91a85efa2
[mips] Extend LONG_BRANCH_LUi/ADDiu with extra parameter

Extend LONG_BRANCH_LUi and LONG_BRANCH_ADDiu pseudo instructions with
additional flag, so instead of always lowering to lui %hi(...),
addiu %lo(...) or addiu %hi(...), now they can lower to either %lo, %hi,
%higher or %highest depending on the added flag.

Differential Revision: https://reviews.llvm.org/D47941

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@334490 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/Mips/MipsBranchExpansion.cpp
lib/Target/Mips/MipsMCInstLower.cpp
lib/Target/Mips/MipsMCInstLower.h
test/CodeGen/Mips/longbranch/branch-limits-fp-micromips.mir
test/CodeGen/Mips/longbranch/branch-limits-fp-micromipsr6.mir
test/CodeGen/Mips/longbranch/branch-limits-fp-mips.mir
test/CodeGen/Mips/longbranch/branch-limits-fp-mipsr6.mir
test/CodeGen/Mips/longbranch/branch-limits-int-microMIPS.mir
test/CodeGen/Mips/longbranch/branch-limits-int-micromipsr6.mir
test/CodeGen/Mips/longbranch/branch-limits-int-mipsr6.mir
test/CodeGen/Mips/longbranch/branch-limits-int.mir